NTP config and restarting robot #324
-
TL;DR: what is the method of restarting the robot (not application) over its USB connection alluded to here? Is there a way to restrict the create 3 to only use its USB connection for NTP and not use public NTP servers? I've noticed some issues that might be related to minor timing discrepancies between the Create 3 and the raspberry pi SBC I have running inside of it (operating an RPLidar and running the create3_lidar example). When replaying a bag file recorded on the SBC and rendering the result in RViz, I see intermittent "Lookup would require extrapolation into the future" errors-- discrepancies are on the order of 0.05 s. I see frequent occurrences of this from slam_toolbox, but I am not using namespaces (and I am getting /map output, etc), so I don't think that this is an issue of having an entirely missing set of transforms. Per these instructions, I set up chrony to serve time to the create3 over USB: I was able to configure chrony on the raspberry pi and confirm that the Create was attempting to use it per the output of
However, when I look at the create3 logs, I see lines like:
So it looks like the Create 3 is reaching my Pi, but I'm not sure that the "Time has been adjusted" line is due to a response from the Pi or from a public NTP server. The last item in the NTP configuration instructions notes handling the "delay xxx is too high" as follows: "If this happens, simply restart the robot (not just the application) via the webserver over the USB network connection." I don't know if this applies in this situation, but if it does, what is the command to restart the robot over the USB connection? Since the SBC is powered from the USB connection, there is a bit of a chicken/egg situation here. Alternately, is there a way to make the create 3 ignore all other NTP servers and just use the USB? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
Q for 1/2 of DR: What is the method of restarting the robot (not application) over its USB connection alluded to here? Q for 2/2 of DR: Is there a way to restrict the create 3 to only use its USB connection for NTP and not use public NTP servers? |
Beta Was this translation helpful? Give feedback.
Q for 1/2 of DR: What is the method of restarting the robot (not application) over its USB connection alluded to here?
A: When connected using Ethernet over USB, a link should be available in the "application" menu bar to restart the robot (see here). There might be 😬 a bug in G.3 which causes that to not appear; in that case, please upgrade to G.4.1. IIRC you can also use a tool like
curl
with something likecurl -X POST http://192.168.186.2/api/reboot
Q for 2/2 of DR: Is there a way to restrict the create 3 to only use its USB connection for NTP and not use public NTP servers?
A: I don't believe so, but you could take the Create 3 robot off Wi-Fi, and access the robot only via the SBC; …