When a companion sends a channel message (GRP_TXT), pyMC transmits it over the air via inject_packet() but never pushes the raw packet bytes to connected companion frame server clients via PUSH_CODE_LOG_RX_DATA (0x88). Apps that decrypt locally from raw RX — such as RemoteTerm — therefore never see companion-to-companion messages.
Injected TX packets should be pushed to companion frame server clients as raw RX frames (PUSH_CODE_LOG_RX_DATA 0x88), with RSSI=0 and SNR=0 to indicate local origin. This is consistent with how physical firmware behaves from the perspective of other nodes on the mesh.
Component: repeater/packet_router.py — PacketRouter.inject_packet()
When a companion sends a channel message (GRP_TXT), pyMC transmits it over the air via inject_packet() but never pushes the raw packet bytes to connected companion frame server clients via PUSH_CODE_LOG_RX_DATA (0x88). Apps that decrypt locally from raw RX — such as RemoteTerm — therefore never see companion-to-companion messages.
Injected TX packets should be pushed to companion frame server clients as raw RX frames (PUSH_CODE_LOG_RX_DATA 0x88), with RSSI=0 and SNR=0 to indicate local origin. This is consistent with how physical firmware behaves from the perspective of other nodes on the mesh.
<!-- github-sync-id:4557430061 -->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Component: repeater/packet_router.py — PacketRouter.inject_packet()
When a companion sends a channel message (GRP_TXT), pyMC transmits it over the air via inject_packet() but never pushes the raw packet bytes to connected companion frame server clients via PUSH_CODE_LOG_RX_DATA (0x88). Apps that decrypt locally from raw RX — such as RemoteTerm — therefore never see companion-to-companion messages.
Injected TX packets should be pushed to companion frame server clients as raw RX frames (PUSH_CODE_LOG_RX_DATA 0x88), with RSSI=0 and SNR=0 to indicate local origin. This is consistent with how physical firmware behaves from the perspective of other nodes on the mesh.
@agessaman
Good catch. I have this working. Going to send it over with the other companion fixes.
Thank you very much.