Go Down

Topic: Use ENC28J60 with tcp socket (Read 262 times) previous topic - next topic

german77

Hi, I recently created a library that uses ethernet.h and Wiznet to connect via sockets to a nodejs server. That works without a problem.

I decided to use the ENC28J60 module to cut down costs. From what I find there are two libraries Ethercard.h and UIPEthernet.h  that work.

I managed to get it working with UIPEthernet but uses the 80% of the program memory and SRAM the library alone. That leaves me with nothing to work with. My full program only takes 26% of program memory and 19% of SRAM. That makes 106% of memory usage witch it's not possible.

I don't even know where to start with Ethercard.  But uses 28% of program memory and I can select how much I want  for SRAM.

Do any know how to reduce UIPEthernet size or a library that has DHCP and handles tcp connections?

Using other arduino will not reduce the cost. I would simply go back to Wiznet if not possible. But it will be nice to use the ENC28J60

pylon

Quote
I decided to use the ENC28J60 module to cut down costs.
Using the cheaper hardware comes at a cost. As the hardware is much simpler and the TCP stack has to be provided by software where in the WizNet chip it's in hardware a resulting sketch uses much more RAM and more flash memory.

Quote
Using other arduino will not reduce the cost. I would simply go back to Wiznet if not possible. But it will be nice to use the ENC28J60
Chinese modules with the WizNet chips are only slightly more expensive than comparable modules with the ENC28J60. If you don't need the low level features available with the software TCP stack on the ENC28J60 use a WizNet chip, especially if you have moderate to high memory needs for you sketch.

Go Up