This is an end-to-end Internet of Things (IoT) sample project which collects data from a temperature and humidity sensor, and publishes it to AWS IoT Core MQTT broker using cellular connectivity (LTE).
The project is based on Zephyr Project and hardware from MIKROE.
The application source code is largely based on the following Zephyr Project samples:
The project is not intended to be a complete reference design for a commercial product, but rather a source of inspiration.
Hardware used in this project:
- J-Link PLUS Compact
- MIKROE - CLICKER FOR STM32
- MIKROE - LTE IOT 7 CLICK
- MIKROE - TEMP&HUM CLICK
- YB0014AA 4G/GNSS L1 3-in-1 screw mount combo external antenna
You also need:
- Micro-B USB cable
- SIM card with a data plan
- J-Link PLUS Compact adapter for the CLICKER FOR STM32 JTAG connector
Before getting started, make sure you have a proper Zephyr development environment:
You also need:
-
An AWS account with access to AWS IoT Core
- default thing name is
myThingName(adjust withAWS_THING_NAMEKconfig option) - default MQTT topic is
myThingName/data(adjust withAWS_PUBLISH_TOPICKconfig option)
- default thing name is
-
AWS credentials and necessary information
Register a thing in AWS IoT Core and download the certificate and private key. Copy these files to the app/src/creds directory. Run the app/src/creds/convert_keys.py script, which will generate files
ca.c,cert.candkey.c.
Create workspace and change in to it:
mkdir -p ~/src/seven-clicker-sample-workspace && cd ~/src/seven-clicker-sample-workspaceCreate Python virtual environment:
python -m venv .venvActive Python virtual environment:
. .venv/bin/activateInstall west:
pip install westInitialize workspace:
west init -m https://github.com/id8-engineering/seven-clicker-sample --mr main .Change directory:
cd seven-clicker-sampleFetch and checkout sources:
west updateInstall Python dependencies:
west packages pip --installwest build -p always -b mikroe_clicker_2 app \
-DCONFIG_MODEM_CELLULAR_APN=\"your_apn\" \
-DCONFIG_AWS_ENDPOINT=\"your-iot-endpoint-ats.iot.your-region.amazonaws.com\"west flash -r jlinkIf you run into problems, you can ask for help in our issue tracker on GitHub.
This project was originally developed as an internship assignment by @Dexter9532, with mentorship from @mirzak and @id8-engineering. It represents an early milestone in the development of Seven, a rapid‑prototyping platform for cellular , resource constrained IoT devices.
