Nano 33 Iot With Mqtt & Edge Impulse Studio
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 Impulse, MQTT, PlatformIO
Estimated time: 1 hour
License: Apache License 2.0 (Apache-2.0)
Items used in this project
Software apps and online services
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).
- https://docs.zephyrproject.org/2.5.0/boards/arm/arduino_nano_33_iot/doc/index.html
- https://github.com/ostaquet/Arduino-Nano-33-IoT-Ultimate-Guide
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
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
Leave your feedback...