F9P loses connection with RTKBase

Though I’d start a separate thread if somebody else is having similar issues. Keep getting bans from rtk2go intermittently, and as I understand it’s due to RTKBase continuing to cast even though there’s nothing coming in from the F9P. So am I reading the logs correctly:

Here it’s losing connection to F9P as bps drops to zero. Keeps running like this forever and eventually rtk2go gets banned because sending no data…

Jan 11 12:30:57 basegnss systemd-journald[143]: Suppressed 11 messages from str2str_tcp.service
Jan 11 12:30:57 basegnss run_cast.sh[473]: 2022/01/11 11:31:15 [CC—] 88865480 B 45547 bps (0) /dev/ttyACM0 (1) 3 clients
Jan 11 12:31:57 basegnss systemd-journald[143]: Suppressed 11 messages from str2str_tcp.service
Jan 11 12:31:57 basegnss run_cast.sh[473]: 2022/01/11 11:32:15 [CC—] 89195632 B 44369 bps (0) /dev/ttyACM0 (1) 3 clients
Jan 11 12:32:57 basegnss systemd-journald[143]: Suppressed 11 messages from str2str_tcp.service
Jan 11 12:32:57 basegnss run_cast.sh[473]: 2022/01/11 11:33:15 [CC—] 89310348 B 0 bps (0) /dev/ttyACM0 (1) 127.0.0.1
Jan 11 12:33:57 basegnss systemd-journald[143]: Suppressed 11 messages from str2str_tcp.service
Jan 11 12:33:57 basegnss run_cast.sh[473]: 2022/01/11 11:34:15 [CC—] 89310348 B 0 bps (0) /dev/ttyACM0 (1) 127.0.0.1
Jan 11 12:34:57 basegnss systemd-journald[143]: Suppressed 11 messages from str2str_tcp.service

And when trying to restart main service, that fails:

Jan 11 12:42:25 basegnss systemd[1]: Stopping RTKBase Tcp…
Jan 11 12:42:25 basegnss systemd[1]: str2str_tcp.service: Succeeded.
Jan 11 12:42:25 basegnss systemd[1]: Stopped RTKBase Tcp.
Jan 11 12:42:36 basegnss systemd[1]: Starting RTKBase Tcp…
Jan 11 12:42:36 basegnss systemd[1]: Started RTKBase Tcp.
Jan 11 12:42:36 basegnss systemd[1]: str2str_tcp.service: Main process exited, code=exited, status=255/EXCEPTION
Jan 11 12:42:36 basegnss systemd[1]: str2str_tcp.service: Failed with result ‘exit-code’.

Front page looks like:

After reboot it works as normal once again.

Any ideas? Am I correct in thinking the problem is in the connection between RasPi and F9P? Maybe a bad USB cable? Install is the latest 2.3.1 pre-built image, just added a perl script running in the background updating the DNS records.

Could you add detection in rtk base for the 0.1 hz ARP message, then if it does not receive it from the F9P in 30s it shuts off the stream?
Then auto reboots, everything external relay power cycle.

Yeah might be a good check to stop casting NTRIP if the stream goes down, gotta check if it would be an easy feature to add to the source.

But the problem is something I’ve never seen on my other base. The only difference is the network setup, the non-problematic is over wifi and here I have a USB 4G dongle that appears as eth0 on the raspi.

EDIT: Now been running a week non-stop without issues with the GPS connected over HW serial on the Pi. Looks like the solution if somebody has similar issues with the Huawei / other 4G stick. And it’s dead easy as the receiver can be configured via USB and then just plug in to UART1 and change the port in GUI

This has proved to be a persistent problem, I think now I’ve figured it out. The 4G stick is somehow messing the USB hub, and the hub disconnects the devices. After that the streaming is unable to recover from the USB fault, found this out from the kernel logs.

For reliability, I think I’ll switch the GPS to a hardware serial on the Pi, then it shouldn’t matter if the USB disconnects the network stick, as that just reconnects and keeps on going. Changing to a powered USB hub helped a lot, but didn’t completely remove the problem.