thingsboard - wolfen351/public-micropython-iot-platform GitHub Wiki

Overview

The ThingsBoard module provides integration with the ThingsBoard IoT platform. It allows for telemetry data to be published and commands to be processed via MQTT.

Features

  • MQTT-based communication with ThingsBoard.
  • Configurable settings for server, port, access token, and publish topic.
  • Telemetry data publishing.
  • Command processing (future implementation).

UI Hardware / Pinout Configuration

No specific hardware configuration is required for this module. It relies on network connectivity for communication with the ThingsBoard server.

Telemetry Provided

  • Custom telemetry data as defined by the application.
  • Example telemetry attributes include:
    • time: Current timestamp.
    • voltage: Voltage readings.
    • freeram: Available free RAM.
    • rssi: Wi-Fi signal strength.
    • wifiUptime: Duration of Wi-Fi connectivity.

Telemetry Consumed

  • None at the moment.

Commands Provided

  • None presently implemented.

Commands Consumed

  • None presently implemented.

Additional Information

  • Web Interface: A web-based configuration page is available at /tb. This allows users to configure MQTT settings such as server, port, access token, and publish topic.
  • Settings Management: The module saves settings to a file (tb.settings) and loads them on startup. Invalid settings are automatically reset to defaults.
  • Telemetry Posting: Telemetry data is sent to the ThingsBoard server only when changes are detected, reducing unnecessary network traffic.
  • Dependencies: This module depends on the MQTTClient class for MQTT communication and requires network connectivity to function.
  • Future Enhancements: Command processing is planned for future implementation, enabling bidirectional communication with the ThingsBoard platform.