Nano 33 Iot With Mqtt & Edge Impulse Studio

Photo of radhyahmad

Made by radhyahmad

About the project

Arduino Nano 33 IoT with MQTT protocol for sending accelerometer and gyroscope data to the cloud.

Project info

Difficulty: Moderate

Platforms: Edge ImpulseMQTTPlatformIO

Estimated time: 1 hour

License: Apache License 2.0 (Apache-2.0)

Items used in this project

Hardware components

Arduino Nano 33 IoT Arduino Nano 33 IoT x 1

Software apps and online services

Edge Impulse Studio Edge Impulse Studio
MQTT MQTT
Thingsboard Thingsboard
Qubitro IoT Platfrom Qubitro IoT Platfrom
PlatformIO IDE PlatformIO IDE

Story

The Arduino Nano 33 IoT is the easiest and cheapest point of entry to enhance existing devices (and creating new ones) to be part of the IoT and designing pico-network applications. Whether you are looking at building a sensor network connected to your office or home router, or if you want to create a BLE device sending data to a cellphone, the Nano 33 IoT is your one-stop solution for many of the basic IoT application scenarios. The board's main processor is a low-power Arm® Cortex®-M0 32-bit SAMD21. The WiFi and Bluetooth® connectivity is performed with a module from u-blox, the NINA-W10, a low-power chipset operating in the 2.4GHz range. On top of that, secure communication is ensured through the Microchip® ECC608 crypto chip. Besides that, you can find a 6 axis IMU, which makes this board perfect for simple vibration alarm systems, pedometers, the relative positioning of robots, etc (https://store.arduino.cc/usa/nano-33-iot).

Arduino Nano 33 IoT is advanced Arduino dev kit designed for IoT implementation. It has a network module such as WiFi and BLE, allowing us to send the data to Arduino cloud over MQTT and HTTP by using internet connectivity. This project is to aim to how we could integrate LSM6DS3 (accelerometer and gyroscope) module sensor embedded on Arduino nano 33 IoT, so this dev kit is very easy to do an experiment. We will implement it to connect with the cloud. so then data sent to cloud, accelerometer, and gyroscope data will be visualized on the thingsboard dashboard https://thingsboard.io

1 / 2

We will do deployment this project which nano 33 IoT is used to collect accelerometer data (x, y, z) by LSM6DS3 IMU sensor module embedded on dev kit. MQTT is the standard messaging protocol for Internet of Things (IoT). It is designed as an extremely lightweight publish/subscribe messaging transport that is ideal for connecting remote devices with a small code footprint and minimal network bandwidth. MQTT today is used in a wide variety of industries, such as automotive, manufacturing, telecommunications, oil and gas, etc. https://mqtt.org/

Connecting to MQTT https://mosquitto.org/ broker (mosquitto) deploying on raspberry pi 4, nano 33 IoT is a node sensor. We use https://github.com/knolleary/pubsubclient library for MQTT client.

Also, it is used to collect the accelerometer data using arduino nano 33 IoT. Using MQTT by Qubitro library is very possible to send all data to the qubitro’s IoT cloud https://www.qubitro.com/.

Qubitro Dashboard

Qubitro Dashboard

Qubitro Dashboard


We can train all of the data collected using edge impulse studio which Edge Impulse is the leading development platform for machine learning on edge devices, free for developers and trusted by enterprises. https://www.edgeimpulse.com/.


The data forwarder is used to easily relay data from any device to Edge Impulse over serial. Devices write sensor values over a serial connection, and the data forwarder collects the data, signs the data and sends the data to the ingestion service. The data forwarder is useful to quickly enable data collection from a wide variety of development boards without having to port the full remote management protocol and serial protocol, but only supports collecting data at relatively low frequencies.

To use the data forwarder, load an application (examples for Arduino,Mbed OS and Zephyr below) on your development board, and run:

$ edge-impulse-data-forwarder

https://docs.edgeimpulse.com/docs/cli-data-forwarder





Code

Nano 33 Edge Impulse

For running edge impulse

Nano 33 IoT and Qubitro IoT

Nano 33 MQTT

Connecting to the thingsboard cloud

Credits

Photo of radhyahmad

radhyahmad

IoT Engineer and Master Student in ITB Indonesia

   

Leave your feedback...