FTC Working Through Cell Phone Robot Controller and Driver Station Issues 20230320
From wikidb
Contents
Supporting the Mecanum Drivetrain Kit with equipment on hand
Why
- Hope was to support the Mecanum Drivetrain Kit with a REV Control and a Driver Hub. However, they were not available for the 2023 season.
- The decision was made to a control system from a 3D printed training bot using cell phones.
- Extension Hub
- Moto G Play running Android version 6.0.1 - Robot Controller
- ZTE - Driver Station running Android version 4.4.4 - Robot Station
Problem
The Move the Robot in a Square Demo Code builds and loads but it does not behave. When the right motor is set REVERSE, it continues to turn in a counter clockwise direction and does not reliably stop when position i reached.
- DriveInASquareEpp.java
- See FTC Make Coding Easier with Methods 20230112 the Mecanum test program development.
Potential Resolution Path
Training Robot development had moved to the Control Hub. The 3D Printed robot had been relegated to unsupported. Its bad behavior was suspected to out of date software. The Expansion Hub and Moto G Play were still supported by FTC. However, the ZTE was long past supported so was dropped. It was replaced by a
- Mecanum Drivetrain Kit interim configuration
- Extension Hub
- Moto G Play running Android version 6.0.1 - Robot Controller
- Moto G5 Plus running Android version 8.1.0 - Robot Station
TBD
The Moto phones should be swapped because the Robot Controller can leverage the Moto G5 Plus execute capabilities particularly for TensorFlow and image analysis.
Upgrade
TBD - Rough notes - Complete
References
Rules
- Game Manual Part 1 - Traditional Events - 2022-2023 FISRT Tech Challenge
- Section 7.0 page 26 The Robot
- page 40 and 41 <RS03> Allowed Software System Versions
- Section 7.0 page 26 The Robot
Upgrading Process
TBD
- Updating Hub Firmware
- Select Method 4 - Manage page on computer
- Updating Hub Firmware
Code Test
References
- FTC API reference
- Go to DcMotorEx
- setTargetPositionTolerance(int tolerance)
void setTargetPositionTolerance(int tolerance) Sets the target positioning tolerance of this motor Parameters: tolerance - the desired tolerance, in encoder ticks