Inspiration

We think that global supply chain tracking is one of the most interesting applications for NB-IoT technology. Low-cost connectivity and the native functionality offered by the components of the NB-IoT dev kits offer the opportunity to report data on the condition of goods in transit. This information can be used to launch immediate responses when refrigeration systems fail, or other difficulties are encountered in the global supply chain.

What it does

View our presentation

We built a device which collects and reports GPS, temperature, humidity, and tilt information to our database. We also built a dashboard with a mapping interface to display the last reported location of all of our deployed devices, as well as time series data from historical measurements. The goal is to offer intuitive tracking information, and more importantly to automatically notify those who can intervene to resolve situations where environmental conditions put shipments at risk.

How we built it

We used the Twilio NB-IoT dev kit with the Breakout SDK to build our NB-IoT measurement and reporting device. We used React, restify, Mongoose, and Express to build our dashboard and backend systems. Our map is powered by Leaflet.

Challenges we ran into

Combining the environmental data we collect with other information regarding the stage a shipment is at in the supply chain is a challenge, but it is essential to have both of this information to know who to notify when a problem is detected.

Accomplishments that we're proud of

Successfully building a device which communicates with NB-IoT, and linking the information reported by that device into our dashboard.

What we learned

  • NB-Iot is primarily for static locations
  • How to use an interrupt to increment a volatile global variable.
  • How to save to a file to an SD card with arduino. link *AT commands to adjust GPS format are near page 250 on link

What's next for Chain Check

  • Wake up on interrupt (if there is a jostle)
  • Save binary data to an SD card
  • Serve requested records
  • Do not transmit if altitude is too high (airplane mode)
  • Slow down reporting if no events to save battery

Inspiration

We think that global supply chain tracking is one of the most interesting applications for NB-IoT technology. Low-cost connectivity and the native functionality offered by the components of the NB-IoT dev kits offer the opportunity to report data on the condition of goods in transit. This information can be used to launch immediate responses when refrigeration systems fail, or other difficulties are encountered in the global supply chain.

What it does

View our presentation

We built a device which collects and reports GPS, temperature, humidity, and tilt information to our database. We also built a dashboard with a mapping interface to display the last reported location of all of our deployed devices, as well as time series data from historical measurements. The goal is to offer intuitive tracking information, and more importantly to automatically notify those who can intervene to resolve situations where environmental conditions put shipments at risk.

How we built it

We used the Twilio NB-IoT dev kit with the Breakout SDK to build our NB-IoT measurement and reporting device. We used React, restify, Mongoose, and Express to build our dashboard and backend systems. Our map is powered by Leaflet.

Challenges we ran into

Combining the environmental data we collect with other information regarding the stage a shipment is at in the supply chain is a challenge, but it is essential to have both of this information to know who to notify when a problem is detected.

Accomplishments that we're proud of

Successfully building a device which communicates with NB-IoT, and linking the information reported by that device into our dashboard.

What we learned

  • NB-Iot is primarily for static locations
  • How to use an interrupt to increment a volatile global variable.
  • How to save to a file to an SD card with arduino. link *AT commands to adjust GPS format are near page 250 on link

What's next for Chain Check

  • Wake up on interrupt (if there is a jostle)
  • Save binary data to an SD card
  • Serve requested records
  • Do not transmit if altitude is too high (airplane mode)
  • Slow down reporting if no events to save battery

Built With

Share this project:

Updates