A small pill to drop in any parcel or container or just wear which will monitor and log all physical conditions along the path.
Transportation conditions logging monitor
The goal of this project is to offer an inexpensive method for independent non-invasive control of conditions of passengers or cargo transportation. The list of possible use cases includes:
- Ensuring quality and safety of public transportation conditions (smoothness of movement, cabin environment, noise, light etc.). This includes also monitoring of quality of service and usage statistics of elevators, escalators, automatic doors etc.
- Ensuring cargo end-to-end transportation conditions for fragile goods (package position along the route, maximal accelerations etc.) or packages requiring special environment conditions (temperature, humidity, pressure).
Title picture: airplane mechanical meteorograph
Solution Operation Principles
Minimally solution consists of two blocks: the sensing element (The Tablet) based on RSL10-SENSE-DB-GEVK board and the analysis and logging block (The Registrar) based on Raspberry Pi 4 connected to each other over Bluetooth Low Energy link.
The Tablet main functions:
- provide access to the attached sensors
- provide functionality of BLE peripheral server
- (Optionally) provide sensor fusion and preliminary processing of sensor data for the attached sensors.
The Registrar main functions:
- Provide functionality of BLE client
- Collect all necessary sensor data from the connected Tablet(s)
- Collect all necessary data from the attached sensors
- Perform Tablet sensor data analysis (thresholds, changes).
- Perform Tablet-to-Registrar sensor data comparative analysis. <== THE KEY FEATURE!
- Log all collected data.
- (Optional) report collected data to the cloud platform.
The main advanced feature of the proposed solution consisting of two blocks – one attached to the container and another attached to the parcel – is the identification of movement of the parcel within container by comparing data from Tablet and from Registrar sensors. In the current implementation the magnetometer vector changes are compared.
Solution may be easily integrated to cloud platform for reporting, analysis and end-to-end parcel tracking (see below).
Note: Cloud integration is not implemented within this project.
Support of multiple Tablets on a Single Registrar
This capability may be employed by transportation companies and postal services. Each container and each warehouse can be equipped with the registrar connecting to any parcel entering it. NFC then can be used for detecting of and connection initialization to each parcel.
Note: NFC option is not implemented within this prototype solution
End-to-end parcel tracking
This option technically represents the combination of two previous ones. From service perspective this is a solution prototype for end-to-end delivery condition monitoring which potentially can be employed by global express delivery services.
The solution consists of two main blocks: the Sensing Tablet based on RSL10 Sense DB GEVK board and The Registrar based on Raspberry 4.
The software part consists of the Custom Service Firmware with Deep Sleep (RSL10−SENSE−GEVK) running on RSL10 board and the main Python application running on RPI.
The test application used for polling of RSL10 Sense DB GEVK board sensors is also included.
On Semiconductor RSL10-SENSE-DB-GEVK Development Kit
The provided board is based on the On Semiconductor RSL10 SIP (System In Package).
RSL10 is a Bluetooth 5, multi-protocol radio System on Chip (SoC) bringing ultra-low-power Bluetooth Low Energy to wireless applications.
Offering the industry’s lowest power consumption, RSL10 enables advanced wireless features while optimizing system size and battery life. The highly-integrated radio SoC features a dual-core architecture and a 2.4 GHz transceiver, providing the flexibility to support Bluetooth Low Energy and 2.4 GHz custom protocols.
The RSL10 Software Development Kit (SDK) enables rapid development of ultra-low power Bluetooth Low Energy applications by leveraging convenient abstraction, drivers and sample applications from Blinky to complete BLE peripherals, and everything in between.
- Free Eclipse-based ON Semiconductor IDE plus support for Keil uVision® and IAR Embedded Work Bench®
- Complete Bluetooth Low Energy protocol stack
- Bluetooth Low Energy mesh networking with Android app
- FOTA (Firmware Over The Air) with Android and iOS apps
In addition to RSL10 SiP main board includes reach set of sensors and other peripheral:
The Development Kit was provided by On Semiconductor for this contest is the debug version including a CR2032 coin cell battery, a flexible NFC Antenna, the 10-pin debug header populated and a Segger J-Link LITE CortexM debugger that connects to this header.
Raspberry Pi 4
Note: Raspberry 3 may also work fine as Registrar as far as BLE is supported. But is was not tested within this project.
The SparkFun MPU-9250 IMU Breakout features the latest 9-axis MEMS sensor from InvenSense. Each of these 9DoF breakouts feature an MPU-9250 with a System in Package (SiP) that combines two chips: the MPU-6500, which contains a 3-axis gyroscope as well as a 3-axis accelerometer, and the AK8963, which features a 3-axis magnetometer. This breakout has been designed to be smaller than some of our other offerings to fit in smaller projects. However, if you plan to use a breadboard, or secure the IMU board to a project with something like epoxy, the mounting holes can be easily snapped off.
Note: The main reason for introducing sensors on the Registrar's side is to provide differential sensor data analysis. By comparing data from the Tablet and from the Registrar the relative movement of the parcel within container may be easily detected.
Custom Service Firmware with Deep Sleep (RSL10−SENSE−GEVK) was used. During the initial phase of the projects some minor tweaks were checked including extension of the data protocol to cover for potential additional sensor fusion results, unlocking the air quality sensor, unlocking the calibration data. Generally all these changes were considered not important for the resulting solution and it was decided to use the provided firmware as is to simplify project reproducing.
Raspberry Pi script for RSL10 sensors polling (rsl10_polling_v0.1.py)
This is test application used for investigating of RSL10 SENSE GEVK sensors and the data interface from Raspberry Pi over BLE. Application is using the pygatt library for establishing BLE connection and for requesting data from the Tablet.
Polled sensors can be added or removed by commenting/un-commenting relative lines in the session using the following session of the application: