Filters out digital status bit messages

master
marcel 5 months ago
parent 447603cf62
commit 99bad68439
  1. 16
      CHANGELOG.md
  2. 9
      aprs_telemetry_to_mqtt.py
  3. 6
      aprs_telemetry_to_mqtt.yml

@ -10,8 +10,18 @@ All notable changes to this project will be documented in this file.
Security : in case of vulnerabilities.
## [1.0.0] - 2023-12-08
First working version.
- First working version.
## [1.1.0] - 2023-12-18
Added: AX.25 support. Telemetry is now received directly from the AX.25 stack.
Removed: Telemetry from CSV file is removed in favour of the AX.25 stack
### Added:
- AX.25 support. Telemetry is now received directly from the AX.25 stack.
### Removed:
- Telemetry from CSV file is removed in favour of the AX.25 stack
## [1.1.1] - 2023-12-20
### Fixed:
- Filters out digital status bit messages (send by node when given comand 06). This command is never issued by this program. But other programs might do. Tese messages were interpreted as telemetry data. But not any more.

@ -295,6 +295,15 @@ def process_message(source, ax_port, payload, mqtt_client):
for field in values:
if not is_float(field):
return 0
# One anoying thing of the PE1RXF telemetry standard is that there is also a message containing the status of the output bits.
# These messages are interpreted as valid telemetry data by this program. The message is send after a '06' command. This program
# does not request this message, but another program might. So we have to filter these messages output
if len(values[0]) == 5:
allowed = '0' + '1'
# Removes from the original string all the characters that are allowed, leaving us with a set containing either a) nothing, or b) the #offending characters from the string:'
if not set(values[0]) - set(allowed):
print ("Probably digital status bits. Ignore.")
return 0
# Check if number of teleemtry values and number of descriptions in yml file are the same. If not make then the same by appending to the shorted list.
nr_of_values = len(values)

@ -25,3 +25,9 @@ topics:
- voltage
- power
- temperature
- name: wx_workshop
call: PE1RXF-6
ax_port: all
description:
- temperature
- humidity

Loading…
Cancel
Save