Qwiic OpenLog

The Qwiic system makes it easy to read all sorts of sensors, but what if you want to log that data? Qwiic OpenLog is an easy to use I2C based data logger.

Not currently available

Our Code: SKU-004597

Supplier Link: [SparkFun MPN:14641]


Description

The Qwiic system makes it easy to read all sorts of sensors, but what if you want to log that data? Qwiic OpenLog is an easy to use I2C based data logger. Insert a microSD card (512MB all the way up to 32GB), write some simple code:

myLog.print("The battery voltage is:");
myLog.print(batteryVoltage);

And your data will be recorded to LOG00001.TXT on the microSD card for later review. The Qwiic OpenLog can store or “log” huge amounts of serial data and act as a black box of sorts to store all the data that your project generates, for scientific or debugging purposes.

The SparkFun Qwiic OpenLog is the smarter and better looking cousin to the extremely popular OpenLog. We’ve ported the original serial based interface to I2C. Now you can daisy chain lots of I2C devices and log them all without taking up your serial port.

Be sure to grab the Qwiic OpenLog library to make control of the device extremely easy. We’ve written a large number of example sketches to show how to record logs, create new logs, create and navigate directories, remove files and directories, and read the contents of files.

Qwiic OpenLog supports clock stretching which means it performs even better than the original! Qwiic OpenLog will record data up to 20,000 bytes per second at 400kHz. As the receive buffer fills up Qwiic OpenLog will hold the clock line letting the master know that it is busy. Once Qwiic OpenLog is finished with a task it releases the clock allowing the data to continue flowing without corruption.

Need to get freaky and have multiple data loggers on the same bus? You’re in luck. Qwiic OpenLog has both a solder jumper to allow for two devices on the same bus as well as a command to allow for the setting of any I2C address. Don’t get too freaky though; the limit is 111 devices (valid I2C address are 0x08 to 0x77). Any microSD card will work so with 64GB cards you’ll be limited to approximately 3.5 terabytes of storage :(

We will be adding more features to the firmware over time and we’ve made it very easy to upgrade! If you’re comfortable sending a sketch to an Uno then you can upgrade the firmware on Qwiic OpenLog. Each OpenLog ships with the Uno serial bootloader. All you need is a Serial Basic and a 6-pin right angle header to load new code.


Specifications

  • Qwiic compatible. Simply plug and go. No soldering, voltage regulation or translation required.
  • Continuous data logging at 20,000 bytes per second without corruption
  • Compatible with high speed 400kHz I2C
  • Compatible with 512MB to 64GB microSD cards (FAT16 or FAT32)
  • Preloaded Uno bootloader so upgrading the firmware is as easy as loading a new sketch
  • Easy to use system customisation:
    • Configurable device I2C address (default is 42)
    • Configurable escape character to enter command mode (default is 26)
    • Configurable number of escape characters (default is 3)
    • Configurable type of logging (default is to create a new log at power on)
    • All configuration is done via software commands or via the editing of config.txt on the microSD card

Resources

Examples:

  • Example 1 - Writing to a log
  • Example 2 - Creating and appending a file
  • Example 3 - Creating a new empty file
  • Example 4 - Reading the size of a file
  • Example 5 - Read the contents of a file
  • Example 6 - Make a directory
  • Example 7 - Read contents of a directory
  • Example 8 - Remove a file and directory
  • Example 9 - Read firmware version
  • Example 10 - Check status
  • Example 11 - Change I2C address of OpenLog
  • Example 12 - Fast recording and benchmarking

These examples are included when you install the Qwiic OpenLog library.