I currently have an Arduino Ethernet Shield which is Mega Compatible. I've found on the Arduino Ethernet Library https://www.arduino.cc/en/Reference/Ethernet that the Shield uses different Pins on the Arduino Uno and Arduino Mega. How is this possible? The Ethernet shield isn't connected to those pins mentioned.

Arduino Uno: Pin: 13 - SCK Pin: 12 - MISO Pin: 11 - MOSI Pin: 10 - SS for Ethernet Controller

Pin: 4 - SS for SD Card

Arduino Mega: Pin: 52 - SCK Pin: 50 - MISO Pin: 51 - MOSI Pin: 53 - SS for Ethernet Controller

Pin: 4 - SS for SD Card

Arduino Mega Pins


Those 4 pins D50 to D53 are the ICSP pins which appear twice on the MEGA; the Ethernet Shield uses the second set of connections located in the middle of the Mega board.

The header files gets told (by the Arduino IDE) that the board is a MEGA so the compiler uses those pin numbers to connect.

| improve this answer | |
  • The SS pin is not on the ICSP header. It needs to come from one of the headers on the side still. – CrossRoads Dec 12 '18 at 15:44

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.