Timeout error during SSH via fctl

Troubleshoot timeout errors and repeated TURN CreatePermission messages when connecting to a robot with SSH via fctl.

Issue details

I'm getting a timeout error when trying to SSH to my robot via fctl.

Troubleshooting steps

This may be caused by an outdated version of fctl or your Formant agent. To resolve this issue:

sudo apt install fctl

Repeating turnc ERROR: CreatePermission ... 400 Bad Request messages

If your SSH tunnel works but the terminal repeatedly prints turnc ERROR: CreatePermission ... 400 Bad Request messages, your firewall or NAT configuration may be changing the UDP source port used for TURN traffic.

One reported cause is pfSense randomizing UDP source ports on outbound NAT. In this case, Twilio's TURN server may tie permission refreshes to the original source port. If the NAT mapping changes, the TURN server can reject the permission refresh and the turnc error may appear again every few minutes.

To resolve this on pfSense, work with your network administrator to add a Static Port NAT rule for outbound UDP traffic on port 3478 from the affected internal user subnet.

After applying the rule, start a new SSH session with fctl and confirm that the turnc ERROR: CreatePermission ... 400 Bad Request messages no longer appear.