Skip to main content

No project description provided

Project description

Serial Jobs

A tool for bidirectional communication between serial devices and MQTT brokers.

Configured serial devices are periodically polled for data which are then sent to the configured MQTT brokers.

Subscribtions to the configured MQTT topics are created and the configured handlers are run when an MQTT message is received.

Features

  • reading data via Modbus protocol
  • possibility to add support for custom protocols
  • sending custom initialization messages to MQTT broker
  • configuration in YAML or JSON format

Custom initialization MQTT messages can be used to automatically configure the consumers of the MQTT messages with the actual values, like Home Assistant, to handle them appropriately.

Terminology

This section explains the terminology used within the configuration file.

Common

  1. An mqtt_broker specifies how to communicate with an MQTT broker.
  2. A device specifies how to communicate with a serial device.
  3. A data specifies how to map raw bytes from device to a simple data part usable for obtaining a value.
  4. A value specifies how to map simple data parts provided by device to a value usable in practice.

Reading from devices

  1. A task specifies how to retrieve a particular value from a particular device and how to send it within an MQTT message.
  2. A job specifies how often to run particular tasks.

Writing to devices

  1. A handler specifies how to extract value from the incoming MQTT message and write it to a particular device.
  2. A service specifies which handlers to run upon receiving messages from a particular mqtt_broker.

Configuration

Configuration files for some real devices and real use cases are available in the config_stubs directory.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

serial-jobs-0.0.2.tar.gz (19.8 kB view hashes)

Uploaded Source

Built Distribution

serial_jobs-0.0.2-py3-none-any.whl (26.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page