Skip to content

XRP-WPILib Firmware v0.5.1

Compare
Choose a tag to compare
@zhiquanyeo zhiquanyeo released this 26 Sep 23:01
· 19 commits to main since this release
9a67930

About XRP-WPILib

This firmware for the XRP robot works in conjunction with the WPILib XRP extention to support writing WPILib robot programs and running them on low cost XRP robots.

WPILib Hardware Support

  • Onboard LED and Pushbutton exposed as DIO channels 0 and 1
  • 2 motors (left/right) exposed as XRPMotor channels 0/1 (These behave similarly to PWM based motor controllers)
  • 2 additional motors (motor3/motor4) exposed as XRPMotor channels 2/3
  • 2 servo outputs (servo1/servo2) exposed as XRPServo channels 4/5
  • Encoders for each motor (channel 4/5 for Left, channel 6/7 for Right, channel 8/9 for motor3, channel 10/11 for motor4)
  • 3-axis gyro exposed as XRPGyro
  • 3-axis accelerometer exposed as BuiltInAccel
  • Support for XRP reflectance sensor (reporting Left/Right values on Analog 0/1)
  • Support for XRP Rangefinder (reporting values on Analog 2) (Temporarily disabled)

Difference between XRP and Romi capabilities

For the most part, code written for the Romi and XRP are interchangeable. The main difference being that anywhere a Spark motor controller was used in Romi code should be replaced with a XRPMotor (with same channel numbers) for the XRP. Similarly anywhere a Servo object was used in Romi code should be replaced with a XRPServo.

Additionally, the XRP only has a single pushbutton and LED, compared to the 3 each for the Romi. Thus, DIO channels 3 and 4 are not used on the XRP.

Finally, the XRP requires the use of a XRP specific WPILib HAL Sim extension.

Changes from v0.5.0

  • Fixes a crash related to ultrasonic sensor usage

Known Issues

  • None... yet

What's Changed

Full Changelog: v0.5.0...v0.5.1