Phoenix Framework 5.21.3.0 (Aug 19 2022): Phoenix Libraries: Added diagnostics config support for CANcoder vH CANcoder Firmware (22.0.1.2): Additional integrity checking on bootup CANcoder vH Firmware (22.0.1.2): Version of CANcoder firmware to support vH chips. NOTE: Future CANcoder firmeware release notes will only reference "CANcoder Firmware", as both regular and vH versions will be released simultaneously. Phoenix Framework 5.21.2.1 (Apr 19 2022): HERO C# Libraries (5.4.1.0): Added CANdle support HERO C# Libraries (5.4.1.0): Added EEPROM user access support for newer HERO units Talon FX Firmware (22.1.0.0): Fixed an issue where Motion Magic target position may not approach the final target position requested when high S-curve values are used. Talon SRX Firmware (22.1): Fixed an issue where Motion Magic target position may not approach the final target position requested when high S-curve values are used. Victor SPX Firmware (22.1): Fixed an issue where Motion Magic target position may not approach the final target position requested when high S-curve values are used. Phoenix Framework 5.21.2 (Mar 18 2022): Phoenix Libraries: Fixed an issue that could cause early config calls to be re-sent shortly after program start. Phoenix Libraries: Fixed an issue that could cause config calls to not be sent over CANivore if the CANivore disconnects and reconnects. Phoenix Libraries: Improved shutdown time of the diagnostics server. Phoenix Libraries: Fixed an issue that could cause the diagnostics shutdown message to print twice. Phoenix Libraries: Undeprecated (Java) and added (C++) ConfigureSlot() functions to configure slot params directly. Phoenix Libraries: Added Status 21 enum to the status frame enum so it can be used for status period setting. Phoenix Libraries: Fixed CANcoder getSensorInitializationStrategy() to return the correct value. Phoenix Libraries: To support SocketCAN on non-FRC platforms, non-CAN-FD device constructors now allow specifying the CAN bus string with non-roboRIO libraries. Phoenix Libraries: Updated CANdle API to support new firmware features/fixes Phoenix Libraries: Fixed issue where SimCollection did not work for ribbon-cable connected PigeonIMUs Phoenix Tuner (1.8.1.1): Renamed "Robot Controller" tab to "Tuner Setup" Phoenix Tuner (1.8.1.1): Improved display of CANivore-related error messages Phoenix Tuner (1.8.1.1): When running CANivore diagnostics on Windows, Tuner now warns if VS runtime is not present instead of crashing Phoenix Tuner (1.8.1.1): Fixed an issue where Self-Test on non-roboRIO platforms would say the device is on the RIO's CAN bus CANivore Firmware (22.2.0.0): Decreased the watchdog timeout - this should not impact user-facing features CANivore Firmware (22.2.0.0): General improvements in flash integrity checking - this should not impact user-facing features CANdle Firmware (22.1.1.0): Now supports multiple animations simultaneously at different LED offsets CANdle Firmware (22.1.1.0): Setting individual LEDs no longer clears the un-specified LEDs CANdle Firmware (22.1.1.0): Fixed issue where Larson animation did not work properly above 75% speed CANdle Firmware (22.1.1.0): Now supports User enable/disable of the 5V output rail CANdle Firmware (22.1.1.0): Sped up both Fade animations at all levels of speed. CANdle Firmware (22.1.1.0): User can now specify direction for Fire and Rainbow animations Phoenix Framework 5.21.1 (Feb 04 2022): NOTE: It is highly recommended that CANivore users update to this version or newer due to the fixes and improvements it contains. Phoenix Installer (5.21.1.0): Fixed an issue where the necessary vc redistributable for Windows CANivore Diagnostic server was missing Phoenix Installer (5.21.1.0): Fixed an issue where CANcoder simulation libraries were not placed by the installer Phoenix Libraries: Performance improvements for CANivore Phoenix Libraries: Updated PigeonIMU/Pigeon2 classes to be compatible with WPILib Gyro Sendable type Phoenix Libraries: Added RobotBuilder components for CANdle and Pigeon 2.0 Phoenix LabVIEW (2022_v4): Fixed an issue with Open VIs that could cause multiple Phoenix instances to load Phoenix Tuner (1.8.0): Added Mount Orientation page for Pigeon 2.0 CANdle Firmware (22.0.1.0): Fixed an issue where the animation speed did not perform as expected CANdle Firmware (22.0.1.0): Fixed an issue where the Fire animation did not work Pigeon 2.0 Firmware (22.6.1.0): Initial Firmware release CANivore Firmware (22.1.0.1): Initial firmware release Known Issues: CANdle Firmware: Larson Animation at speed 0.75 and higher does not function correctly Phoenix Framework 5.20.2 (Jan 04 2022): Phoenix FRC Json: Fixed update URL to match new "latest" URL Phoenix Libraries: Fixed typo in StatusFrame.h Phoenix Libraries: Fixed Config setting for Pigeon2 Phoenix Framework 5.20.1 (Dec 21 2021): Phoenix Libraries: Added CANdle classes (Java/C++) and VIs (LabVIEW). Also added animation classes that can be rendered on CANdle LEDs. Phoenix Libraries: Added Pigeon2/WPI_Pigeon2 classes (Java/C++) and VIs (LabVIEW). WPI_Pigeon2 classes include simulation support in Java/C++ Phoenix Libraries: Added optional CAN bus string paramter to the following class constructors/Open VIs - TalonFX - CANcoder - Pigeon2 - CANdle Phoenix Tuner (1.7.0): Adds support for CANivore including: - Displaying the CAN bus of a given CAN device - Updating CANivore firmware and configuration (both when RIO-connected and Direct-PC-connected) - Selecting a PC-USB-connected CANivore as a diagnostics target when not running hardware-in-the-loop simulation code Phoenix Device Firmware (22.0.0.0): All devices firmware updated and re-released for 2022. 22.X firmware versions are the minimum supported in Phoenix. Phoenix Framework 5.20.0-beta-2 Installer (Dec 10 2021): Phoenix Libraries: Add WPILib simulation support for TalonFX, CANcoder, and PigeonIMU Phoenix Tuner (1.6.9): Adds updated method for installing Phoenix onto the roboRIO for LabVIEW Phoenix Framework 5.19.4 Installer (Jan 8 2021): Phoenix Libraries: Fixed issue where changing values in WPILib Simulation GUI can be ignored in Java applications. Phoenix Libraries: Fixed issue introduced in Phoenix v5.19.1 that impacts LabVIEW deploys. Known Issues: LabVIEW: Simulation not currently supported. Only TalonSRX and VictorSPX is supported in simulated. Additional products will be similarly added in the future. Phoenix Framework 5.19.3 Installer (Jan 7 2021): Phoenix Libraries: Fixed issue where VictorSPX Percent Output did not properly update in the WPILib Simulation GUI. Phoenix Libraries: Fixed issue where Java unit tests on Windows would return a non-zero error code Phoenix Libraries: Vendor deps json uses https. Phoenix Tuner (1.6.8): Setting host and port to blank string can cause Tuner to not open correctly. Phoenix Framework 5.19.2 Installer (Jan 7 2021): Diagnostics: Various performance improvements when using simulation features. Robot Builder: Maintenance updates for 2021 Phoenix Libraries: LabVIEW version bumped to LabVIEW 2021_v1. However no actual changes occurred since 2020 season. Phoenix Libraries: Add macOS supported for desktop simulation. Phoenix Libraries: Support plotter in Tuner when used in simulation. Phoenix Libraries: Fixed issue where writing configs to a simulated device would erroneously report that the write failed. Phoenix Libraries: Fixed simulation crash in WPI_VictorSPX. This issue only existed in Java. Phoenix Libraries: Simulation Collection APIs return actual CTRE error codes instead of -1. Phoenix Libraries: New RemoteTalon added to RemoteLimitSwitchSource enum. This works for TalonFX or TalonSRX. Phoenix Libraries: Improved simulation support for analog and pulse width positions. Phoenix Libraries: Added function GetCurrentTime() in Orchestra so caller can track progress and delineate between paused and stopped. Phoenix Libraries: Orchestra error FileNotFound is supported now. Phoenix Libraries: Orchestra const correction in C++ LoadMusic(). Phoenix Libraries: Orchestra users can now call Play() immediately after LoadMusic(). Previous releases required a small delay for Play() to succeed and return CTRE_OK. Phoenix Libraries: General updates to the communication between WPI Simulation GUI and Phoenix. Phoenix Libraries: Limit Switch inputs will appear in WPI Simulation GUI under Talon SRX. Phoenix Libraries: Remove Sensors fixed in Simulation. Phoenix Libraries: Previous release had an issue where changes in WPI Simulation GUI would not be reflected in API calls in robot code (Java only). This is fixed now. Phoenix Libraries: TalonSRX simulation stator and supply current are settable. Phoenix Libraries: Minor update to GetFirmwareVersion() for brushed and brushless motor controllers. Phoenix Libraries: TalonSRX has two sim signals for quadrature-position. See function comment for setQuadratureRawPosition() for details. Phoenix Libraries: Previous release had an issue where GetPhoenixVersion() did not return the correct value. This has been fixed in this release. Phoenix Libraries: Previous release did not include all platform binaries (RaspPi, Jetson, etc.). This has been fixed. Phoenix Libraries: Several Getter/Setters that used 'int' now use 'double'. This will allow future updates for unit-scaling support. Phoenix Libraries: Function comment blocks in sensor collection reference readthedocs to get status periods. Phoenix Libraries: configSupplyCurrentLimit is part of IMotorControllerEnhanced interface. Phoenix Libraries: When using WPI_TalonSRX or WPI_VictorSPX classes, robot simulation code does not need to call FeedEnable() to enable Phoenix actuators. This is still required for platforms that are non-FRC (RaspPi, Jetson, etc) or when desktop-simulating while not using any CTRE WPI_* classes. Phoenix Libraries: Removed several deprecated routines (older than a year): - Motor-controller The three-parameter Set - Motor-controller EnableHeadingHold - Motor-controller SelectDemandType - Motor-controller GetActiveTrajectoryArbFeedFwd - Motor-controller GetActiveTrajectoryHeading - PigeonIMU ConfigTemperatureCompensationEnable Phoenix Libraries: Legacy sim routines removed. These routines were never functional or documented. - SimCreate - SimDestroy - SimDestroyAll Phoenix Tuner (1.6.7): Previous release had a regression bug where temporary diag server would not deploy. Phoenix Tuner (1.6.7): Changes to docked windows now save correctly. Phoenix Tuner (1.6.7): Added error suggestions when SSH commands fail. Phoenix Tuner (1.6.7): Fixed crash bug if CRF file path had invalid characters. Phoenix Tuner (1.6.7): Add Expand All and Collapse All buttons in Configs view. Phoenix Tuner (1.6.7): Auto selects Data Transfer Method based on info from the diagnostics server. Phoenix Tuner (1.6.7): Log file is created in the wrong place when run from Phoenix Installer's last page. Phoenix Tuner (1.6.7): Deploying Temporary Diag Server fails if Tuner is run from Phoenix Installer's last page. Talon FX Firmware (21.0.0.0): Fixed issue where Remote LOS Sticky fault may erroneously set when initially enabled. Talon SRX Firmware (21.0): Fixed issue where Remote LOS Sticky fault may erroneously set when initially enabled. Victor SPX Firmware (21.0): Fixed issue where Remote LOS Sticky fault may erroneously set when initially enabled. Phoenix Framework 5.19.1.0 Installer (Dec 18 2020): Simulation: Alpha support (Java/C++) for Talon SRX and Victor SPX. Future release will add sim support for other products. Simulation: Alpha support for Windows/Linux Desktop. (macOS is likely to be supported in a future update). Simulation: Supports followers (for Talon SRX and Victor SPX) Simulation: Supports sensors and limit switches. Simulation: WPI_TalonSRX and WPI_VictorSPX has minimal support of the WPI Simulation GUI. Diagnostics: General Tuner features work with simulated devices (device discovery). Diagnostics: Control tab works with supported simulated devices. Diagnostics: Self-Test tab works with supported simulated devices. Diagnostics: Config tab works with supported simulated devices. Diagnostics: Fixed issue where field-upgrade/configs did not work when running on Linux Desktop Diagnostics: Improvements to shutdown handler. Diagnostics: Self-Test now reports "Motion Profile Arc" instead of "10". Phoenix Libraries: Added SimCollection so that teams can write simulated code in SimulationPeriodic. Phoenix Libraries: Added a C function to get PDP values Phoenix Libraries: Removed Unmanaged private header. Phoenix Libraries: Fixed issue where TalonSRX getPulseWidthRiseToRise was scaled incorrectly Phoenix Libraries: C++ Comment header for PulseWidthEncodedPosition was incorrect. Talon FX Firmware (20.6.5.0): Improved fault recovery after an overvoltage event Talon FX Firmware (20.6.5.0): Firmware adjustments to match latest microcontroller errata. Talon FX Firmware (20.6.5.0): Updated firmware compiler version. Talon FX Firmware (20.6.5.0): Minor improvements to clock switch code. Talon FX Firmware (20.6.5.0): Minor improvements in CAL Button detection. Known Issues: Below are the known issues with this simulation release. Simulation: Remote sensors and remote limit switches not supported. Simulation: In order for Phoenix simulation to enable actuators, Unmanaged::FeedEnable(100) must be regularly called in SimulationPeriodic. Examples will be updated to demonstrate this. Diagnostics: After diagnostics starts up, simulated devices may require several seconds before appearing. Diagnostics: Plotter not functional for simulated devices. Diagnostics: Save in Config tab for simulated devices may occasionally error. Press refresh or re-Save to work around. Phoenix Libraries: Changing values in WPI SIM GUI will not update values in simulation Java devices. LabVIEW: Simulation not currently supported. Phoenix Framework 5.18.4.4 Installer (Oct 30 2020): Updated installer to be compatible with 2021 FRC Beta Phoenix Framework 5.18.4.3 Installer (Aug 20 2020): HERO C# Libraries (5.3.1): Fixed issue where TalonFX GetSupplyCurrent() was always 0. Phoenix Framework 5.18.4 Installer (Aug 12 2020): HERO C# Libraries (5.3.0): - New "CTRE.Phoenix.LowLevel" library. This library needs to be added to any existing projects to work with the updated API. - Adds CANCoder and TalonFX. - Updates Pigeon/CANifier to work with latest firmware. Phoenix LifeBoat (0.9.13.2): - Adds support for CANCoder and Talon FX - Adds ability to Factory Default CAN devices NOTE: With this update, HERO no longer requires special "non-FRC" firmware. Latest 20.X or later firmware must be used in both HERO and Linux use-cases (including FRC). Phoenix Framework 5.18.3.1 Installer (Apr 21 2020): Phoenix Tuner (1.6.5): Fixed issue where diagnostics could not be installed on non-roboRIO linux systems. HERO C#: Fixed Template projects to work with latest Visual Studio 2019. This change only affects project files, libraries are unchanged. Phoenix Framework 5.18.3 Installer (Mar 12 2020): Talon FX Firmware (20.4.1.0): Fixes issue where Talon FX can erroneously report hardware fault if supply voltage drops to 4.6-4.8V and then recovers Talon FX Firmware (20.5.0.0): Fixes issue where Talon FX could occasionally disable-blip Talon FX Firmware (20.5.6.0): - Fixes issue where Talon FX's SupplyOverVoltage fault could trip erroneously - Fixes issue where Reset During Enable sticky fault could never be cleared - Set version to 20.5.6 because FRC2056 politely asked us to Class Libraries (5.18.3): Diagnostics: Added description for voltage faults and future faults Phoenix Tuner (1.6.4): Updated temporary diagnostics server Phoenix Framework 5.18.2 Installer (Feb 19 2020): Talon FX Firmware (20.3.0.2): Fixes issue where Talon FX can be damaged when being backdriven at high speed (>3500 RPM) and has power removed. Class Libraries (Phoenix 5.18.2): API: Added new faults for Talon FX reporting CCI: Talon FX class now requires latest firmware Diagnostics: Updated self-test reporting for latest FX firmware Phoenix Tuner (1.6.3): Updated to require latest FX firmware for control Phoenix Framework 5.18.1 Installer (Jan 31 2020): Class Libraries (Phoenix 5.18.1): CCI: Fixed issue where null arrays could throw exceptions in JNI API: Fixed java infinite recursion issue with configGetSupply/StatorCurrent API: Fixed issue with TalonFX/SRX/VictorSPXControlMode and TalonFX/SRXFeedbackDevice Talon FX Firmware (20.2.3.0): Adds support for music Talon FX Firmware (20.2.3.0): Fixes Sensor coefficient Phoenix Framework 5.18.0 Installer (Jan 24 2020): Class Libraries (Phoenix 5.18.0): Added Orchestra and MusicTone control mode for Talon FX. API: Added enums for VictorSPXControlMode and TalonSRXControlMode Phoenix Tuner (1.6.0): Adds converter for MIDI -> Chirp file Talon FX Firmware (20.2.1.1): Adds support for MusicTone control mode Phoenix Framework 5.17.6 Installer (Jan 16 2020): Class Libraries (Phoenix 5.17.5): WPIAPI: Added basic WPILib Sim Gui support to motor controller classes API: Added Fault that asserts when CANCoder magnet strength is too weak API: Added CANCoder as a remote sensor. Phoenix Tuner (1.5.10): Adds CANCoder to the remote sensor source list Talon FX Firmware (20.1.0.0): Fixes Remote Sensors, adds CANCoder as a remote sensor source Talon FX Firmware (20.1.0.0): Fixed issue where followers were slightly different than master Talon SRX/Victor SPX Firmware (20.1): Added CANCoder as a remote sensor source CANCoder: Added fault code for when the magnet strength is too weak Phoenix Framework 5.17.4 Installer (Jan 10 2020): Class Libraries (Phoenix 5.17.4): Diagnostics: Performance improvments, fixed issue affecting LabVIEW deploy API: Minor bug fixes Phoenix Tuner (1.5.9): Improvments to temporary server deploy Phoenix Framework 5.17.3 Installer (Jan 04 2020): Class Libraries (Phoenix 5.17.3): Bug fixes, added configs for Talon FX/CANCoder Class Libraries (LabVIEW 2020_v2): Adds support for Talon FX/CANCoder Phoenix Tuner (1.5.8): Update to latest diagnostic server Known Issues: -LabVIEW teams must currently have Phoenix Tuner closed in order to deploy LabVIEW projects. Phoenix Framework 5.17.2 Installer (Dec 30 2019): Class Libraries (Phoenix 5.17.2): Adds support for CANCoder and TalonFX classes to C++/Java. Phoenix Tuner (1.5.7): Adds method for deploying Diagnostic Server to the roboRIO in place of a Robot Program. Firmware: Talon SRX / Victor SPX (20.0): Release for 2020 Talon FX (20.0.0.0): Release for 2020. Includes thermal measurement improvements. CANCoder (20.0.0.1): Release for 2020 Pigeon IMU (20.0): Release for 2020 CANifier (20.0): Release for 2020 Phoenix Framework 5.17.1 Installer (Nov 27 2019): Phoenix Diagnostics Server (Phoenix 5.17.1): Diagnostics now run as part of the robot program. Tuner can now be used with FRC 2020 projects. Talon SRX / Victor SPX Firmware (4.26): Updated for enabling with 2020 FRC software. Phoenix Framework 5.17.0 Installer (Nov 1 2019): Initial Build for 2020 FRC Beta testing. Class Libraries (Phoenix 5.17.0): Built for 2020 FRC Phoenix Tuner (1.5.4): Disables "Install" button for 2020 roboRIO images Known Issue: Phoenix Diagnostics is currently not functional on 2020 roboRIO images. In future releases the diagnostics service will run as a thread in the frc robot program. Phoenix Framework 5.16.0 Installer (Dec 05 2019): Phoenix Tuner (1.5.5): Adds support for CANCoder Class Libraries (Phoenix 5.16.0): Adds CANCoder class for C++/Java CANCoder Firmware (19.2.1.10): Initial public release of firmware Phoenix Framework 5.15.0 Installer (Jul 15 2019): Phoenix Tuner (1.5.1): Adds preliminary support for the Raspberry Pi and NVidia Jetson Nano platforms. Phoenix Installer (5.15.0): Adds NETMF support for Visual Studio 2019. Visual Studio 2017 remains supported. NOTE: Class Libraries for all languages remain unchanged and with the previous version number. Phoenix Framework 5.14.1 Installer (Mar 06 2019): Class Libraries (Phoenix 4.14.1): Performance Improvements Talon SRX / Victor SPX Firmware (4.22): improvement for low-resolution sensors Phoenix Tuner (1.4.0): Fixed display for high-resolution monitors Phoenix Framework 5.14.0 Installer (Feb 15 2019): Class Libraries (Phoenix 5.14.0): Added config* routines for new s-curve feature. Talon SRX / Victor SPX Firmware (4.17): - Added support for s-curve feature using motion magic Phoenix-Tuner (1.3.0): Added support for all Talon SRX / Victor SPX control modes. Phoenix-Tuner (1.3.0): Added s-curve configuration parameters. Phoenix-Tuner (1.3.0): Fixed issue where velocity measurements would wrap at high values. Phoenix Framework 5.13.0 Installer (Jan 31 2019): Class Libraries (Phoenix 5.13.0): Changed -aarch64 artifact name to -jetsontx Class Libraries (Phoenix 5.13.0): Changed -armhf artifact name to -raspbian Class Libraries (Phoenix 5.13.0): Fixed issue where Pigeon Pitch and Roll values were incorrect Talon SRX / Victor SPX Firmware (4.15): - Fixed issue where RemoteLOS sticky fault was always asserted on boot - Fixed issue where Status_1 period was not settable - Fixed performance issue when closed-looping that can add noise to dErr and sensor velocity measurement. - Performance optimizations in current-draw measurement. This means current measurements may change from previous firmware as much as 0.1A due to rounding changes. Pigeon IMU Firmware (4.13): - Fixed issue where Motion-Profile-Arcing with a Pigeon-over-ribbon-cable would behave as though Pigeon is not connected (neutral drive). Talon SRX / Victor SPX would report missing remote device in self-test even though Pigeon was present. Phoenix VsCode JSON (5.13.0): Added canutils and platform-stub so running desktop simulation works Phoenix-Tuner (1.2.0): Updated for latest device firmware Phoenix-Tuner (1.2.0): Self-test now reports device ID Phoenix-Tuner (1.1.0): Fixed issue where Self-test incorrectly reported Motion Profile Arc as Motion Magic Arc Phoenix-Tuner (1.1.0): Added more closed-loop signals to Plotter Phoenix-Tuner (1.1.0): Will now remove previous years' library file from roboRIO Phoenix-Tuner (1.1.0): Fixed memory leak Phoenix-Tuner (1.1.0): Updated communication to server Phoenix-Tuner (1.0.3): Now removes old Phoenix LifeBoat files when installing to the roboRIO. Phoenix-Diag-Server (1.1.0): Fixed issue where Position plot data did not honor PosDiv8 Phoenix-Lifeboat (0.9.12.0): Replaced 'FRC roboRIO' tab with instructions and link for Tuner Phoenix Framework 5.12.1 Installer (Jan 10 2019): Class Libraries (Phoenix 5.12.1): Improved javadoc/function comments Class Libraries (Phoenix 5.12.1): Added function to Load Phoenix (not needed when using CAN device classes) Class Libraries (Phoenix 5.12.1): Added Java overload for configureSlot() Class Libraries (Phoenix LabVIEW_v4): Fixed context help for SetInverted.vi Phoenix-Tuner (1.0.2): Added workaround for high-dpi monitors Phoenix-Tuner (1.0.2): Improved DNS resolving Phoenix Framework 5.12.0 Installer (Jan 03 2019): Talon SRX / Victor SPX Firmware (4.11): Final release for FRC Kickoff 2019 Class Libraries (Phoenix LabVIEW 2019_v3): Minor bug fixes and improvements Class Libraries (Phoenix 5.12.0): Error message improvements and javadoc additions Class Libraries (Phoenix 5.12.0): Added API to get targets/ArbFeedFwd for PID1 Phoenix-Tuner (1.0.1): Added checkboxes to enable/disable plotter data channels Phoenix-Tuner (1.0.0): Auto disable control on certain actions (changing ID, etc.) Phoenix-Tuner (1.0.0): Added workaround for high-dpi monitors Phoenix-Tuner (1.0.0): Added clear button for plotter Phoenix Framework 5.11.1 Installer (Dec 22 2018): Talon SRX / Victor SPX Firmware (4.1): Fix for MotionProfileArc Class Libraries (Phoenix LabVIEW 2019_v2): Feature Parity w/C++ & Java Class Libraries (Phoenix 5.11.1): Fixed issue where isMotionProfileFinished and startMotionProfile were missing in Java Added some api docs for new functions Phoenix Tuner (v0.7.3): Fix crash issue, optimization for config gets Phoenix Framework 5.11.0 Installer (Dec 19 2018): Talon SRX, Victor SPX, Pigeon IMU, CANifier Firmware (4.0): All firmware files have been updated. There are no longer separate files for FRC and non-FRC. Updates to support new API features (feed-forward, trajectory interpolator, and Phoenix-Tuner compatibility). Talon SRX/Victor SPX (4.0): Maximum reportable velocity increased. New maximum RPM @ 4096 PPR is 38400 RPM. Phoenix-Tuner (0.7.0): Phoenix-Diagnostics-Client renamed to Phoenix-Tuner. Now able to control Talons in Percent Output for testing. Now includes a signal plotter. All configs now supported Class Libraries (Phoenix 5.11.0): SetInverted also takes an enum for simpler follower. SetInverted(bool) still exists and works exactly the same as last season. Class Libraries (Phoenix 5.11.0): Motion Profile and Motion Profile Arc have an explicit feedforward term (allows for kS, kV, kA, etc..) for both primary and aux PIDs. Class Libraries (Phoenix 5.11.0): Motion Profile (and Arc) use a linear interpolator to adjust the targets every 1ms. Class Libraries (Phoenix 5.11.0): Motion Profile API has a simpler mode where you can simply call Start/IsFinished. Legacy API still exists and is supported. Class Libraries (Phoenix 5.11.0): Pigeon IMU SetYaw fixed to correct units (degrees) Phoenix Framework 5.10.0 Installer (Nov 26 2018): Phoenix Installer (5.10.0): Last page of installer updated for new docs + Phoenix-diagnostics Class Libraries (Phoenix CCI 5.10.0): New autocache feature to prevent excessive CAN calls. Class Libraries (Phoenix API 5.10.0): General Typo fixes Class Libraries (Phoenix WPI-API 5.10.0): Fixed issue where WPI_ Talon/Victor classes did not contain 4-param set() function. Phoenix Framework 5.9.2 Installer (Nov 2 2018): Class Libraries (Phoenix CCI 5.9.2): Fixed issue that prevented Motor Controllers from enabling when using the static library. Phoenix Diagnostics Client (v0.4.4): Style Changes to GUI Added Checkbox to install reminder animation to roboRIO web-interface Fixed issue where window would resize when "Tools" menu item was clicked Fixed issue where server did not automatically restart on roboRIO boot. Updated installer/revert method for installing Diagnostic Server on roboRIO. Phoenix Framework 5.9.1 Installer (Oct 26 2018): Phoenix Diagnostics Client (v0.4.3): Now copies CCI shared object to the roboRIO (required for LabVIEW teams). Class Libraries (Phoenix LabVIEW 2019_v1): Now supported for FRC 2019. No API changes vs 2018_v15. Phoenix Framework 5.9.0 Installer (Oct 20 2018): Phoenix Diagnostics Client (v0.4.2): Now included with installer Phoenix Framework Installer (v5.9.0): Now includes C++/Java libraries for 2019 FRC Phoenix Framework 5.8.1 Installer (Sept 12 2018): Class Libraries (Phoenix CCI 5.8.1): CANifier/Pigeon ConfigFactoryDefault now checks firmware version. Class Libraries (Phoenix Core 5.8.1): Phoenix Core is now a headers-only dependency. Phoenix Framework 5.8.0 Installer (Sept 5 2018): Multi-Platform Release Phoenix has been re-structured to facilitate usage on multiple platforms. The API Remains largely the same, however there are several new components and some old components have been renamed. The following is a list of the major previous components and their equivalent in Phoenix 5.8.0: Phoenix LifeBoat -> (Unchanged) Phoenix NETMF -> (Unchanged) FRC LabVIEW -> (Unchanged) FRC Java -> Phoenix API + Phoenix WPIAPI FRC C++ -> Phoenix API (Note: WPIAPI elements only in the FRC Athena platform variant) FRC CCI -> Phoenix CCI (NEW) -> Phoenix CANUtils (NEW) -> Phoenix Platform (NEW) -> Phoenix Firmware-Sim (NEW) -> Phoenix Core Phoenix API, CCI, CANUtils, Platform, Firmware-Sim, and Core are available for the following platforms: FRC Athena [Note: API, CCI, and Core only] Armhf (Raspberry Pi, Jetson TK1) Windows x86-64 Linux x86-64 (Future Release) Please note that Phoenix-API Java is currently only supported on FRC Athena. Changelog: Class Libraries (Phoenix API 5.8.0): Three parameter set function has been deprecated. Class Libraries (Phoenix API 5.8.0): GetOutputCurrent() is now in TalonSRX instead of BaseMotorController. Class Libraries (Phoenix API 5.8.0): TrajectoryPoint.timeDur now has a default value (0). Class Libraries (Phoenix API 5.8.0): All C++ folder names are now lower-cased. This makes the behavior between case-sensitive and case-insensitive Operating Systems consistent. Class Libraries (Phoenix API 5.8.0): Added functions to factory default PigeonIMU/CANifier and config all settings. Class Libraries (Phoenix CCI 5.8.0): Fixed issue where Pigeon Set Functions used incorrect scaling. Class Libraries (Phoenix CCI 5.8.0): All C++ folder names are now lower-cased. This makes the behavior between case-sensitive and case-insensitive Operating Systems consistent. Class Libraries (Phoenix CCI 5.8.0): Added functions to factory default PigeonIMU/CANifier and config all settings. Phoenix Framework 5.7.1 Installer (July 12 2018): Class Libraries (FRC CCI 2018_v18): Fixed issue that prevented motor controllers from enabling when using C++. Phoenix Framework 5.7.0 Installer (July 12 2018): Class Libraries (FRC CCI 2018_v17): Fixed issue that would sometimes cause motor controllers to not enable when using Java/LabVIEW. Class Libraries (FRC CCI 2018_v17): Added function to factory default TalonSRX/VictorSPX Class Libraries (Phoenix NETMF 5.2.0.0): Added default values for pidIdx, slotIdx, and timeoutMs where appropriate. Class Libraries (Phoenix NETMF 5.2.0.0): Added functions to factory default TalonSRX/VictorSPX and config all settings. Class Libraries (Phoenix NETMF 5.2.0.0): Added support for syncing quadrature and pulse-width sensor positions. Class Libraries (Phoenix NETMF 5.2.0.0): DisplayModule performance improvement. Class Libraries (Phoenix NETMF 5.2.0.0): Fixed issue where clearing and adding DisplayModule sprites could cause program crash. Class Libraries (Phoenix NETMF 5.2.0.0): Fixed issue where GetMotorOutputPercent returned a raw unscaled value. Class Libraries (Phoenix NETMF 5.2.0.0): Fixed issue where CANifier PWM outputs were not enabling. Class Libraries (FRC Java 2018_v19): Added default values for pidIdx, slotIdx, and timeoutMs where appropriate. Class Libraries (FRC Java 2018_v19): Added functions to factory default TalonSRX/VictorSPX and config all settings. Class Libraries (FRC Java 2018_v19): Added support for syncing quadrature and pulse-width sensor positions. Class Libraries (FRC C++ 2018_v15): Added default values for pidIdx, slotIdx, and timeoutMs where appropriate. Class Libraries (FRC C++ 2018_v15): Added functions to factory default TalonSRX/VictorSPX and config all settings. Class Libraries (FRC C++ 2018_v15): Added support for syncing quadrature and pulse-width sensor positions. TalonSRX/VictorSPX Firmware (3.9/11.9): Added support for Auxiliary PID with PercentOutput control mode. TalonSRX/VictorSPX Firmware (3.10/11.10): Added software API to factory default the configuration settings. Phoenix Framework 5.6.0 Installer (June 01 2018): Class Libraries (Phoenix NETMF 5.1.5.0): WiFiESP12F Class now supports disabling the debug print output. Class Libraries (Phoenix NETMF 5.1.5.0): WiFiESP12F receive buffer is no longer statically allocated. Class Libraries (Phoenix NETMF 5.1.5.0): Requesting Button 0 from a gamepad/controller object now always returns false. (Button Indexes start at 1). Class Libraries (Phoenix NETMF 5.1.5.0): Changed several structs to classes for easier use. Class Libraries (Phoenix NETMF 5.1.5.0): Error Messages are now printed as "HERO" messages instead of "CTR" messages. Phoenix Framework 5.5.1 Installer (May 25 2018): Class Libraries (Phoenix NETMF 5.1.4.0): Fixed issue where GetMotionProfileStatus would not properly update. Class Libraries (Phoenix NETMF 5.1.4.0): Added GetButtons(bool[]) to GameController class. Phoenix Framework 5.5.0 Installer (May 23 2018): Class Libraries (Phoenix NETMF 5.1.3.0): Fixed SelectProfileSlot() Class Libraries (Phoenix NETMF 5.1.3.0): Fixed issue where ConfigGetParameter() values were incorrect for gains, vbat, peak output, and selected sensor coefficient. Class Libraries (Phoenix NETMF 5.1.3.0): Fixed issue where ConfigSelectedFeedbackSensor only worked for pidIdx 0. Class Libraries (Phoenix NETMF 5.1.3.0): Fixed SensorCollection Quadrature Getters - at high velocity/position, it was possible to get a value that was 4 or 8 times less than the actual value. Class Libraries (Phoenix NETMF 5.1.3.0): Added GetConnectedIp function for WiFiESP12F class. Class Libraries (FRC Java 2018_v18): Removed CANTalon Shim. Use the TalonSRX class instead. Class Libraries (FRC CCI 2018_v16): Fixed Memory Leak that occurred when an error was logged when getting the firmware version. HERO Firmware (v1.2.0.0): Changed CAN frame timeout detection to report a CAN Timeout if a given requested message has not been received in more than 255 ms. Phoenix Framework 5.4.3 Installer (May 2 2018): Class Libraries (Phoenix NETMF 5.1.1.0): Fixed issue with VCompSaturation. Class Libraries (Phoenix NETMF 5.1.1.0): Fixed Motion Profiling Installer (Phoenix Framework 5.4.3.0): Updated VS Example Templates to match Phoenix NETMF. Phoenix Framework 5.4.2 Installer (Apr 24 2018): Class Libraries (Phoenix NETMF 5.1.0.0): Updated CANifier to match FRC libraries. Phoenix Framework 5.4.1 Installer (Apr 18 2018): Class Libraries (Phoenix NETMF 5.0.0.0): Corrected camelCasing to PascalCasing for BaseMotorController, TalonSRX, and PigeonIMU. Phoenix Framework 5.4.0 Installer (Apr 17 2018): Class Libraries (Phoenix NETMF 5.0.0.0): TalonSRX, PigeonIMU updated to match FRC libraries. Added VictorSPX. TalonSRX/VictorSPX Firmware (11.8): non-FRC version of firmware. 3.X is FRC, 11.X is non-FRC. Versions with the same X value are function-identical with exception of FRC vs non-FRC heartbeat. HERO Firmware (v1.1.0.0): Updated to use new non-FRC heartbeat. Phoenix Framework 5.3.1 Installer (Feb 26 2018): Class Libraries (FRC C++ 2018_v14): Updated IMotorController interface. Class Libraries (FRC Java 2018_v17): Updated IMotorController interface. Class Libraries (FRC LabVIEW 2018_v15): Updated palette Phoenix Framework 5.3.0 Installer (Feb 20 2018): Class Libraries (FRC C++ 2018_v13): getControlMode now part of IMotorController Class Libraries (FRC C++ 2018_v13): Quadrature features now available in CANifier Class Libraries (FRC C++ 2018_v13): Remote Sensor/Auxiliary PID/Motion Arc features now available Class Libraries (FRC Java 2018_v16): getControlMode now part of IMotorController Class Libraries (FRC Java 2018_v16): Quadrature features now available in CANifier Class Libraries (FRC Java 2018_v16): Remote Sensor/Auxiliary PID/Motion Arc features now available Class Libraries (FRC LabVIEW 2018_v14): Quadrature features now available in CANifier Class Libraries (FRC LabVIEW 2018_v14): Remote Sensor/Auxiliary PID/Motion Arc features now available Class Libraries (FRC LabVIEW 2018_v14): VI performance improvement (required thread-safe CCI) Class Libraries (FRC CCI 2018_v15): Fixed issue where Quad Position/Velocty were improperly scaled by 4/8 at high values. Class Libraries (FRC CCI 2018_v15): All CCI calls are now thread-safe for reentrancy TalonSRX/Victor SPX Firmware (3.8): Remote Sensor/Auxiliary PID/Motion Arc features added. CANifier Firmware (0.41): Ability to set Quadrature Position CANifier Firmware (0.42): Fixed Quadrature position/velocity scaling issue libfrccanfirmwareupdate.so (2018_2_21): CANifier self-test now shows pin state Phoenix Framework 5.2.2 Installer (Feb 20 2018): Class Libraries (FRC CCI 2018_v14): Library Loading changed to address Watchdog Error Class Libraries (FRC CCI 2018_v14): Built with Debug Symbols Phoenix Framework 5.2.1 Installer (Jan 11 2018): Class Libraries (FRC C++ 2018_v12/ FRC Java 2018_v15/ FRC LabVIEW 2018_v13/ FRC CCI 2018_v13): Individual Trajectory Point timeDur options changed. 0ms is now an option. 15ms is no longer an option. Talon SRX Firmware (3.3): Changed to accomodate new Trajectory Point timeDur options. Phoenix Framework 5.2.0 Installer (Jan 10 2018): Class Libraries (FRC C++ 2018_v11/ FRC Java 2018_v14/ FRC LabVIEW 2018_v12): Motion Profiling support added. : Added getClosedLoopTarget Class Library (FRC CCI 2018_v12): Added motion profiling support. Class Library (FRC CCI 2018_v12): Fixed issue when setting deadband where value was doubled. Class Library (FRC Java 2018_v14): Fixed issue where getStickyFaults was returning normal Faults. Class Library (FRC LabVIEW 2018_v12): Fixed issue where getGeneralStatus caused code crash. Talon SRX/Victor SPX Firmware (3.2): Motion Profiling now usable. Phoenix Framework 5.1.3 Installer (Jan 04 2018): Class Libraries (FRC C++ 2018_v10/Java 2018_v13): Updated Documentation Class Libraries (FRC C++ 2018_v10/Java 2018_v13): Removed Framework (Drive/Mechanical/Motion) classes from library to prevent confusion. These will be re-added in a mid-season update. Class Library (FRC LabVIEW 2018_v11): Removed Framework (Drive/Mechanical/Motion) VIs from the installation to prevent confusion. These will be re-added in a mid-season update. Class Library (FRC LabVIEW 2018_v11): Fixed CANifier GetPWMInput VI. Class Library (FRC LabVIEW 2018_v11): Current Control Mode set changed from milliAmps to Amps to match C++/Java and examples. Phoenix Framework 5.1.2 Installer (Jan 04 2018): Class Library (FRC Java 2018_v12): Fixed issue where getInverted/setInverted in WPI_TalonSRX/VictorSPX were recursing. Phoenix Framework 5.1.1 Installer (Jan 04 2018) Installer (Phoenix Framework 5.1.1.0): RobotBuilder files are now properly removed when uninstaller is run. Installer (Phoenix Framework 5.1.1.0): Fixed RobotBuilder include for Victor SPX. Class Library (FRC LabVIEW 2018_v10): Device ID inputs are now required for Open VIs. Phoenix Framework 5.1.0 Installer (Jan 04 2018) Installer (Phoenix Framework 5.1.0.0): Now installs a LabVIEW example findable with the LabVIEW example finder. Lifeboat (v0.9.10.0): Updated FRC roboRIO page. Class Library (FRC CCI 2018_v11): New feature specific error messages. Class Library (FRC C++ 2018_v9): Pigeon getFusedHeading now properly returns Fused Heading. Class Library (FRC Java 2018_v11): Pigeon getFusedHeading(FusionStatus) now null checks the FusionStatus object. Class Library (FRC Java 2018_v11): setControl/StatusFramePeriod methods now support int arguments. Class Library (FRC Java 2018_v11): Added CANTalon wrapper for TalonSRX. It is deprecated and should not be used - it is present to help bridge users over to TalonSRX. Class Libraries (FRC C++ 2018_v9/Java 2018_v11): getWPISpeedController() has been removed. Instead, new classes (WPI_TalonSRX and WPI_VictorSPX) have been added. These classes extend their non-"WPI_" counterparts and also implement SpeedController, Sendable, and MotorSafety from WPILib. Phoenix RobotBuilder files have been updated to reflect this. Class Library (FRC LabVIEW 2018_v9): CANifier/Pigeon at parity with C++/Java. Class Library (FRC LabVIEW 2018_v9): Added VI to set the duration of motion trajectory points. Class Library (FRC LabVIEW 2018_v9): Fixed spelling errors. Class Library (FRC LabVIEW 2018_v9): If library call node in Open VIs report file-not-found, user is given an error message to install Phoenix. libfrccanfirmwareupdate.so (2018_1_1): Now supports CANifier, Victor SPX, and new Talon SRX features. Talon SRX/Victor SPX Firmware (2.129): Tachometer signal supported Talon SRX/Victor SPX Firmware (2.130): Motor output percent reported as zero when within deadband. Talon SRX/Victor SPX Firmware (3.1): Firmware build for Kickoff. This is the official minimum version for 2018. Phoenix Framework 5.0.9 Installer (Dec 29 2017) Class Library (FRC C++ 2018_Beta_v8): Adds Sendable/LiveWindow to WPILibSpeedController. Class Library (FRC C++ 2018_Beta_v8): Removed single-parameter set(). This was a placeholder pre-WPILibSpeedController. Class Library (FRC Java 2018_Beta_v10): Adds Sendable/LiveWindow to WPILibSpeedController. Class Library (FRC Java 2018_Beta_v10): Removed single-parameter set(). This was a placeholder pre-WPILibSpeedController. Class Library (FRC Java 2018_Beta_v10): Fixed ConfigSelectedFeedbackSensor. Class Library (FRC LabVIEW 2018_Beta_v8): Fixed Motor Control Set VI. Non-PercentOutput setpoints are no longer improperly coerced to (-1,1). Phoenix Framework 5.0.8 Installer (Dec 27 2017) Installer (Phoenix Framework 5.0.8.0): Updates RobotBuilder files for TalonSRX, VictorSPX, PigeonIMU, and CANifier Class Library (FRC CCI 2018_Beta_v9): Phoenix will now report to DS when firmware is too old. Class Library (FRC CCI 2018_Beta_v9): Low-level support for remote limit switches added. Class Library (FRC CCI 2018_Beta_v9): DS messages now sent appropriately for all languages. Class Library (FRC CCI 2018_Beta_v9): Fixed issue that could cause roboRIO LabVIEW runtime to crash when deploying/running a LabVIEW project. Class Library (FRC CCI 2018_Beta_v9): ctre.h removed Class Library (FRC C++ 2018_Beta_v7): Added setStatus/Control Frame period for CANifier. Class Library (FRC C++ 2018_Beta_v7): Added remote limit switch API. Class Library (FRC C++ 2018_Beta_v7): Adds TalonSRX sensor collection getters (quadrature, pulse-width, etc.) Class Library (FRC Java 2018_Beta_v9): Added setStatus/Control Frame period for CANifier. Class Library (FRC Java 2018_Beta_v9): Added remote limit switch API. Class Library (FRC Java 2018_Beta_v9): Adds TalonSRX sensor collection getters (quadrature, pulse-width, etc.) Class Library (FRC LabVIEW 2018_Beta_v7): Updated to match latest C++/Java Class Library (FRC LabVIEW 2018_Beta_v7): Fixed issue where control frame for motor controller would sometimes not be sent until Set was called. Class Library (FRC LabVIEW 2018_Beta_v7): Added remote limit switch API. Class Library (FRC LabVIEW 2018_Beta_v7): Enable and config for soft limits separated into two VIs. Class Library (FRC LabVIEW 2018_Beta_v7): Error numbers should no longer conflict with standard LabVIEW error numbers. Class Library (FRC LabVIEW 2018_Beta_v7): Adds TalonSRX sensor collection getters (quadrature, pulse-width, etc.) Talon SRX Firmware (2.128): New current limiting features now supported. Talon SRX/Victor SPX Firmware (2.128): New Voltage Compensation feature now supported Talon SRX/Victor SPX Firmware (2.128): Now supports remote limit switches Talon SRX/Victor SPX Firmware (2.128): Soft Limit override now works. Talon SRX/Victor SPX Firmware (2.128): Fixes configPeakOutputForward/Reverse to work in open-loop modes. CANifier Firmware (0.40): Now supports remote limit switches/remote sensors Pigeon IMU Firmware (0.41): Now supports remote sensors Phoenix Framework 5.0.7 Installer (Dec 15 2017) Class Library (FRC CCI 2018_Beta_v8): Fixes thread closing implementation that prevented subsequent LabVIEW code deploys. Phoenix Framework 5.0.6 Installer (Dec 08 2017) Lifeboat (v0.9.9.9): Fixes Rio upgrade process for Beta 4. Installer (Phoenix Framework 5.0.6.0): Fixes issue where LabVIEW menu files overwrote third party palette menus. Class Library (FRC CCI 2018_Beta_v7): Enabled reporting to driver station for Java. Class Library (FRC C++ 2018_Beta_v6): Added Victor SPX. Class Library (FRC C++ 2018_Beta_v6): Added Sequential Scheduler. Class Library (FRC Java 2018_Beta_v8): Added Victor SPX. Class Library (FRC Java 2018_Beta_v8): Enabled error reporting to driver station. Class Library (FRC LabVIEW 2018_Beta_v6): Added Victor SPX. Class Library (FRC LabVIEW 2018_Beta_v6): Fixed config reverse limit short name in palette. Class Library (FRC LabVIEW 2018_Beta_v6): Voltage compensation enable is now separate from config. Class Library (FRC LabVIEW 2018_Beta_v6): Soft limit enable is now separate from config. Class Library (FRC LabVIEW 2018_Beta_v6): Closed-loop data (closed-loop error, derivative, and iaccum) and set iaccum now take optional pidLoopIdx parameter. Class Library (FRC LabVIEW 2018_Beta_v6): Fixed missing input terminal on a few VIs. Class Library (FRC LabVIEW 2018_Beta_v6): Subpalette icons updated. libfrccanfirmwareupdate.so (2017_12_7): Fixed to work with Beta 4. Phoenix Framework 5.0.5 Installer (Nov 30 2017) Lifeboat (v0.9.9.6): wpiutil removed. Lifeboat (v0.9.9.6): User is prompted after updating RIO web plugin and library. Installer (Phoenix Framework 5.0.5.0): LabVIEW files now placed in Install Directory instead of LV directory. Menu files are placed in LV directory. Class Library (FRC CCI 2018_Beta_v6): Changed to use new Talon SRX firmware and CAN framing. Class Library (FRC CCI 2018_Beta_v6): CCI changed to use generic MotController C functions instead of TalonSRX. Class Library (FRC C++ 2018_Beta_v5): Added BaseMotorController, which uses new CCI functions. Class Library (FRC Java 2018_Beta_v6): Added BaseMotorController, which uses new CCI functions. Class Library (FRC Java 2018_Beta_v7: User facing java functions are lowerCamelCase. Class Library (FRC LabVIEW 2018_Beta_v5): TalonSRX VIs have been redone. They now use the new CCI and beta Talon firmware. Class Library (HERO SDK CTRE.dll 4.4.0.29): Fixes to EEPROM class. Class Library (HERO SDK CTRE.dll 4.4.0.29): NeutralMode Enum for motor controllers fixed. libfrccanfirmwareupdate.so (2017_11_19): Robustness improvement when there are many common-ID devices. libfrccanfirmwareupdate.so (2017_11_19): Blink LED is used to clear sticky faults. Self-test documents this. libfrccanfirmwareupdate.so (2017_11_19): Added Victor SPX support. This release contains several new features/concepts. The following are the most prominent. Invert/Reverse strategy has been improved considerably. There are only two functions: SetInvert(bool) and SetSensorPhase(bool). If using closedloop/soft-limit features in a CTRE motor controller, select SetSensorPhase(bool) to ensure positive output yields positive sensor postion. User can set SetInvert() to whatever they want. This invert selection goes to the firmware and affects all control modes. When SetInvert(true) is set, the motor controller LEDs will change orientation. For example, green will represent positive voltage on the M- wire when SetInvert(true). This is done to guarantee the following... - Green LEDs on Talon/Victor means forward-limit-switch is in effect regardless of Invert selection. - Green LEDs on Talon/Victor means forward-soft-limit is in effect regardless of Invert selection. - Green LEDs on Talon/Victor means selected output is positive (closed-loop output positive or robot controller set positive motor percent output). User can change SetInvert() without having to modify the SetSensorPhase() selection. Once sensor is in phase, you can SetInvert() true or false. Voltage Control Mode is removed. This is being replaced with a EnableVoltageCompensation setting that can be enabled/disabled with any control Mode. Various CAN frames have been changed and impact the frame divisions in SetStatusFramePeriod. WPI Speed Controller compliant objects can be retrieved via GetWPI_SpeedController(). PigeonImu => PigeonIMU SetStatusFrameRate => SetStatusFramePeriod() New Follow API/VI so that Victor SPX can follow Talon SRX and vice versa. The Set() API can still be used to pick the master if the master is the same model as follower. Set() is two parameters now. Caller specifies the control-mode and the set-point/output. This is far better and produces cleaner robot logic. Deadband can be changed. Various CAN frame changes for reduced CPU and CAN use. Various changes to CAN frames for pending future features (IMU/Differential sensor/casdcaded close loops/etc). Two pecent ramps, one for open-loop and one for closed-loop. This way robot application does not need to switch ramp when changing control mode. Known Limitations: Robot API: Victor SPX class is not available yet. This will be added to next release. Robot API: Motion Profile not available as it is being reworked to include remote sensor concept and robot heading. Robot API: Fault API was not fully tested for this release. Robot API: GetLastError() and DS Error reporting does not work under all contexts. Fixes for this will be merged into next release. Robot API: Remote Limit Switches not supported yet (Source:CANifer/Talon SRX). Robot API: Remote Sensor selection not supported yet. (Source:CANifer/Talon SRX). Robot API: SRX Current limit API not functional yet. This is being reworked to include peak and continuous thresholds. Robot API: Talon/CANifier Tachometer not functional below 4000RPM. This will be improved in future Talon/CANifier release. This also means improved pulse width decode. Robot API: TimePercent control mode does nothing currently. Web-based config: CANifier Self-test is not supported yet. Web-based config: CANifier blink LED will report an error, but device will blink correctly. ConfigPeakOutputForward/Reverse only impacts closed-loopds. Phoenix Framework 5.0.4.4 Installer (Oct 27 2017) Lifeboat (v0.9.9.5): wpiutil now copied over as part of roboRIO Upgrade process. Library will not link in LabVIEW without this. Phoenix Framework 5.0.4.3 Installer (Oct 27 2017) Lifeboat (v0.9.9.4): roboRIO upgrade process now places libfrccanfirmwareupdate.so that has been built for specific rio image (2017 v 2018) libfrccanfirmwareupdate.so (2017_27_10): Rebuilt for 2018 image. Phoenix Framework 5.0.4.2 Installer (Oct 20 2017) Installer (Phoenix Framework 5.0.4.2): Places LabVIEW VIs in correct folder. Installer (Phoenix Framework 5.0.4.2): Now prevents installation of ANY Hero C# components if VS 2017 is not installed. Lifeboat (v0.9.9.3): Fixes issue that would cause LifeBoat to crash on start. Phoenix Framework 5.0.4.1 Installer (Oct 15 2017) Installer (Phoenix Framework 5.0.4.1): Fixes an issue where C++ header files were missing. Phoenix Framework 5.0.4.0 Installer (Oct 13 2017) Installer (Phoenix Framework 5.0.4.0): Releases appended with -FOR_BETA_ONLY have *.so and *.a files compiled using the 2018 FRC gcc toolchain. All other releases are built using the 2017 toolchain. Class Library (FRC CCI 2018_Alpha_v4): Binary name changed to libCTRE_PhoenixCCI Class Library (FRC C++ 2018_Alpha_v4): CANifier class added. Class Library (FRC C++ 2018_Alpha_v4): Tasking/Scheduler Classes and Utilities added. Class Library (FRC C++ 2018_Alpha_v4) AND Class Library (FRC Java 2018_Alpha_v5): - Namespaces have been restructured. All classes are now in com.ctre.phoenix(Java) or CTRE::Phoenix::(C++) namespace - CANTalon renamed to TalonSRX in the MotorControl.CAN namespace. - PigeonImu moved to Sensors namespace. - Output binaries and jars have been renamed to CTRE_Phoenix* Class Library (FRC LabVIEW 2018_Alpha_v4): CANifier VIs added Class Library (FRC LabVIEW 2018_Alpha_v4): GetStatus VIs no longer missing Class Library (HERO SDK CTRE.dll 4.4.0.28): Namespace restructure similar to Java/C++. Binaries are still named CTRE.dll Lifeboat (v0.9.9.2): Now copies libCTRE_PhoenixCCI.so to roboRIO instead of old shared object. KNOWN ISSUES: - The Phoenix Logger (and Error Reporting for FRC C++/Java) is temporarily disabled. - LiveWindow capability for FRC C++/Java is temporarily unavailable. Phoenix Toolsuite 5.0.3.3 Installer (Sept 27 2017) Class Library (FRC LabVIEW 2018_Alpha_v3): New attempt at repacking VIs, some VIs didn't package in previous build. Phoenix Toolsuite 5.0.3.2 Installer (Sept 23 2017) Class Library (HERO SDK CTRE.dll 4.4.0.27): CANifier class added. Class Library (HERO SDK CTRE.dll 4.4.0.27): Copyright date changed to 2017. libfrccanfirmwareupdate.so (2017_22_9): Added CANifier to RIO web-based config. Lifeboat (v0.9.9.1): Added CANifier to HERO LifeBoat. Lifeboat (v0.9.9.1): HERO LifeBoat has left pane folder shortcut in CRF browser for firmware files. Class Library (FRC CCI 2018_Alpha_v4): Get Motion Profile Active Trajectory Position and Velocity do not support negative values. Class Library (FRC Java 2018_Alpha_v4): CANifier classes added. CTRE Toolsuite 5.0.2.1 Installer (Sept 15 2017) Class Library (HERO SDK CTRE.dll 4.4.0.26): Fixed issue where library was built using wrong native dll and couldn't be deployed. CTRE Toolsuite 5.0.2.0 Installer (Sept 15 2017) Installer (CTRE Toolsuite 5.0.2.0): Fixed spelling issue. Installer (CTRE Toolsuite 5.0.2.0): FRC CCI version now included in version notes. Class Library (HERO SDK CTRE.dll 4.4.0.25): Display Module class now correctly uses given port instead of always using Port 8. Class Library (FRC LabVIEW 2018_Alpha_v2): Added Servo Class VIs (including servo execution blocking VI) Class Library (FRC LabVIEW 2018_Alpha_v2): Fixed issue where a few Pigeon VIs were not updated to use CCI. Class Library (FRC LabVIEW 2018_Alpha_v2): Uses CCI Logger to capture generated errors. Class Library (FRC C++ 2018_Alpha_v3): Uses CCI Logger to capture generated errors. Class Library (FRC Java 2018_Alpha_v3): Implemented Tasking features Class Library (FRC Java 2018_Alpha_v3): Sensored Gearbox GetPosition() now returns in units of Rotations. Class Library (FRC Java 2018_Alpha_v3): Removed Unit scaling from SmartMotorController (unit scaling is now done in gearboxes/drivetrain instead of in motor controllers) Class Library (FRC Java 2018_Alpha_v3): Updated Servo Params Class Library (FRC Java 2018_Alpha_v3): Uses CCI Logger to capture generated errors. Class Library (FRC CCI 2018_Alpha_v3): Added Logger to log CTRE data to file and FRC DS. Class Library (FRC CCI 2018_Alpha_v3): CCI now checks handle pointers to make sure object exists. HERO Firmware (v1.0.1.0): Fixed issue where ~60ms of delay occured in HERO when USB port not occupied. (Issue #63) HERO Examples: Fixed issue where CTRE.dll reference path was incorrect HERO Examples: Updated comments to correct minimum SDK version number KNOWN ISSUE: CTRE dll was built using wrong native dll and can't be deployed. CTRE Toolsuite 5.0.1.0 Installer (Aug 11 2017) Installer (CTRE Toolsuite 5.0.1.0): Now removes any previous LabVIEW VIs before installing new ones. Class Library (HERO SDK CTRE.dll 4.4.0.24): Addition of Phoenix Framework. Class Library (HERO SDK CTRE.dll 4.4.0.24): Update to ESP12F Wifi class. Class Library (HERO SDK CTRE.dll 4.4.0.24): Examples are now properly installed for VS2017. Class Library (HERO SDK CTRE.dll 4.4.0.24): Examples have been updated to reflect Phoenix. Class Library (FRC C++ 2018_Alpha_v2): Addition of Motion and Servo classes for Phoenix Framework. Class Library (FRC C++ 2018_Alpha_v2): CANTalon is now in MotorControllers package. Class Library (FRC Java 2018_Alpha_v2): Addition of Motion and Servo classes for Pheoenix Framework. Class Library (FRC Java 2018_Alpha_v2): CANTalon is now in MotorControllers package. CTRE Toolsuite 5.0.0.2 Installer (Aug 01 2017) Installer (CTRE Toolsuite 5.0.0.2): Fixes Issue with VS2017 path detection Installer (CTRE Toolsuite 5.0.0.2): Fixes issues where PigeonImu.h was not installed CTRE Toolsuite 5.0.0.1 Installer Installer (CTRE Toolsuite 5.0.0.1): Fixes issue where unneccesary header files are included. Installer (CTRE Toolsuite 5.0.0.1): Fixes issue where installation failed for VS 2017 Installer (CTRE Toolsuite 5.0.0.1): Fixes issue where examples couldn't be installed for VS 2017 Class Library (FRC C++ 2018_Alpha_v1): CanTalon and PigeonImu now utilize new CCI interface to low-level. Class Library (FRC Java 2018_Alpha_v1): CanTalon and PigeonImu now utilize new CCI interface to low-level. Class Library (FRC CCI 2018_Alpha_v2): Fixes Issues #1, 2, 3, 4, 6, 7, 8. CTRE Toolsuite 5.0.0.0 Installer Installer (CTRE Toolsuite 5.0.0.0): Updated for use with Visual Studio 2017 Class Library (FRC LabVIEW 2018_Alpha_v1): Changed VIs to use CCI rather than own implementation Class Library (FRC CCI 2018_Alpha_v1): C-style API for utilizing talon and pigeon Class Library (HERO Native 1.10.0.0): Added IOControl HERO Firmware (v1.0.0.0): Added IOControl Lifeboat (v0.9.8.0): RoboRIO update now moves CCI Shared Object to roboRIO NOTE: Lifeboat version same as previous version CTRE Toolsuite 4.4.1.14 Installer Installer (CTRE Toolsuite 4.4.1.14): Fixed issue where files in wpilib/user weren't being removed on uninstall. (installer issue #1) Class Library (FRC C++ 2017_v7): Moved all header files to 'ctrlib' directory. When using CANTalon or PigeonImu, you must now put 'ctrlib/' as a prefix to the header file in the include statement. CTRE Toolsuite 4.4.1.13 Installer Class Library (FRC Java 2017_v6): Added API to access Talon SRX Data Port Output functionality. Class Library (FRC C++ 2017_v6): Added API to access Talon SRX Data Port Output functionality. Class Library (HERO SDK CTRE.dll 4.4.0.23): Added API to access Talon SRX Data Port Output functionality. NOTE: The Talon SRX Firmware supporting the above features is not packaged with this installer. It can be found in the CTRE Github repository with example projects for the data port output feature. CTRE Toolsuite 4.4.1.12 Installer CTRE Toolsuite 4.4.1.12 Installer Talon SRX Firmware (2.34): Minor modification to start up frame. This will allow for future features (such as ESD detection). This will not impact any current use case of the Talon SRX. Talon SRX Firmware (2.33): Fixed issue where motion magic halts abruptly due to velocity-to-acceleration ratio exceeding threshold. Talon SRX Firmware (2.33): Changed Talon SRX current measurement to round instead of truncate. Talon SRX Firmware (2.31): Signal added to Status 8 for CAN driver status. Talon SRX Firmware (2.31): Robustness improvement in CAN buffering. This was not necessary to resolve any issues, this was merely an improvement. Talon SRX Firmware (2.31): Various optimizations in the current-draw measurement. This was not necessary to resolve any issues, this was merely an improvement. Talon SRX Firmware (2.31): Solved a possible divide-by-zero condition in the current-draw measurement. This did not solve any known or reproducible issues. Talon SRX Firmware (2.30/10.30): Timing improvements added to correct the regression issues of the previous installer's Talon firmware (X.23). Talon SRX Firmware (2.30/10.30): The velocity measurement window will automatically truncate to the nearest supported value (1, 2, 4, 8, 16, 32, 64). For example, if the robot controller attempts to set a window value of '50', the signal value will be truncated to '32'. Function Limitation: As a result of the performance improvements in the current-draw measurement, the current measurement for a given load may be dissimilar to the measurement when using previous firmware. The difference should not exceed 0.125A, and only occurs near current-draws that are close to a multiple of 0.125A boundary. Class Library (FRC Java 2017_v5): Updated comment headers. Class Library (FRC C++ 2017_v5): Fixed bug where JNI library was not saving the last error code. Class Library (FRC C++ 2017_v5): Updated comment headers. Class Library (FRC LabVIEW 2017_v6): Updated Talon Context Help & VI Palette short names. CTRE Toolsuite 4.4.1.11 Installer Talon SRX Firmware (2.23/10.23): Fixed issue that caused velocity measurement to wrap around at 32767 Native Units/100 ms. libfrccanfirmwareupdate.so: Fixed Text of Mode 7 to say Motion Magic libfrccanfirmwareupdate.so: Added Signals to Self-Test: Zero Position on Index, Forward Limit, and Reverse Limit. Class Library (FRC Java 2017_v4): Added Java/C++ API to get Motion Magic Active Trajectory Velocity/Position. Class Library (FRC C++ 2017_v4): Added Java/C++ API to get Motion Magic Active Trajectory Velocity/Position. Class Library (FRC LabVIEW 2017_v5): Added Java/C++ API to get Motion Magic Active Trajectory Velocity/Position. Class Library (FRC LabVIEW 2017_v5): Fixed issue where Motion Magic setpoint could not be negative and negative values were instead capped at 0. Function Limitation: (X.23): Talon firmware has a known regression issue where the velocity measurement may have a false oscillation that was not visible in earlier firmware. This issue can be resolved by using older firmware (2.20 for example) or latest firmware (which has the issue resolved). CTRE Toolsuite 4.4.1.10 Installer Talon SRX Firmware (2.22/10.22): Closed-Loop Nominal Battery Voltage setting added. When set to nonzero, this represents what motor output 100% is scaled to when using closed-loop modes. Otherwise closed-loop output will continue to scale to percent duty cycle. Talon SRX Firmware (2.22/10.22): Velocity Sampling now has two settings that can be tweaked: Sample Period and Rolling Average Window. libfrccanfirmwareupdate.so: Added Closed-Loop Nominal Battery Voltage and Velocity Sampling settings. libfrccanfirmwareupdate.so: Fixed issue where nominal/peak closed-loopoutput and voltage-compensation-mode ramp rate would default after changing any setting. LifeBoat (0.9.8.0): Added Closed-Loop Nominal Battery Voltage and Velocity Sampling settings. LifeBoat (0.9.8.0): Combined DeviceID and Firmware into one tab. Class Library (HERO SDK CTRE.dll 4.4.0.18): Fixed GetSensorVelocity() so that speeds above (4800 X 4096 / SensorResolutionPerRotation) are decoded correctly. Class Library (HERO SDK CTRE.dll 4.4.0.18): Added getter/setters for velocity sampling settings and closed-loop nominal voltage. Class Library (FRC Java 2017_v3): Added getter/setters for velocity sampling settings and closed-loop nominal voltage. Class Library (FRC Java 2017_v3): Updated Usage Report for Pigeon IMU Class Library (FRC C++ 2017_v3): Added getter/setters for velocity sampling settings and closed-loop nominal voltage. Class Library (FRC C++ 2017_v3): Updated Usage Report for Pigeon IMU Class Library (FRC LabVIEW 2017_v2): Added getter/setters for velocity sampling settings and closed-loop nominal voltage. Class Library (FRC LabVIEW 2017_v2): Updated Usage Report for Pigeon IMU and Talon SRX Class Library (FRC LabVIEW 2017_v2): Added VI for Zeroing Sensor on Forward/Reverse Limits to Talon SRX palette. Function Limitation: (X.22): Talon firmware has a known regression issue where the velocity measurement overflows at (19660200/sensor-units-per-rotation) (RPM). This issue can be resolved by using older firmware (2.20 for example) or latest firmware (which has the issue resolved). CTRE Toolsuite 4.4.1.9-nonadmin Installer Installer (CTRE Toolsuite 4.4.1.9-nonadmin): Fixed issue that caused Java/C++ Libraries to be placed in the admin account when installer is given access on a non-admin account. Installer (CTRE Toolsuite 4.4.1.9-nonadmin): Added Notice that users must re-start Eclipse if Java/C++ libraries have been installed. Installer (CTRE Toolsuite 4.4.1.9-nonadmin): Added option to view release notes after installer finishes. CTRE Toolsuite 4.4.1.9 Installer Java and C++ Libraries are now built using the WPILib vendor template. Class Library (FRC C++ 2017_v2): Library file naming is now CTRLib instead of TalonSRXLib Class Library (FRC C++ 2017_v2): Now includes C++ Docs Class Library (FRC C++ 2017_v2): Usage reporting is more comprehensive Class Library (FRC Java 2017_v2): Library file naming is now CTRLib instead of TalonSRXLib Class Library (FRC Java 2017_v2): Now includes Javadocs Class Library (FRC Java 2017_v2): Usage reporting is more comprehensive Class Library (FRC Java 2017_v2): Automatic Error reporting has been fixed. CTRE Toolsuite 4.4.1.8 Installer Class Library (FRC C++ 2017_v1): Minor changes to JNI wrappers to facilitate back-end error tracking Class Library (FRC Java 2017_v1): Error reporting now works. It is not automatic; GetLastError must be called. Use with WPILib's DriverStation.SendError to send messages to the driver station. Class Library (FRC LabVIEW 2017_v1): Context help added to some Pigeon VIs. More detailed versions to come in future releases. Class Library (FRC LabVIEW 2017_v1): Fixed Pigeon IMU VI's to not have conflicts when added to projects. Robot Builder: Fixed help file link for Talon SRX CTRE Toolsuite 4.4.1.7 Installer Class Library (FRC C++ 2017_beta_v6): PigeonImu new function: GetAccumGyro Class Library (FRC C++ 2017_beta_v6): TalonSRX: new settings: ZeroSensorOnIdx, ZeroSensorOnForwardLimit, ZeroSensorOnReverseLimit Class Library (FRC Java 2017_beta_v5): PigeonImu new function: GetAccumGyro Class Library (FRC Java 2017_beta_v5): TalonSRX: new settings: ZeroSensorOnIdx, ZeroSensorOnForwardLimit, ZeroSensorOnReverseLimit Class Library (FRC LabVIEW 2017_beta_v7): PigeonIMU AccumGyro values available from GetStatus Class Library (HERO SDK CTRE.dll 4.4.0.17): PigeonImu new function: GetAccumGyro Class Library (HERO SDK CTRE.dll 4.4.0.17): New DisplayModule Class CTRE Toolsuite 4.4.1.6 Installer HERO Firmware (hero_netmf_beta-0.11.2.0.crf): Increased NETMF HEAP from 102400 to 150000. HERO Firmware (hero_netmf_beta-0.11.2.0.crf): Added native pixel rastering. Pigeon Firmware (Pigeon-Application-0-18.crf): Added accumulated Gyro angles for X,Y,Z. Pigeon Firmware (Pigeon-Application-0-19.crf): Added a way to disable TempComp to measure its impact. Also added a way to change statusframerates. libfrccanfirmwareupdate: Added Accum Gyro angles to self-test. (CTRE Build 11/23/2016) HERO LifeBoat: New image added for Pigeon - no changes to LifeBoat version. Class Library (FRC Java 2017_beta_v4): Pigeon IMU can now override status frame rate. Class Library (FRC Java 2017_beta_v4): Pigeon IMU AccumZ angle is now settable. Class Library (FRC Java 2017_beta_v4): Pigeon IMU Temperature Compensation can now be turned off. Class Library (FRC C++ 2017_beta_v5): See Pigeon IMU Java Updates. Class Library (FRC C++ 2017_beta_v5): CANTalon 'float' types changed to 'double' to match WPI CANSpeedController interface. Class Library (FRC LabVIEW 2017_beta_v6): Fixed issue causing dependency conflicts in LabVIEW projects. Class Library (FRC LabVIEW 2017_beta_v6): Added Motion Magic. Class Library (FRC LabVIEW 2017_beta_v6): Added Current Limiting. Class Library (HERO SDK CTRE.dll 4.4.0.16): PigeonImu API to match latest FRC Java/C++. Talon SRX Firmware (TalonSRX-Application-2.19): Added feature to clear sensor position on selected limit switch input. Talon SRX Firmware (TalonSRX-Application-2.19): Added first draft of robot-pose logic. Talon SRX Firmware (TalonSRX-Application-2.19): Added missing IO support for Pigeon. Talon SRX Firmware (TalonSRX-Application-2.20): Improved bootloader entry for Pigeon. CTRE Toolsuite 4.4.1.5 Installer HERO USB Drivers: Drivers are now signed for 2017 Class Library (HERO SDK CTRE.dll 4.4.0.15): Added Class for ESP12F WiFi Module Class Library (CTRE FRC Java 2017_beta_v3): Added Current Limit and Motion Magic APIs Class Library (CTRE FRC C++ 2017_beta_v4): Added Current Limit and Motion Magic APIs CTRE Toolsuite 4.4.1.4 Installer Installer (CTRE Toolsuite 4.4.1.4): Added Robotbuilder CAN Talon object to installer. Class Library (FRC C++ 2017_beta_v3): Fixed issue where some Pigeon functions were not included in v2. Class Library (HERO SDK CTRE.dll 4.4.0.14): Fixed LowLevel PCM bug that prevented using slots 1-7. CTRE Toolsuite 4.4.1.3 Installer Class Library (FRC Java 2017_beta_v2): Added PigeonIMU Library Class Library (FRC C++ 2017_beta_v2): Added PigeonIMU Library Class Library (FRC LabVIEW 2017_beta_v2): Fixed PigeonIMU Set VIs for Fused Heading and Yaw. Class Library (FRC LabVIEW 2017_beta_v2): Fixed Issue where Set Output for TalonSRX was double-inverting the output. LifeBoat (0.9.7.0) DLL(0.9.4.0): All binaries are now explicitly set to 32-bit. LifeBoat (0.9.7.0) DLL(0.9.4.0): New roboRIO web interface plugin to allow firmware flashing of PigeonIMU over TalonSRX uart connecton. LifeBoat (0.9.7.0) DLL(0.9.4.0): Fixed Regression Bug where HERO wasn't discovered. Talon SRX Firmware (TalonSRX-Application-2.18): -only transmit status_11 if serial traffic is detected. -FRC build so tok is enabled. -Changes since last FRC build 2.0 * CAN Driver uses buffer0 instead of buffer3 for tx, this is a possible bug fix if dspic errata follows dspic33F * various changes to arbID filters for iso15 and normal-mode framing * BLDC vs BDC abstraction added * Current limiting * Throttle ramp is applied every 1ms instead of 10ms. * Gadgeteer Client stack and Pigeon * LED1 is disabled when vbat is > 20V to improve VbatMax. * Back breaking changes to wear leveled rows for more params. * Motion magic. * CustomParams 0 and 1 * slight speed improvement (~3%) to flash write routines. * Minor improvement to PWM vs CAN deducing logic. * Talon SRX Uart uses 4X mode to achive higher bitrates. * Slight optimization in Vbat averaging. * Slight optimization in Vbat, Current, Analog ADC measurement. * Pin 6 (SPI CS) internal pullup enabled on app boot. * RAM savings optimization in current calibration math. * New status frame Status_10 for motion magic. * New status frame Status_11 for Gadgeteer Uart. Known Limitations -LifeBoat animation of Pigeon Cube is updated slowely. -LifeBoat animation of Pigeon Cube does not function if Pigeon is on CANbus and has a nonzero device ID. -Pigeon UART connection to Talon momentarily disconnects and reconnects after several minutes of use when using gadgeteer cable. -Pigeon does not zero Fused Heading on boot. -Java error reporting has been temporarily disabled to prevent linking issues with the WPI Library. CTRE Toolsuite 4.4.1.2 Installer Installer (CTRE Toolsuite v4.4.1.2.exe): Changed LabVIEW section checkbox to be non-selectable if LabVIEW 16.0 is not installed. VERSION_NOTES: New File that contains listing of library versions. Class Library (CTRE.dll 4.4.0.13): Added PigeonIMU.cs Class Library (FRC LabVIEW 2017_beta_v1): Added PigeonIMU Library. Class Library (FRC LabVIEW 2017_beta_v1): Fixed Unwired Terminal in WPI_CANTalonSRX_SendMotionProfile.vi. Class Library (FRC Java 2017_beta_v1): Compiled against 2017 WPI release to work with 2017 roboRIO images. Class Library (FRC C++ 2017_beta_v1): Compiled against 2017 WPI release to work with 2017 roboRIO images. HERO Firmware (hero_netmf_beta-0.10.1.0.crf): New Native Stub for setting the CAN bitrate. HERO Firmware (hero_netmf_beta-0.11.1.0.crf): Various changes to accomodate UART Gadgeteer Devices like Pigeon-IMU (when connected to Talon SRX). LifeBoat (0.9.6.0) DLL(0.9.4.0): Modified RIO detection to work on multiple PCs. LifeBoat (0.9.5.0) DLL(0.9.4.0): Added roboRIO Web based configuration updater. This can be used to update a roboRIO with latest CTRE device support (such as Pigeon). LifeBoat (0.9.4.0) DLL(0.9.4.0): Duration is logged when reflashing a CAN Device. LifeBoat (0.9.4.0) DLL(0.9.4.0): Added support for Pigeon-IMU over CAN Bus. Reflash takes approximately 10 seconds. LifeBoat (0.9.4.0) DLL(0.9.4.0): Added reflash for Pigeon-IMU ribbon-cabled to Talon SRX on CANBus. Reflash takes approximately 40 seconds. LifeBoat (0.9.4.0) DLL(0.9.4.0): Target framework elevated fromv 4.0 (Client) to v4.5.2 Talon SRX Firmware (TalonSrx-Application-10.16-PigeonRebuild.crf): Various code cleanup and optimizations done in preperation for UART-Gadgeteer-Client stack. Talon SRX Firmware (TalonSrx-Application-10.16-PigeonRebuild.crf): UART-Gadgeteer-Client stack added to support UART peripherals such as Pigeon. Talon SRX Firmware (TalonSrx-Application-10.16-PigeonRebuild.crf): New firmware support for Pigeon. Ribbon-cabled Pigeons will require this or Pigeon will not function over gadgeteer port. Talon SRX Firmware (TalonSrx-Application-10.17-RemovedDebugIoAddedRetry.crf): Robustness improvements to gadgeteer uart client stack. Pigeon Firmware (Pigeon-Application-0-7.crf): Initial release for Pigeon-IMU. Pigeon Firmware (Pigeon-Application-0-8.crf): Fixed bug where math error would reset Pigeon. Pigeon Firmware (Pigeon-Application-0-9.crf): Various improvements to several calibration routines. Pigeon Firmware (Pigeon-Application-0-9.crf): Fixed the CAN signals for quaternion frame. libfrccanfirmwareupdate: Plugin updated with Pigeon support, Self-Test now says CTRE Build to delineate between CTRE and NI built binaries. libfrccanfirmwareupdate: Rebuilt with latest FRC_NetworkComm to fix crash in 2017 image. Known Limitations -LifeBoat animation of Pigeon Cube is updated slowely. -LifeBoat animation of Pigeon Cube does not function if Pigeon is on CANbus and has a nonzero device ID. -Pigeon UART connection to Talon momentarily disconnects and reconnects after several minutes of use when using gadgeteer cable. -Pigeon does not zero Fused Heading on boot. -roboRIO web-based config only supports CAN Pigeon. Ribbon-cabled-to-Talon Pigeons are next. -LabVIEW Pigeon Set VIs are currently not functional. This will be fixed in a future update. -Java error reporting has been temporarily disabled to prevent linking issues with the WPI Library. -LifeBoat limitation: Only one instance of LifeBoat may be open at once. If more than one is opened, all instances will be non-functional. CTRE Toolsuite 4.4.1.1 Installer Class Library (Cpp, Java, LabVIEW for FRC): Added libraries for the FRC programming languages. These require the use of a roboRIO and FRC software packages. HERO Beta SDK 4.4.1.0 Installer Installer (CTRE Toolsuite v4.4.1.0.exe): New Installer Technology. Requires uninstallation of previous installers before installation. New "HERO Talon Custom Persistent Settings" added to Visual Studio. Class Library (CTRE.dll 4.4.0.11): SetVoltageRampRate() will set ramp to minimal possible value if nonzero param is unreasonably small (instead of truncating to 0/no-ramp). Class Library (CTRE.dll 4.4.0.11): Current Limiting API added to Talon SRX. HERO Beta SDK 4.4.0.25 Installer Class Library (CTRE.dll 4.4.0.10): Added PWMSpeedController.cs. This class is used to drive PWM Motor Controllers. Class Library (CTRE.dll 4.4.0.10): Updated HERO.IO.cs so that Port 3 includes all 5 available PWM outputs. Class Library (CTRE.dll 4.4.0.10): Fixed bug in Watchdog class where IsEnabled returned the wrong value. Class Library (CTRE.dll 4.4.0.10): Changed SafeOutputPort to only attempt re-enabling output when Watchdog status is enabled. Class Library (ctre_netmf_native.dll 1.3.0.0): Addded back-end support for PWMSpeedController. HERO Firmware (hero_netmf_beta-0.10.0.1.crf): Bug fix for timer registers. HERO Firmware (hero_netmf_beta-0.10.0.1.crf): Out-of-bounds read fix in HERO firmware (however no erroneous symptom was caused by it). HERO Firmware (hero_netmf_beta-0.10.0.1.crf): Fixed two PWM outputs that weren't functional and added and verified two more (bringing the total available number of PWM signal outputs to 5). (Added in 0.10.0.0) HERO Firmware (hero_netmf_beta-0.10.0.1.crf): Added PWM signals to Watchdog routines. (Added in 0.10.0.0) Talon SRX Firmware (TalonSrx-Application-10.13-nonFRC-CustomParams.crf): Added new signals CustomParam0, CustomParam1, PersStorageIsSaving. Talon SRX Firmware (TalonSrx-Application-10.13-nonFRC-CustomParams.crf): Added Current Limit feature to Talon SRX. (Added in 10.12) Talon SRX Firmware (TalonSrx-Application-10.13-nonFRC-CustomParams.crf): Voltage Ramp is applied every 1ms instead of 10ms (ramp is more resolute now). (Added in 10.12) Talon SRX Firmware (TalonSrx-Application-10.13-nonFRC-CustomParams.crf): Fixed bug where motion-magic acceleration and cruise velocity does not load from persistent storage on power boot. (Added in 10.12) HERO Beta SDK 4.4.0.24 Installer New "HERO Driver Module Example" added to Visual Studio. New "HERO Continuous Position Servo Example" added to Visual Studio. Class Library (CTRE.dll 4.4.0.9): Added Utilities.cs to hold general utility functions. Class Library (CTRE.dll 4.4.0.9): Added StatusCodes.cs to hold definitions of all status codes. Class Library (CTRE.dll 4.4.0.9): Updated CANBusDevice.cs to reference StatusCodes instead of literals. Class Library (CTRE.dll 4.4.0.9): Updated Reporting.cs to use StatusCodes and report unique error messages. Class Library (CTRE.dll 4.4.0.9): Updated HERO.IO.cs to have ports be a static implementation of a generic type class and port type interfaces. This is to facilitate passing ports as an argument to the constructors of future gadgeteer module classes. Class Library (CTRE.dll 4.4.0.9): Added DriverModule.cs, which contains the DriverModule class. This class supports the CTRE Gadgeteer Low-Side Driver Module. HERO Firmware (hero_netmf_beta-0.9.7.1.crf): Fixes an issue where analog pins 3, 4, and 5 were not declared in firmware. HERO Beta SDK 4.4.0.23 Installer Rebuild for testing. HERO Beta SDK 4.4.0.22 Installer Updated Analog Input and Serial example to use the HERO IO constants. USB Drivers uninstalled/reinstalled every time setup runs. HERO Beta SDK 4.4.0.21 Installer Requirements: HERO must be updated to hero_netmf_beta-0.9.7.0.crf New "HERO Motion Magic Example" added to Visual Studio. LifeBoat (0.9.3.0) DLL(0.9.3.0): Added Clear NETMF button to just clear the deployed NETMF application. LifeBoat (0.9.3.0) DLL(0.9.3.0): Added Configuration Tab for changing Talon persistent settings. Class Library (CTRE.dll 4.4.0.8): Added HERO.IO.cs (merge commit from github) Class Library (CTRE.dll 4.4.0.8): Talon SRX Setters now have an optional timeout and error return, this allows developers to check if initialization routines were successful. Class Library (CTRE.dll 4.4.0.8): Talon SRX class has a setter for "Throttle Bump" which allows HERO to specify a throttle-offset to add to the closed-loop output, thus allowing cascaded PIDs (for gyro compensation for example). Class Library (CTRE.dll 4.4.0.8): Talon SRX supports MotionMagic control mode. New setter for selecting acceleration and cruise velocity added. Class Library (CTRE.dll 4.4.0.8): Added a new class called SafeOutputPort that will automatically go high-z when HERO is disabled. This is useful for automatically disabling relays when robot is disabled. Class Library (CTRE.dll 4.4.0.8): Added getter for the "low level object" in Talon SRX and PCM. This is helpful for advanced users who intend to quickly extend the functionality beyond what the user-level class accomplishes. Class Library (CTRE.dll 4.4.0.8): GamepadValues has two vendor specific members. This will populate with vendor specific signals, such as the MODE selection button on certain Logitech gamepads. Class Library (ctre_netmf_native.dll 1.2.0.9): Added back-end support for SafeOutputPort HERO Firmware (hero_netmf_beta-0.9.7.0.crf): USB Gamepad: Added support for USB device reports passed 10 bytes. Necessary for decoding the MODE button on certain Logitech gamepads. HERO Firmware (hero_netmf_beta-0.9.7.0.crf): Various performance improvements for CAN periodic transmissions. Retested on Robot Arm Demo. Talon SRX Firmware (TalonSrx-Application-10.11-nonFRC-MotionMagicAndNewPersis.crf): Added Motion Magic Control Mode. Talon SRX Firmware (TalonSrx-Application-10.11-nonFRC-MotionMagicAndNewPersis.crf): Persistent memory storage redesigned to fit future features. Talons with firmware less than 10.10 will have its persistent settings defaulted when updating up to 10.11 or greater. However brake and limit-switch settings are not affected. HERO Beta SDK 4.4.0.20 Installer Added HERO Serial Example project and HERO Position Closed-looping Example. hero_netmf_beta-0.9.4.0.crf (firmware): Added UART support. CTRE.dll 4.4.0.6: Added second parameter to TalonSrx contructor called externalEnable to allow one robot-controller to motor-enable a Talon, and another robot-controller to control/update the Talon. This can be useful when using one robot-controller to safely enable/disable your robot, while other HEROs are used to control the behavior of CAN actuators when robot is enabled. ctre_netmf_native.dll 1.2.0.8: Changed copyright to 2016. HERO Beta SDK 4.4.0.19 Installer CTRE.dll 4.4.0.5: Added PCM user-facing class. CTRE.dll 4.4.0.5: Getter for detecting if USB gamepad is present. HERO Beta SDK 4.4.0.18 Installer LifeBoat (0.9.2.3) DLL(0.9.2.0): Easter Egg added for testing purposes. HERO Beta SDK 4.4.0.17 Installer hero_netmf_beta-0.9.2.3.crf (firmware): HDU MSC turned off. hero_netmf_beta-0.9.2.3.crf (firmware): CAN driver message abort times adjusted. hero_netmf_beta-0.9.2.0.crf (firmware): Replaced the red-black tree with sorted handwritten arrayList. rbtree seemed to be losing its sort order. New module is called linkedlist.cpp, though by the time I was done it become array based (not a linked list). hero_netmf_beta-0.9.2.0.crf (firmware): Fixed issue where LifeBoat loses communication with HERO after a few minutes of use. hero_netmf_beta-0.9.2.0.crf (firmware): Decreased the full threshold for CAN IsFull tx, from 1 to 2. This is a workaround to an intermittent dropped tx can frame. hero_netmf_beta-0.9.2.0.crf (firmware): Hero catches iso15 tx requests for devID changes, and synchronously updates the data objects that stores poll results. hero_netmf_beta-0.9.2.0.crf (firmware): If firmware can't keep up with eth frames over rndis, entire frame gets dropped. Before there was a chance that data and datalen wasn't updated atomically causes corrupted data to be processed. hero_netmf_beta-0.9.2.0.crf (firmware): Lots of changes to cleanly remove CAN devices in device list after they are physically removed from the canbus. hero_netmf_beta-0.9.2.0.crf (firmware): Justice Client modified to only decode datagrams. As it stands the frame decoded is too fragile for datastreams. hero_direct_drive-0.0.3.0.crf (firmware): Picked up all of fixes above since last build. LifeBoat (0.9.2.1) DLL(0.9.2.0): Various GUI fixes and improvements. LifeBoat (0.9.2.1) DLL(0.9.2.0): Runtime detection of a known issue where Windows 10 erroneously enumerates WINUSB devices as a USB Serial Device. LifeBoat will instruct how to apply the workaround. HERO Beta SDK 4.4.0.15 Installer hero_netmf_beta-0.9.1.1.crf (firmware): Fixed issue where more than 10 CTRE devices would cause HERO to reset. HERO Beta SDK 4.4.0.14 Installer hero_netmf_beta-0.9.1.0.crf (firmware): Fixed issue where single Talon stays blinking red if HERO and one single Talon are on CANBus. hero_netmf_beta-0.9.1.0.crf (firmware): Fixed issue where HERO would reset after so-many HDU USB disconnect/reconnents. hero_direct_drive-0.0.2.0.crf (firmware): Rebuilt to pick up HDU USB fixes. HERO Beta SDK 4.4.0.13 Installer hero_netmf-1.3.2.0.crf (firmware): netmf RAM increased to 100KB. hero_simple_drive-0.0.1.0.crf (firmware): Drives all Talons with HID Gamepad. This is useful for simply driving Talons on a CANBus with a HERO and Gamepad. This firmware requires no Visual Studio or coding whatsoever. HERO LifeBoat can still be used to discover and config CAN devices. HERO Beta SDK 4.4.0.13: Updated example projects to use latest CTRE.TalonSRX class. HERO Beta SDK 4.4.0.13: New example added for Talon SRX Motion Profile control mode.