RobotKitLib is our replacement for wpilib-robotpy for the Freenove Raspberry Pi Robot Kit, with compaitability (with minimal modifications) for frc robotpy code.
The Freenove 4WD Raspberry Pi - based robot kit looks like a promising platform for software training. This kits costs about $70, but requires a number of other components to be fully functional.
Important files:
NOTE: Using this code requires Python 3.9
Note for Windows users - In order to deploy code, you will need to install a bash terminal such as Git Bash (https://git-scm.com/downloads, make sure to select download for Windows) and run the file from there.
Setup:
Clone the repo both on your local machine and the robot's raspberry pi.
Install requirements.txt with pip on both your local machine and on the robot
On the raspberry pi, enable SSH and GPIO
On the raspberry pi, run setup_autorunner.sh
to allow the robot to run on boot
Usage:
Driverstation:
The driverstation is run with python driverstation.py IP_ADDRESS
with the IP being the IP of the robot (found with hostname -I
)
Deploying code:
Simply run python deploy.py IP_ADDRESS
with the IP again being the IP of the robot
On the robot:
Running the code:
Run python robot_setup.py
(in future versions this will start on boot)
I think it can also serve as a platform for design/mechanical and electrical to do some nice custom projects.
One limitation that we discovered right away is the software architecture seems very limiting for what we want to do with robot programming. But, fortunately, everything is written in python, so fixing it up is certainly an option.
So we have kicked off a software project to make it programmable using the same robot.py kind of architecture that we are accustomed to. This requires:
The task of creating this environment should be excellent training for returning students, and should help them understand a little what has maybe been "magic" before.