Skip to content

STM32F767ZI: Environmental Station Demo #18

@alieissa-commits

Description

@alieissa-commits

Description

Develop a telemetry acquisition and remote monitoring pipeline. This involves configuring an I2C sensor interface, reading data on a periodic scheduler, and publishing JSON telemetry to an online MQTT broker over Ethernet.

  • Configure I2C Peripheral: Initialize the I2C1 controller in board_init.c mapping to the board's Arduino Uno V3 shield headers (pins CN9/CN10).
  • Write Sensor Driver: Write code to poll a physical I2C sensor. Implement a robust Software Simulator Fallback that generates realistic telemetry if no physical sensor is attached.
  • Implement sensor_thread: Poll the sensor every 5 seconds, package the data and send the data structure over a ThreadX Message Queue.
  • Integrate NetX Duo DNS & MQTT: Add the NetX Duo DNS and MQTT client source files to the CMake build.
  • Implement network_thread:
    • Use the DNS client to resolve a public MQTT broker.
    • Establish a secure/unsecure TCP connection to the broker.
    • Consume telemetry records from the Message Queue, serialize them into JSON strings, and publish them to a topic.

Metadata

Metadata

Labels

GSoCGoogle Summer of Code participant tasks

Type

No type
No fields configured for issues without a type.

Projects

Status
Ready

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions