Remote Terminal connection issue with MeshCore-Proxy #136

Closed
opened 2026-10-05 01:59:38 +02:00 by adam · 10 comments
Owner

It seems the TCP connection to MeshCore-Proxy is having an issue?
(i have followed the guides, but no luck)

Running in docker on a Raspberry 5 (64bit)
both docker containers on same host,

i can connect my MeshCore companion app (phone) to the IP:PORT and it works fine.

When trying to connect via Remote Terminal, I get a radio status in top right: Radio Connecting

docker log:
2026-04-13 13:55:35 - meshcore - INFO - TCP Connection started
2026-04-13 13:55:40 - meshcore - ERROR - No response from meshcore node, disconnecting
2026-04-13 13:55:40 - app.radio - WARNING - Reconnection failed: not connected after connect()
2026-04-13 13:55:45 - app.services.radio_lifecycle - WARNING - Radio connection lost, broadcasting status change
2026-04-13 13:55:45 - app.radio - INFO - Attempting to reconnect to radio...

It seems the TCP connection to MeshCore-Proxy is having an issue? (i have followed the guides, but no luck) Running in docker on a Raspberry 5 (64bit) both docker containers on same host, i can connect my MeshCore companion app (phone) to the IP:PORT and it works fine. When trying to connect via Remote Terminal, I get a radio status in top right: Radio Connecting docker log: 2026-04-13 13:55:35 - meshcore - INFO - TCP Connection started 2026-04-13 13:55:40 - meshcore - ERROR - No response from meshcore node, disconnecting 2026-04-13 13:55:40 - app.radio - WARNING - Reconnection failed: not connected after connect() 2026-04-13 13:55:45 - app.services.radio_lifecycle - WARNING - Radio connection lost, broadcasting status change 2026-04-13 13:55:45 - app.radio - INFO - Attempting to reconnect to radio... <!-- github-sync-id:4255517861 -->
adam closed this issue 2026-10-05 01:59:38 +02:00
Author
Owner

Hmm I know that there are other folks out there who are able to connect directly to TCP radios fine. My first suspicion would be around network connectivity -- are you using the right host within docker? They'll need to be on the same Docker network, or with an exposed host port and using host.docker.internal to punch up and out to access ports on the host.

I would be curious what you see from the logs on the proxy (is the connection making it to the proxy?), and with more detailed error reporting from our app (you can alter the environment variable section of your docker compose to have MESHCORE_LOG_LEVEL: DEBUG and see what it spits out when it tries to connect.

Hmm I know that there are other folks out there who are able to connect directly to TCP radios fine. My first suspicion would be around network connectivity -- are you using the right host within docker? They'll need to be on the same Docker network, or with an exposed host port and using `host.docker.internal` to punch up and out to access ports on the host. I would be curious what you see from the logs on the proxy (is the connection making it to the proxy?), and with more detailed error reporting from our app (you can alter the environment variable section of your docker compose to have `MESHCORE_LOG_LEVEL: DEBUG` and see what it spits out when it tries to connect. <!-- github-comment-id:4262606174 -->
Author
Owner

i can confirm, it's not working. i'm using ai-written python proxy and it's working okay. socat is working fine too.
all on same host/port, so network connectivity is known good.

cmdline: meshcore-proxy --serial /dev/ttyACM0 --port 44XX --debug --log-events-verbose
output is redacted, i'm not sure if it's contains any sensitive data

INFO:meshcore_proxy.proxy:Client connected: ('172.20.0.2', 42644)
-> CMD_APPSTART: version=3 | app=mccli
   [13 bytes]: 01032020202020206d63636c69
<- SELF_INFO: name=......... | type=client | public_key=... | tx_power=22 | freq_mhz=868.73 | bw_khz=62.50 | sf=7 | cr=7 | lat=.... | lon=....
   [72 bytes]: ....
<- LOG_DATA [92 bytes]: ....
<- LOG_DATA [92 bytes]: ...
<- LOG_DATA [93 bytes]: .....
<- LOG_DATA [93 bytes]: .....
<- LOG_DATA [93 bytes]: ....
<- LOG_DATA [93 bytes]: ....
<- LOG_DATA [94 bytes]: ......
INFO:meshcore_proxy.proxy:Client disconnected: ('172.20.0.2', 42644)
i can confirm, it's not working. i'm using ai-written python proxy and it's working okay. socat is working fine too. all on same host/port, so network connectivity is known good. cmdline: meshcore-proxy --serial /dev/ttyACM0 --port 44XX --debug --log-events-verbose output is redacted, i'm not sure if it's contains any sensitive data ``` INFO:meshcore_proxy.proxy:Client connected: ('172.20.0.2', 42644) -> CMD_APPSTART: version=3 | app=mccli [13 bytes]: 01032020202020206d63636c69 <- SELF_INFO: name=......... | type=client | public_key=... | tx_power=22 | freq_mhz=868.73 | bw_khz=62.50 | sf=7 | cr=7 | lat=.... | lon=.... [72 bytes]: .... <- LOG_DATA [92 bytes]: .... <- LOG_DATA [92 bytes]: ... <- LOG_DATA [93 bytes]: ..... <- LOG_DATA [93 bytes]: ..... <- LOG_DATA [93 bytes]: .... <- LOG_DATA [93 bytes]: .... <- LOG_DATA [94 bytes]: ...... INFO:meshcore_proxy.proxy:Client disconnected: ('172.20.0.2', 42644) ``` <!-- github-comment-id:4268817593 -->
Author
Owner

no clues from debug on remoteterm side too

remoteterm-1  | 2026-04-17 14:20:21 - app.radio - INFO - Attempting to reconnect to radio...
remoteterm-1  | 2026-04-17 14:20:21 - app.radio - DEBUG - Connecting to radio at 1.2.3.4:44XX (TCP)
remoteterm-1  | 2026-04-17 14:20:26 - app.radio - DEBUG - TCP connection established
remoteterm-1  | 2026-04-17 14:20:26 - app.radio - WARNING - Reconnection failed: not connected after connect()
remoteterm-1  | 2026-04-17 14:20:31 - app.services.radio_lifecycle - WARNING - Radio connection lost, broadcasting status change
remoteterm-1  | 2026-04-17 14:20:31 - app.radio - INFO - Attempting to reconnect to radio...
remoteterm-1  | 2026-04-17 14:20:31 - app.radio - DEBUG - Connecting to radio at 1.2.3.4:44XX (TCP)
remoteterm-1  | 2026-04-17 14:20:36 - app.radio - DEBUG - TCP connection established
remoteterm-1  | 2026-04-17 14:20:36 - app.radio - WARNING - Reconnection failed: not connected after connect()
remoteterm-1  | 2026-04-17 14:20:41 - app.services.radio_lifecycle - WARNING - Radio connection lost, broadcasting status change
remoteterm-1  | 2026-04-17 14:20:41 - app.radio - INFO - Attempting to reconnect to radio...
remoteterm-1  | 2026-04-17 14:20:41 - app.radio - DEBUG - Connecting to radio at 1.2.3.4:44XX (TCP)
no clues from debug on remoteterm side too ``` remoteterm-1 | 2026-04-17 14:20:21 - app.radio - INFO - Attempting to reconnect to radio... remoteterm-1 | 2026-04-17 14:20:21 - app.radio - DEBUG - Connecting to radio at 1.2.3.4:44XX (TCP) remoteterm-1 | 2026-04-17 14:20:26 - app.radio - DEBUG - TCP connection established remoteterm-1 | 2026-04-17 14:20:26 - app.radio - WARNING - Reconnection failed: not connected after connect() remoteterm-1 | 2026-04-17 14:20:31 - app.services.radio_lifecycle - WARNING - Radio connection lost, broadcasting status change remoteterm-1 | 2026-04-17 14:20:31 - app.radio - INFO - Attempting to reconnect to radio... remoteterm-1 | 2026-04-17 14:20:31 - app.radio - DEBUG - Connecting to radio at 1.2.3.4:44XX (TCP) remoteterm-1 | 2026-04-17 14:20:36 - app.radio - DEBUG - TCP connection established remoteterm-1 | 2026-04-17 14:20:36 - app.radio - WARNING - Reconnection failed: not connected after connect() remoteterm-1 | 2026-04-17 14:20:41 - app.services.radio_lifecycle - WARNING - Radio connection lost, broadcasting status change remoteterm-1 | 2026-04-17 14:20:41 - app.radio - INFO - Attempting to reconnect to radio... remoteterm-1 | 2026-04-17 14:20:41 - app.radio - DEBUG - Connecting to radio at 1.2.3.4:44XX (TCP) ``` <!-- github-comment-id:4268872538 -->
Author
Owner
https://github.com/rgregg/meshcore-proxy/issues/14 probably related <!-- github-comment-id:4268959723 -->
Author
Owner

Yeah, with that issue and the fact that socat works fine, I'm going to consider this an issue in the upstream. I'll keep this open until things are fixed, but I don't think this is anything that we can do much about.

I'm going to guess that this probably has something to do with some flimsiness within meshcore_py; I know that it is not the most resilient thing in the world to line level weirdness (already pr'd one bug fix for that).

