My team has been struggling with these errors for a while.
[CAN SPARK MAX] IDs: 3, WPILib or External HAL Error: Unknown error status
[CAN SPARK MAX] IDs: 3, Unable to retrieve SPARK MAX firmware version. Please verify the deviceID field matches the configured CAN ID of the controller, and that the controller is connected to the CAN Bus.
Everything is fresh out of the box and all of the components are on the latest firmware.
We are using the example code provided by Rev Robotics to eliminate the possibility of a code issue.
Does anyone see any other problems with our set up?
We have reassigned the CAN ID for the SPARK Max to 3 and reflected that change in the code. As far as the devices in the hardware client, we can only see the devices through direct USB connection.
It looks like you have both yellow and green wires going into one lever nut? Both contacts on a lever nut are usually connected together, so that would short your green and yellow wires together.
Good eye! This would short the CAN bus and prevent the roboRIO from seeing the other devices, as well as the devices not being able to see each other when connected to the Hardware Client.
Make it a standard procedure that everyone doing a task checks their work before declaring it done. Then have a second person check the work, preferably someone who is really meticulous.
If you suspect there is a CAN bus problem you should take a look at the REV hardware client. The Troubleshooting section might tell you what could be going wrong.
CAN Warning
You will have a CAN warning when the device connected to the REV Hardware Client can not see any other devices on the network. If the CAN Bus loses connection briefly you will also see a CAN warning sticky fault.
CAN Bus Off
A CAN Bus Off fault means that the CAN bus has run into a critical issue resulting in the bus network turning off. Check your CAN bus for shorts on the high and low CAN wires. The CAN bus will turn back on once the issue is resolved.