From 0aa586fe4e39e165dc4b9f6274ac77e0e2cd03aa Mon Sep 17 00:00:00 2001 From: Florent de Lamotte Date: Wed, 14 May 2025 14:48:11 +0200 Subject: [PATCH] parse telemetry data with pycayennelpp --- pyproject.toml | 2 +- src/meshcore/reader.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index a905e01..71f98a1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,7 +18,7 @@ classifiers = [ ] license = "MIT" license-files = ["LICEN[CS]E*"] -dependencies = [ "bleak", "pyserial-asyncio" ] +dependencies = [ "bleak", "pyserial-asyncio", "pycayennelpp" ] [project.optional-dependencies] dev = ["pytest", "pytest-asyncio"] diff --git a/src/meshcore/reader.py b/src/meshcore/reader.py index a6650bc..464b713 100644 --- a/src/meshcore/reader.py +++ b/src/meshcore/reader.py @@ -1,6 +1,7 @@ import sys import logging import asyncio +from cayennelpp import LppFrame from typing import Any, Optional, Dict from .events import Event, EventType, EventDispatcher from .packets import PacketType @@ -378,7 +379,9 @@ class MessageReader: res = {} res["pubkey_pre"] = data[2:8].hex() - res["data"] = data[8:12].hex() + buf = data[8:] + res["data"] = buf.hex() + res["lpp"] = LppFrame().from_bytes(buf) attributes = { "data" : res["data"],