![]() |
MPLAB X IDEMicrochip Technology
|
|
![]() |
Autodesk Fusion 360Autodesk
|
|
![]() |
KiCADKicad
|
IoT Risk Data Logger
Fully open-source and open-hardware data logger tailored for logistics applications i.e. for cold chain monitoring systems.
Please check Medium post with the extended description of the project.
Schematics, PCB, enclosure, BOM, assembly documentation
Key risk metrics:
- Temperature/Humidity Sensirion SHT3x
- Ambient Light Sensor TI OPT3001
- Shock Sensor - Accelerometer NXP MMA8452Q
Communication:
- USB-C:
- MSD: Device works as 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 IDE, 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:
- Event Loop
- Actor Model - aka Active Object
- Finite-state machine - Mealy + Moore implementation
To streamline development, an Active Object + FSM library has been implemented and is maintained in a separate active-object-fsm repository.


IoT Risk Data Logger
*PCBWay community is a sharing platform. We are not responsible for any design issues and parameter issues (board thickness, surface finish, etc.) you choose.

Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW
ESP32-S3 4.3inch Capacitive Touch Display Development Board, 800×480, 5-point Touch, 32-bit LX7 Dual-core Processor
BUY NOW
Raspberry Pi 5 7 Inch Touch Screen IPS 1024x600 HD LCD HDMI-compatible Display for RPI 4B 3B+ OPI 5 AIDA64 PC Secondary Screen(Without Speaker)
BUY NOW- Comments(7)
- Likes(18)
-
Engineer Feb 21,2025
-
Simeon Ivanov Dec 22,2024
-
yogesh Nov 13,2024
-
Engineer Sep 29,2024
-
Engineer Sep 08,2024
-
Steven JK Jul 24,2024
-
Engineer May 17,2024
-
Massimiliano Spoto May 14,2024
-
64Bit_VeX Mar 11,2024
-
Engineer Mar 07,2024
-
thanhviet Jan 21,2024
-
RF HWman Dec 14,2023
-
Haim Lieberman Oct 14,2023
-
Engineer Sep 17,2023
-
Serhii Trush Sep 17,2023
-
Vitaly Domnikov Sep 17,2023
-
Engineer Sep 16,2023
-
MarynaLisa Sep 16,2023
- 5 USER VOTES
- YOUR VOTE 0.00 0.00
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10

-
9design
-
7usability
-
8creativity
-
7content

-
9design
-
8usability
-
7creativity
-
8content

-
10design
-
10usability
-
10creativity
-
10content

-
10design
-
10usability
-
10creativity
-
10content

-
10design
-
10usability
-
10creativity
-
10content
More by Haim Lieberman
-
Commodore 64 1541-II 1581 Floppy Disk Drive C64 Power Supply Unit USB-C 5V 12V DIN connector 5.25
161 1 3 -
Easy to print simple stacking organizer with drawers
87 0 0 -
-
-
-
Modifying a Hotplate to a Reflow Solder Station
1134 1 6 -
MPL3115A2 Barometric Pressure, Altitude, and Temperature Sensor
636 0 1 -
-
Nintendo 64DD Replacement Shell
494 0 2 -
V2 Commodore AMIGA USB-C Power Sink Delivery High Efficiency Supply Triple Output 5V ±12V OLED display ATARI compatible shark 100W
1438 4 3
Thanks!
Thanks!
Thanks!