Version 9.0 (20230830-154348)
Breaking Changes
- Removes Vuforia
- Fields in
AprilTagDetection
andAprilTagPose(ftc/raw)
objects are nowfinal
- VisionPortal builder method
setCameraMonitorViewId()
has been renamed tosetLiveViewContainerId()
andenableCameraMonitoring()
has been renamed toenableLiveView()
Enhancements
- Adds support for the DFRobot HuskyLens Vision Sensor.
- Blocks teams can now perform webcam calibration.
- Added a Block for System.currentTimeMillis (under Utilities/Time)
- Added a Block for VisionPortal.saveNextFrameRaw (under Vision/VisionPortal)
- Added a new sample Blocks OpMode called UtilityCameraFrameCapture.
- The RobotDriveByGyro sample has been updated to use the new universal IMU interface. It now supports both IMU types.
- Removed some error-prone ElapsedTime Blocks from the Blocks editor's toolbox. This is not a breaking change: old Blocks OpModes that use these Blocks will still function, both in the Blocks editor and at runtime.
- Standardizes on the form "OpMode" for the term OpMode.
- The preferred way to refer to OpModes that specifically extend
LinearOpMode
(including Blocks OpModes) is "linear OpMode". - The preferred way to refer to OpModes that specifically extend
OpMode
directly is "iterative OpMode".
- The preferred way to refer to OpModes that specifically extend
- Overhauls
OpMode
andLinearOpMode
Javadoc comments to be easier to read and include more detail. - Makes minor enhancements to Java samples
- Javadoc comments in samples that could be rendered badly in Android Studio have been converted to standard multi-line comments
- Consistency between samples has been improved
- The SensorDigitalTouch sample has been replaced with a new SensorTouch sample that uses the
TouchSensor
interface instead ofDigitalChannel
. - The ConceptCompassCalibration, SensorMRCompass, and SensorMRIRSeeker samples have been deleted, as they are not useful for modern FTC competitions.
Bug Fixes
- Fixes a bug which prevented PlayStation gamepads from being used in bluetooth mode. Bluetooth is NOT legal for competition but may be useful to allow a DS device to be used while charging, or at an outreach event.
- Fixes a bug where a Blocks OpMode's Date Modified value can change to December 31, 1969, if the Control Hub is rebooted while the Blocks OpMode is being edited.
- Fixes the automatic TeleOp preselection feature (was broken in 8.2)
- Fixes a bug where passing an integer number such as 123 to the Telemetry.addData block that takes a number shows up as 123.0 in the telemetry.
- Fixes OnBotJava autocomplete issues:
- Autocomplete would incorrectly provide values for the current class when autocompleting a local variable
hardwareMap
autocomplete would incorrectly include lambda class entries
- Fixes OnBotJava not automatically importing classes.
- Fixes OnBotJava tabs failing to close when their file is deleted.
- Fixes a project view refresh not happening when a file is renamed in OnBotJava.
- Fixes the "Download" context menu item for external libraries in the OnBotJava interface.
- Fixes issue where Driver Station telemetry would intermittently freeze when set to Monospace mode.
- Fixes performance regression for certain REV Hub operations that was introduced in version 8.2.
- Fixes TagID comparison logic in DriveToTag samples.