Skip to content

polesskiy-dev/iot-risk-data-logger-nfc-samd21

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IoT Risk Data Logger

Introduction

Fully open-source and open-hardware data logger tailored for logistics applications i.e. for cold chain monitoring systems.

Hardware

Schematics, PCB, enclosure, BOM, assembly documentation

Features

Key risk metrics:

Communication:

  • USB-C:
    • MSD: Device works ad a flash drive to direct log read on PC
    • CDC: Console for debug and firmware bootloader
  • NFC for control through mobile app ST ST25DV04K

Security:

  • Hardware crypto Microchip ATECC608A for:
    • Firmware encryption for bootloader
    • Log data encryption
    • Authentication (X509 certificates for IoT platforms)

Power:

  • Powered by 2xAAA batteries or USB-C (reverse polarity protection, OR source selection)
  • Low Power Consumption: Ultra-low power architecture, ~ one year of data acquisition

Additional Features:

  • 4MB SPI NOR Flash AT25DF321
  • RTC Clock: accurate 32.768Hz quartz oscillator
  • LED: Simple indication for device states

Main MCU

  • Microchip ATSAMD21E18 - 32-bit ARM Cortex-M0+ MCU, 48MHz, 256KB of flash and 32KB of SRAM. Satisfies AEC-Q100, recommended for Automotive.

Firmware

The firmware is written in C with a bare-metal approach and exclusively uses static memory allocation. It is developed on top of the Harmony v3 Embedded Software framework. Developed with MPLAB X, XC32 compiler.

Main architecture

The source code adheres to an asynchronous, non-blocking programming style designed to achieve ultra-low power consumption.

The core mechanism revolves around handling asynchronous events from a queue and entering a low-power sleep state when the queue is empty. New events are enqueued either through interrupts (e.g., cron-scheduled sensor reads) or through the main system loop.

The architecture incorporates the following key concepts:

To streamline development, an Active Object + FSM library has been implemented and is maintained in a separate active-object-fsm repository.

Installation

$ git clone https://github.com/polesskiy-dev/iot-risk-data-logger-nfc-samd21 --recurse-submodules

Update submodules to the latest version (optional):

$ git submodule init && git submodule update --remote # install submodules

Some dev process photos:

DB327772-9ED3-43A9-9017-51C4E369E922_1_105_c.jpeg A57A5346-DAB0-40F0-AA93-4D77E1BF0848_1_105_c.jpeg

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published