We carry several data logging products which have microSD sockets on them: OpenLog Artemis and the Qwiic OpenLog to name but two. They're great for logging data to a microSD card, but when it comes to reading the logged data quickly you usually have to pop out the microSD card and plug it into your computer. But what if you're developing an embedded system and you don't want to or aren't able to eject the microSD card. Enter the SparkFun Thing Plus Dual-Port Logging Shield!
The SparkFun Dual-Port Logging Shield is a Thing Plus/Feather-compatible board which allows you to access your microSD card over both SPI and USB-C. It is designed to be mounted on or under one of our Thing Plus boards. You can log data to and read data from your microSD card over SPI as usual, using your favorite Arduino SD library. But you can also connect it to your computer via USB-C and read and write files at up to 35 MBytes/second! The write speed is card-dependent but, in our tests, we've routinely seen write speeds around 20MB/s.
The SparkFun Dual-Port Logging Shield has an ATtiny841 microcontroller on it to act as an arbiter: If you power up your Thing Plus, the ATtiny841 will automatically put the Dual-Port Logging Shield into SPI mode, so your Arduino code can access the microSD card as normal If you power the Shield from your computer by connecting it via USB-C, the ATtiny841 will put the Shield into SDIO "thumb drive" mode. Your computer can then read and write data really quickly! Finally, if you have both your Thing Plus powered up - and have your computer connected - then you can switch between the two modes by giving the ATtiny841 some very simple commands over I2C!
You can configure the ATtiny to automatically default to SPI mode or SDIO "thumb drive" mode if both power sources are powered up simultaneously. It's your choice!
- Thing Plus / Feather-compatible footprint and breakout pins
- ATtiny841 microcontroller: The ATtiny841 acts as an arbiter and can put the shield into either SPI or SDIO ("thumb drive") mode
- USB2241 Ultra Fast USB 2.0 Media Controller
- Supports cards up to 32GB
- Supports FAT32, exFAT and NTFS
- Read and write speed: up to 35 MBytes/second (card-dependent)
- The board includes solder pads for an optional 24C04 I2C EEPROM
- Push-push microSD socket
- Simple I2C command set to switch modes and set the default mode
- Can be powered by:
- Thing Plus / Feather 3.3V
- USB-C 5V
- Or both!
- Full power control: Sleep current (PWR LED disabled): 300 µA
- Power source voltage sensing
- Activity LED (for SDIO "thumb drive" mode)
- Power LED (configurable)
Note: The USB2241, which provides the USB interface, supports FAT32, exFAT and NTFS on cards up to and including 32GB. Cards larger than 32GB are not supported.