EtherCardOctopus: cconnect two or more Enc28J60 ethernet device

few weeks ago, I starded connecting 2 ethernet adapters; reading EtherCard library, fearfull about moving static elements to classes and objects, I prefeered to “copy” the original in a new one totaly independant.
I hope the work is finished.
Attached zip file contains two libraries: EtherCardOctopus_xxx and EtherCardOctopus_yyy.
It is easy to build a new one:

  • dupplicate EtherCardOctopus_xxx folder, may be as EtherCardOctopus_third
  • rename file EtherCardOctopus_xxx.h as EtherCardOctopus_third.h
  • in file “forgeEtherCard.h” modify the definition of XYZ as _third
    it is done!

Of course, available RAM will limit the number of devices connected.
As a bypass, you mays direct some library to use a “global buffer” allocted in your main. Give his name in the definition of the macro “USINGGLOBALBUFFER” (in file “forgeEthercard.h”)

In these conditions, each Enc28J60 will use 100 bytes of ram & 2000 of ROM.

I wrote some lines (in French): AntiGuide:ArduinoEtherCardOctopus

At this time, my project is to build a “tunnel” from home to personnal remote brewery, allowing to traffic usb over ethernet (themometers and some relays).
It may also be used to build a “true” ethernet hub (repeating packets on all lines) with -may be- a copy on a monitor port.

PO. (149 KB)