Yeah, with that issue and the fact that socat works fine, I'm going to consider this an issue in the upstream. I'll keep this open until things are fixed, but I don't think this is anything that we can do much about. I'm going to guess that this probably has something to do with some flimsiness within meshcore_py; I know that it is not the most resilient thing in the world to line level weirdness (already pr'd one bug fix for that). <!-- github-comment-id:4269258372 -->
Author
Owner

i can confirm, it's not working. i'm using ai-written python proxy and it's working okay. socat is working fine too. all on same host/port, so network connectivity is known good.

cmdline: meshcore-proxy --serial /dev/ttyACM0 --port 44XX --debug --log-events-verbose output is redacted, i'm not sure if it's contains any sensitive data

INFO:meshcore_proxy.proxy:Client connected: ('172.20.0.2', 42644)
-> CMD_APPSTART: version=3 | app=mccli
   [13 bytes]: 01032020202020206d63636c69
<- SELF_INFO: name=......... | type=client | public_key=... | tx_power=22 | freq_mhz=868.73 | bw_khz=62.50 | sf=7 | cr=7 | lat=.... | lon=....
   [72 bytes]: ....
<- LOG_DATA [92 bytes]: ....
<- LOG_DATA [92 bytes]: ...
<- LOG_DATA [93 bytes]: .....
<- LOG_DATA [93 bytes]: .....
<- LOG_DATA [93 bytes]: ....
<- LOG_DATA [93 bytes]: ....
<- LOG_DATA [94 bytes]: ......
INFO:meshcore_proxy.proxy:Client disconnected: ('172.20.0.2', 42644)

Thanks, i tried with SOCAT and that is stable and running with Remote Term.

> i can confirm, it's not working. i'm using ai-written python proxy and it's working okay. socat is working fine too. all on same host/port, so network connectivity is known good. > > cmdline: meshcore-proxy --serial /dev/ttyACM0 --port 44XX --debug --log-events-verbose output is redacted, i'm not sure if it's contains any sensitive data > > ``` > INFO:meshcore_proxy.proxy:Client connected: ('172.20.0.2', 42644) > -> CMD_APPSTART: version=3 | app=mccli > [13 bytes]: 01032020202020206d63636c69 > <- SELF_INFO: name=......... | type=client | public_key=... | tx_power=22 | freq_mhz=868.73 | bw_khz=62.50 | sf=7 | cr=7 | lat=.... | lon=.... > [72 bytes]: .... > <- LOG_DATA [92 bytes]: .... > <- LOG_DATA [92 bytes]: ... > <- LOG_DATA [93 bytes]: ..... > <- LOG_DATA [93 bytes]: ..... > <- LOG_DATA [93 bytes]: .... > <- LOG_DATA [93 bytes]: .... > <- LOG_DATA [94 bytes]: ...... > INFO:meshcore_proxy.proxy:Client disconnected: ('172.20.0.2', 42644) > ``` Thanks, i tried with SOCAT and that is stable and running with Remote Term. <!-- github-comment-id:4271107552 -->
Author
Owner

Just something to be aware of; RemoteTerm doesn't technically have any problems running over a proxy, but it does take full control of the radio, offloading all channels and contacts unloading on only contacts that it decides should be on the radio. So, it can cause a lot of shift underneath another client that's not expecting to see changes in the radio, and the radio changing configuration underneath RemoteTerm can cause problems with messages going to the wrong.

Just something to be aware of; RemoteTerm doesn't technically have any problems running over a proxy, but it does take full control of the radio, offloading all channels and contacts unloading on only contacts that it decides should be on the radio. So, it can cause a lot of shift underneath another client that's not expecting to see changes in the radio, and the radio changing configuration underneath RemoteTerm can cause problems with messages going to the wrong. <!-- github-comment-id:4271139209 -->
Author
Owner
proxy works with this docker build https://github.com/rgregg/meshcore-proxy/pkgs/container/meshcore-proxy/760329377?tag=dev-13 <!-- github-comment-id:4430975005 -->
Author
Owner

Woot! Looks fixed on that thread too.

Woot! Looks fixed on that thread too. <!-- github-comment-id:4445982956 -->
Author
Owner

proxy works with this docker build https://github.com/rgregg/meshcore-proxy/pkgs/container/meshcore-proxy/760329377?tag=dev-13

Can confirm works with building latest docker from source on meshcore-proxy.
RemoteTerm has been working perfect all along :-)

> proxy works with this docker build https://github.com/rgregg/meshcore-proxy/pkgs/container/meshcore-proxy/760329377?tag=dev-13 Can confirm works with building latest docker from source on meshcore-proxy. RemoteTerm has been working perfect all along :-) <!-- github-comment-id:4448725658 -->
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#136