Software Debugging¶
Often the first symptoms of an issue with the kit manifest as a software error, regardless of whether the underlying issue is actually a software or a hardware issue. This page documents some methods which can be used with the kit to dig deeper into software issues.
The first port of call with software issues should be the status LEDs on the Brain Board, as well as any information in the logs, either in the log.txt
file or via the WiFi interface.
Getting a Command Prompt¶
Accessing a command prompt on the robot is the first step to digging deeper into many issues on the robot.
- Connect to the Robot via WiFi or Ethernet.
- You can then SSH to the robot using a terminal (Linux / MacOS) or PuTTY:
ssh root@robot.lan
.
If the DNS isn't working, you can use the IP address of the robot: ssh root@192.168.32.1
.
There are two command line file editors available: nano
and vim
.
USB drives are mounted at /var/run/media/astoria/
Logging¶
dmesg -w
- View and follow the kernel logudevadm monitor
- Monitor udev eventsjournalctl -f
- View and follow journal logsjournalctl -fu astdiskd
- View and follow astdiskd logsjournalctl -fu astprocd
- View and follow astprocd logsjournalctl -fu astmetad
- View and follow astmetad logsjournalctl -fu astwifid
- View and follow astwifid and hostapd logsjournalctl -fu kchd
- View and follow astwifid and hostapd logsjournalctl -fu servohack
- View and follow astwifid and hostapd logscat /var/lib/misc/dnsmasq.leases
- List DHCP leases on robot WiFi
Astoria Specific Commands¶
astctl usercode show
- Show information about usercodeastctl usercode log
- Follow the usercode logsastctl usercode trigger
- Trigger the virtual start buttonastctl usercode kill
- Kill any running usercodeastctl usercode restart
- Restart any running usercodeastctl list-disks
- List inserted USB drives and their typesastctl metadata show
- Show all current metadataastctl metadata set <key> <val>
- Set a metadata attributecat /var/srobo/cache/astmetad-metadata.json
- View the metadata cache
Misc¶
nft -f /etc/nftables.conf
- Reload firewallnano /etc/nftables.conf
- Edit the firewall configuration