rwaldron / johnny-five

JavaScript Robotics and IoT programming framework, developed at Bocoup.
http://johnny-five.io
Other
13.31k stars 1.76k forks source link

Ethernet shield W5100 with only ICSP and 10 pins #1845

Open nxvxr14 opened 1 month ago

nxvxr14 commented 1 month ago

Hi, I was searching the repository and didn't find anything similar to this question, so I'm going to ask it.

First, I’m using an Arduino Uno R3 with an Ethernet shield W5100 connected to Johnny-Five via Ethernet using StandardFirmataEthernet.

I need to free pin 4 (used for the SD card, which I won’t use) and the SPI pins (11, 12, 13). I will only use the ICSP pins and pin 10 (SS) for the Ethernet connection. So, I physically connected these last ones from the shield to the Arduino, and in the EthernetConfig.h file (in StandardFirmataEthernet.ino), I modified the line that says:

"// ignore SPI pins, pin 10 (Ethernet SS) and pin 4 (SS for SD-Card on Ethernet shield)

define IS_IGNORE_PIN(p) ((IS_PIN_SPI(p) || (p) == 4) || (p) == 10)"

to

"// ignore SPI pins, pin 10 (Ethernet SS) and pin 4 (SS for SD-Card on Ethernet shield)

define IS_IGNORE_PIN(p) ((p) == 10)".

I uploaded the sketch and connected to Johnny-Five. Pin 4 now works, but I can’t control pins 11, 12, and 13. Is there any way to free these pins? I only need Ethernet, I don’t require the SD option.

Thank you very much.

nxvxr14 commented 1 month ago

I was researching the schematic of the Arduino Uno R3, and it seems that pins 13, 12, and 11 are shared with 3 pins of the ICSP. Therefore, I believe that what I mentioned above cannot be done. If someone could confirm this information, I would appreciate it.

Thank you.

image