There have been reports of the VEX Cortex locking up when using the new Integrated Motor Encoders. The root cause appears to be an unhandled exception that is generated when the I2C communication link between the Cortex and encoders is compromised. To prevent the Cortex from locking up, we’ve put together a new ROBOTC Firmware file that handles the exception. The differences between this new firmware and the version included in ROBOTC 3.08 only apply to the new Integrated Motor Encoders, so users who aren’t taking advantage of them should continue using the firmware included in ROBOTC 3.08. VEX Robotics Competition teams that are using the encoders are encouraged to load the new firmware, and to take extra steps (zip ties, ect) securing the 4-pin I2C wires, to help prevent them from coming loose in the first place.
The new ROBOTC firmware, “VEX_Cortex_0912A” can be downloaded here. Once the file is downloaded, you will need to extract the .hex file from it.
To transfer the firmware to your Cortex:
- Open ROBOTC
- Go to Window > Menu Level > Expert
- Make sure the Cortex is connected to the PC over USB or VEXnet
- Go to Robot > Download Firmware > ROBOTC Firmware > Choose File…
- When the File Selection window appears, navigate to the “VEX_Cortex_0912A.hex” file you extracted and select it
- A Download Progress window will appear in ROBOTC and begin the download
- When the Download Progress window closes, the Firmware download is complete
More information on the problem can be found in this post on the VEX Forums.
Thanks to everyone for submitting your testing results, and for your patience as we work out the issues. A special thanks goes out to VEX Forum user, jpearman.