Feature Request: Send telemetry to MQTT #224

Closed
opened 2026-10-05 02:04:34 +02:00 by adam · 9 comments
Owner

I have a heltec v4 connected via serial usb to a pi5. The pi5 is also running remoteterm. I also have a heltec repeater. I am using mqtt elsewhere in my network.
I would like to be able to get the radio telemetry from both my node and repeater and be able to publish them to mqtt.
The current mqtt integration supports sending messages to mqtt, but I can't see a way to send telemetry.

I accept that I could just write a bit of python and hit the api endpoints but it would be cool to be able to set it up inside remoteterm along with other mqtt integrations.

I have a heltec v4 connected via serial usb to a pi5. The pi5 is also running remoteterm. I also have a heltec repeater. I am using mqtt elsewhere in my network. I would like to be able to get the radio telemetry from both my node and repeater and be able to publish them to mqtt. The current mqtt integration supports sending messages to mqtt, but I can't see a way to send telemetry. I accept that I could just write a bit of python and hit the api endpoints but it would be cool to be able to set it up inside remoteterm along with other mqtt integrations. <!-- github-sync-id:4768090542 -->
adam closed this issue 2026-10-05 02:04:34 +02:00
Author
Owner

@markdoutre,
Read issue 304 and check if it is not the same ask ( https://github.com/jkingsman/Remote-Terminal-for-MeshCore/issues/304 )
I have my RPT telemetry being sent to HA thru MQTT (all native functions no code written, appart from the dasboard card).

Image
@markdoutre, Read issue 304 and check if it is not the same ask ( https://github.com/jkingsman/Remote-Terminal-for-MeshCore/issues/304 ) I have my RPT telemetry being sent to HA thru MQTT (all native functions no code written, appart from the dasboard card). <img width="621" height="949" alt="Image" src="https://github.com/user-attachments/assets/d16bb8f0-52e8-48e5-8972-83b8ff27efbf" /> <!-- github-comment-id:4832854504 -->
Author
Owner

thanks - saw that issue before raising my request. I'll give it a go. In my case I already have an mqtt broker with a script that pushes solar charge controller and bms data to bigquery. I'll have a play with the above.

thanks - saw that issue before raising my request. I'll give it a go. In my case I already have an mqtt broker with a script that pushes solar charge controller and bms data to bigquery. I'll have a play with the above. <!-- github-comment-id:4832898495 -->
Author
Owner

thanks - saw that issue before raising my request. I'll give it a go. In my case I already have an mqtt broker with a script that pushes solar charge controller and bms data to bigquery. I'll have a play with the above.

@markdoutre
Bare in mind that any request for telemetry request via RF to the radio consumes AirTime (on top of that in europe we have some legal limits - 10% Duty Cycle) so everytime the RPT is busy answering your request for telemetry it will not receive or repete any packets to the MeshCore infra.
So do it only for zero hop devices that you own and with a reasonable collection interval.

Image
> thanks - saw that issue before raising my request. I'll give it a go. In my case I already have an mqtt broker with a script that pushes solar charge controller and bms data to bigquery. I'll have a play with the above. @markdoutre Bare in mind that any request for telemetry request via RF to the radio consumes AirTime (on top of that in europe we have some legal limits - 10% Duty Cycle) so everytime the RPT is busy answering your request for telemetry it will not receive or repete any packets to the MeshCore infra. So do it only for zero hop devices that you own and with a reasonable collection interval. <img width="1282" height="396" alt="Image" src="https://github.com/user-attachments/assets/a4cfb7f0-40df-47e2-8aa7-cd9e55d3957a" /> <!-- github-comment-id:4833033246 -->
Author
Owner

So this works. But, I get all the HA stuff as well sent to mqtt, so there is a lot of redundancy. I guess I could just filter the HA stuff out.
Fir instance, I get topics :
homeassistant/sensor/meshcore_6111266fd494/lpp_temperature_ch1/config
and
meshcore/6111266fd494/telemetry

Ideally I just want the latter - I can process the payload myself.

So this works. But, I get all the HA stuff as well sent to mqtt, so there is a lot of redundancy. I guess I could just filter the HA stuff out. Fir instance, I get topics : homeassistant/sensor/meshcore_6111266fd494/lpp_temperature_ch1/config and meshcore/6111266fd494/telemetry Ideally I just want the latter - I can process the payload myself. <!-- github-comment-id:4843620970 -->
Author
Owner

I do not have that data redundancy that you found from the HA side (that reads MQTT).

Image Image
I do not have that data redundancy that you found from the HA side (that reads MQTT). <img width="1352" height="951" alt="Image" src="https://github.com/user-attachments/assets/0011338b-d749-43cf-aaa1-6d0752180dea" /> <img width="685" height="550" alt="Image" src="https://github.com/user-attachments/assets/c68f89a6-b5b2-45f7-91a0-5984bfe578a8" /> <!-- github-comment-id:4844030174 -->
Author
Owner

Yeah we don't have a way to halt the publishing of the discovery configs. I suppose we could add that as a toggle to the HA fanout module setup, but I'd prefer to keep that as much of a bundle as possible to prevent folks from getting confused. I know the cost is a slightly noisier topic set, but it seems like a fair trade to me for the p95 (I presume) of users who aren't running their own dedicated pipelines. Thoughts?

Yeah we don't have a way to halt the publishing of the discovery configs. I suppose we could add that as a toggle to the HA fanout module setup, but I'd prefer to keep that as much of a bundle as possible to prevent folks from getting confused. I know the cost is a slightly noisier topic set, but it seems like a fair trade to me for the p95 (I presume) of users who aren't running their own dedicated pipelines. Thoughts? <!-- github-comment-id:4919790689 -->
Author
Owner

Yeah we don't have a way to halt the publishing of the discovery configs. I suppose we could add that as a toggle to the HA fanout module setup, but I'd prefer to keep that as much of a bundle as possible to prevent folks from getting confused. I know the cost is a slightly noisier topic set, but it seems like a fair trade to me for the p95 (I presume) of users who aren't running their own dedicated pipelines. Thoughts?

I agree

> Yeah we don't have a way to halt the publishing of the discovery configs. I suppose we could add that as a toggle to the HA fanout module setup, but I'd prefer to keep that as much of a bundle as possible to prevent folks from getting confused. I know the cost is a slightly noisier topic set, but it seems like a fair trade to me for the p95 (I presume) of users who aren't running their own dedicated pipelines. Thoughts? I agree <!-- github-comment-id:4923849978 -->
Author
Owner

I found that if I set the integration to track my repeater, set message scope to Only listed channel / contact then not select anything in the list, I get a much reduced dataset, but enough for what I need. Periodically I just clean up the data in BigQuery by deleting any topic that has %home% in it.
Got it working nicely in DataStudio so its good enough.

I found that if I set the integration to track my repeater, set message scope to Only listed channel / contact then not select anything in the list, I get a much reduced dataset, but enough for what I need. Periodically I just clean up the data in BigQuery by deleting any topic that has %home% in it. Got it working nicely in DataStudio so its good enough. <!-- github-comment-id:4923903510 -->
Author
Owner

Okay sounds like we've landed on a not-perfect-but-tolerable compromise. I'm going to close this issue for now, but if there are additional or new issues, feel free to reopen or create a new one. Thanks!

Okay sounds like we've landed on a not-perfect-but-tolerable compromise. I'm going to close this issue for now, but if there are additional or new issues, feel free to reopen or create a new one. Thanks! <!-- github-comment-id:4929773084 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/Remote-Terminal-for-MeshCore#224