DuckieTown - Pre-Lab 1
Week 1 - Before the first lab
Mostly did setup stuff. No programming yet
Connecting to the robots
As it turns out, Duckietown needs support for .local
name resolution. This
doesn’t happen by default if using systemd-resolved. This
stackexchange
provides a good overview
Additionally, use firewalld to unblock UDP on port 5353
It likely won’t work with mdns_minimal
so instead use mdns
in
/etc/nsswitch.conf
and create another file /etc/mdns.allow
with the lines
.local.
.local
See section 4 of the ArchWiki for more info
Webpage
I used the markdown notes setup I’ve been working on for this site the past week and slightly reworked it to suit the DuckieTown blog you’re reading right now! This also finished up a lot of styling problems that remained with the notes
GUI Tools
As it turns out, I didn’t have xhost installed, so of course the camera didn’t work.
With that, the camera now works at least… Use the following to get a camera
window running over xwayland. Make sure dockerd
is running in systemd
Keyboard control
Keyboard controls also work!… except only in the non-graphic mode
When the shell loads, it’ll ask for one of wasde
. Sometimes it won’t register
keys right away. I found that after stopping with e
, immediately using one of
the movement commands fails, since the duckiebot doesn’t seem to have understood
it stopped. Instead send yet another e
and then the movements should work
Conversely, if it’s already moving with w
, immediately using asd
tends to
work. Additionally, if it’s refusing to start moving forward with w
and the
extra e
s aren’t helping, try doing the opposite movement with s
then
immediately switch into w
When things stop working
Sometimes, mDNS just doesn’t feel it today with systemd-networkd. In this case just gives up
Once everything is running, including docker, open a new terminal. Otherwise there’ll be errors like “QT Plugin not installed” and “Failed to open DISPLAY”. This has to do with updated environment variables