Zapalot / SynchronousSdLogger

An SD-Card logger with GPS-synchronous sampling.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GPS-Synchronized Datalogging

This is an attempt to create an SD-datalogger with <=1ms global timing accuracy.

Key features:

  • Synchronization is provided by the 1PPS signal of a GPS-Module.
  • Sampling is done in a timer-interrupt. Timer intervals are adjusted to keep sampling at a given rate even if the internal clock drifts.
  • Data including time-stamps are written to an SD-card in a human-friendly format

Requirements

Connections

Connections on the shield must be modified to use..

  • Hardware UART for communication with the GPS-Module
  • Hardware SPI for the SD-Card
  • 1PPS Signal to Digital Pin 2 or any other Input-Interrupt capable pin of your µC.

Known issues:

  • Samples get lost during SD-write operations because of insufficient memory for buffering. (on Leonardo/Uno)
  • The GPS-Library is a bit of a fatso and steals a lot of memory - it should be replaced by something more barebone ASAP.
  • The SD-Library will often break the filesystem on the SD-card if the file is not closed before rebooting/shutting down the Arduino
  • Due to it beeing written in a hurry, in-code documentation has room for improvements

About

An SD-Card logger with GPS-synchronous sampling.

License:GNU General Public License v3.0


Languages

Language:C++ 76.2%Language:Arduino 12.4%Language:C 11.4%