Restarting FRC in 2023
The software on the Windows machine was lost, so we had to start from scratch to get a firmware image for the robotRIO and resurrect the FRC robot built by Team 426.
We have an AM14U4 drive base - and it is a great starting point. Swerve modules might come later.
Following the recommendation from WPILIB we fist installed the following programs on our Windows machines:
- LabView FRC (Windows only)
- VS Code
- FRC Driver Station Powered by NI LabVIEW (Windows Only)
- FRC roboRIO Imaging Tool (Windows Only)
- FRC Radio Configuration Utility (Windows Only)
- FRC Driver Station Log Viewer (Windows Only)
- RobotBuilder
We want to be swappable to return to PWM with a simple radio controller. And otherwise run CAN bus and control motor temperature (see RESET 2023 event )
This took quite some time, even on our i7
The motors on the CAN bus need to be addressed. But how? Can we give them individual names (configure the Talon SRX)
We'll see about that.
Within a week we had the hardware back to a working stage like early 2020. And on the Lenovo laptop installed all needed software, trial licences and the program updated and recompiled for the 2023 libraries.
First we updated the firmware of the roboRIO from 6.0.0. to 8.8.0f0. The installed program worked fine afterwards. For the update of the FRC Image with the 2023 Java Virtual Machine we had to overwrite the old image 2020_v10 with the new 2023_v3.2 and lost the installed program in the process. It has to be recompiled and uploaded again.
On Monday we installed the FRC Game Tools, connected to the 426 Wifi, activated the sensors, reconnected all Talon SRX to the CAN bus - and with a Logitech USB flight stick we were able to control the robot again! The old software on the roboRIO worked out-of-the-box!
After that we needed some software updates for the motor controllers like Talon SRX and Victor SPX. With Phoenix Tuner X this was done fast.
Then we found a Gadgeteer Pigeon IMU in our spare materials box. Connexted over the flat wire to a Talon SRX we now have a 9-DOF gyroscope with magnetometer! It was already noticed in the software.
Hidden in the code is also a google sheet document to assign different configurations (Control Systems Planning) to team east and west. They look very similar, see here ZombieBot West:
Name | Category | Controlled By | Port/Address | Notes |
---|---|---|---|---|
LeftDriveCIM1 | Motor | TalonCAN | 0 | |
LeftDriveCIM2 | Motor | TalonCAN | 1 | |
RightDriveCIM1 | Motor | TalonCAN | 2 | |
RightDriveCIM2 | Motor | TalonCAN | 3 | |
ConveyorCIM1 | Motor | VictorCAN | 6 | |
ConveyorCIM2 | Motor | VictorCAN | 7 | |
ColorWheelDrive | Motor | VictorCAN | 8 | |
ColorWheelArm | Motor | VictorCAN | 9 | |
ClimbMotor 1 | Motor | TalonCAN | 10 | |
ClimbMotor 2 | Motor | TalonCAN | 11 | |
LeftEncoder | Encoder | TalonCAN #0 | 0 | attached to talon through SRX cable |
RightEncoder | Encoder | TalonCAN #2 | 1 | attached to talon through SRX cable |
ColorSensor | I2CSensor | RoboRIO I2C | 0x52 | |
Pigeon/navX | IMU | CAN | 3 | currently attached to the rightDriveCIM2 talon |
Pixy2 | SPI | |||
colorWheelArmLowerLimit | DigitalIn | RoboRIO DIO | 5 | |
colorWheelArmUpperLimit | DigitalIn | RoboRIO DIO | 4 |
For comparison ZombieBot East:
Name | Category | Controlled By | Port/Address |
---|---|---|---|
LeftDriveCIM1 | Motor | TalonCAN | 0 |
RightDriveCIM1 | Motor | TalonCAN | 2 |
ConveyorCIM1 | Motor | VictorCAN | 6 |
ConveyorCIM2 | Motor | VictorCAN | 7 |
ColorWheelDrive | Motor | TalonCAN | 8 |
ColorWheelArm | Motor | TalonCAN | 9 |
ClimbMotor 1 | Motor | TalonCAN | 10 |
ClimbMotor 2 | Motor | TalonCAN | 11 |
ColorSensor | I2CSensor | RoboRIO I2C | 0x52 |
Pigeon/navX | IMU | CAN | 15 |
colorWheelLowerLimit | DigitalIn | RoboRIO DIO | 0 |
colorWheelUpperLimit | DigitalIn | RoboRIO DIO | 1 |
DigitalIn | RoboRIO DIO | 3 | |
DigitalIn | RoboRIO DIO | 2 |
Driving armchair on the FRC 2020 drivebase for the art show "RESET" on May 25th, 2023.
This project was a huge success. Many people wanted to take a ride on the chair, from young to old. And they enjoyed it!
So much that the two CIM motors actually overheated 🥵 and reduced their power. We had to make a break to let them cool a little:
The last state of the design from March 2020 had no dedicated space for the battery, and some connections were rather loose. The MDF base plate is very thin and bends under load. A new 22mm wooden structure to hold the lead battery in place was cut, screwed and glued together. A separate power switch for the 5V power supply of the radio was installed. Now the glue needs to dry.
The visit was great. Team 4253 would like to support us - we need to make contact! They have some vintage robots to learn from:
Build a robot for the previous sesion by freshmen teams to learn from working desigs (see below) and run example bots with SDS MK4i Swerve Modules, driven by eight Talon FX:
As noted in this Instagram post the FRC robot was present with a gamepad connected to the Lenovo laptop to showcase the robot:
Evan Weinberg @emwdx started the collaboration with 5 other schools to bring FRC to SSIS and Vietnam. The stages are documented in the repository https://github.com/ssis-robotics/Team426Robot