(to rephrase Mark Twain …)
There is confusion in the ATmega / Arduino / JeeNode world, as brought to my attention again in the forum.
It all depends on your perspective, really:
- if you want to connect to pins on the ATmega chip, then you’re after “pin 6”, “pin 17”, and “pin 26”
- if you want to understand the ATmega data sheet, then you’re after names like “PD4”, “MOSI”, and “PC3”
- if you want to follow Arduino sketches, then you want “digital 4”, “digital
1211″, and “analog 3”
- if you want to plug into JeeNode ports, then you’d prefer “DIO1”, “MOSI on SPI/ISP”, and “AIO4”
They are all the same thing.
Well, sort of. If you’re looking at an SMD chip, the pin numbers change, and if you’re using an Arduino Mega board, some names differ as well. They might also be different if you were to look at older versions of the JeeNode. In short: it’s messy because people come from different perspectives, and it’s unavoidable. There is no relation between “pin 4”, “PD4”, “digital 4”, and “DIO4” – other than that they all mention the digit 4 …
For that same reason, diagrams are not always obvious. For example, this one is nicely informative:
But it doesn’t help one bit when hooking up a JeeNode.
Likewise, this one doesn’t really help if you’re after the pins on the ATmega328 chip or Arduino pin #’s:
Then there’s this overview, but it’s incomplete – only the DIO and AIO pins are mapped to the rest, in a table:
This one from TankSlappa uses the DIP chip as starting point (and creates new abbreviations for DIO1, etc, alas):
Each of these diagrams conveys useful information. But none of them seem to be sufficient on their own.
Can we do better? I’ll be happy to take suggestions and make a new – c o n v e n i e n t – one-pager.