As of revision B of the Datalogger shield, we've moved away from using digital pins 10, 11, 12, 13 for SPI and A4, A5 for I2C. We now use the 2x3 ICSP header, which means that you don't need special customized I2C or SPI libraries to use with Mega or Leonardo or Zero (or any other future type) of Arduino!
This is the older Datalogger shield. In particular, note that the prototyping area is completely full of 0.1" spaced holes
This is the "R3 compatible" Datalogger. Note that it has a smaller prototyping area and that there is a 2x3 SPI header spot on the right
Older Shield Pinouts
On the older shields, the pinout was fixed to be:
- Digital #13 - SPI clock
- Digital #12 - SPI MISO
- Digital #11 - SPI MOSI
- Digital #10 - SD Card chip select (can cut a trace to re-assign)
- SDA connected to A4
- SCL connected to A5
The RTC (DS1307) I2C logic level was fixed to 5V
Rev B Shield Pinouts
- ICSP SCK - SPI clock
- ICSP MISO - SPI MISO
- ICSP MOSI - SPI MOSI
- Digital #10 - SD Card chip select (can cut a trace to re-assign)
- SDA not connected to A4
- SCL not connected to A5
The RTC (PCF8523) logic level can be 3V or 5V
On an UNO, note that Digital #13 is the same as ICSP SCK, #12 is ICSP MISO, #11 is ICSP MOSI, SDA is tied to A4 and SCL is A5. However, that is only true on the UNO! Other Arduino's have different connections. Since the shield no longer makes the assumption it's on an UNO, it is the most cross-compatible shield.
On the bottom of the Rev B shield, you can see that if you have an older Arduino where there is no ICSP 2x3 header, and no SDA/SCL pins, you can short the solder jumpers closed.
If you are using the shield with a 3.3V logic Arduino, you may want to change the Vio jumper. This is what the 10K pullups for I2C are pulled up to. Honestly, the pullups are very weak so if you forget, it's not a big deal. But if you can, cut the small trace between the center pad and 5V and solder the other side so that Vio is connected to 3V
Rev C Shield Pinouts
These are the same as the Rev B with the exception of the Vio jumper.
- Vio connected to IOREF
- Vio jumper unconnected
The IOREF pin should come from the Arduino main board being used.
If the Arduino main board does not have an IOREF pin, or if the pin is not connected to the shield, then the Vio jumper must be set. Do so by adding a solder blob between the center pad and either the 3V or 5V pad to match the voltage level of the Arduino board.
Page last edited March 08, 2024
Text editor powered by tinymce.