- The SPRK robot program (this repository) running on a Raspberry Pi.
- The ESP-32 that runs custom software that handles all low level IO on the robot and communicates to the Pi via SPI.
- The teleoperator console that connects to the Pi via a network socket.
The purpose of this was to create a general purpose robot framework, mainly for use on the SPRK robot. Hence, why src/base/ exists.
Ensure you are in the root of the project first.
- For a
x64linux target, run
mkdir ./build && cd ./build && cmake ../src && cmake --build . --clean-firstThe output will be an executable ./robot
- For an
armtarget, use thetoolchain-rpi.cmakefile by running
mkdir ./build-arm && cd ./build-arm && cmake -DCMAKE_TOOLCHAIN_FILE=../toolchain-rpi.cmake ../src/ && cmake --build . --clean-firstYes, the IP is hardcoded in deploy.sh. There is a VS code task that runs it.
Don't ask me what SPRK stands for. I don't know either. Originally, the robot was named SHARK for "Self Height Adjusting Robot with Kinematics", and when I realized I didn't have CAD experience at the time, was quickly scrapped. We put off the renaming the project until the day of the STEM showcase.
- Leon de Boer: C SPI logic