Runs a master process which monitors for Robot peripherals. For each one it
finds, it opens a UNIX seqpacket socket in /var/robotd/<type>/<id> and runs
a controller process to actually communicate with the board.
Currently just handles the motor board and cameras
robotd/master.pycontains the main entry point, the UNIX socket listening code, and the bits to launch controller subprocesses.robotd/devices.pycontains the actual classes which implement particular devices.robotd/devices_base.pycontains some common code fordevices.py.robotd.serviceis the systemd service which runs the thing in production.
Since robotd vendors in April Tags for its vision support, which depends on
libusb, you'll need to install the development package for libusb in order
to build the python package:
sudo apt install libusb-1.0-0-devWithout this you'll likely see errors building the apriltags source. However,
once done you can pip install -e . as usual.
# Install build tools:
sudo apt install build-essential devscripts debhelper dh-systemd equivs
# cd to the root of this project
cd path/to/robotd
# Install dependencies
sudo mk-build-deps -ir
# Build the package:
debuild -uc -us