For reference we are trying to verify that the roboRIO can communicate or detect the navX sensor through USB. Looks like we are not seeing anything return from KauaiLabs help.
We will give these a shot. Updating anyone reading this in the future- we swapped to i2C until we get the USB figured out and everything works as expected.
Is there a reset button on the navX2-micro? We are using that as opposed to the navX which sits onboard the roboRIO.
If in a standard case, then poke into the little hole labeled something like reset.
You are aware of the (varying) advice not to use I2C on the roboRIO and certainly not the onboard. I tested a NavX-micro on the MXP and had no problems. Actually any one device worked fine for me on the MXP but more than one device and random fatal failures occurred.
I had to look twice at your team number - we’ve been next to each other in the pits.
Yes, I have read about the unknown issues with using the onboard I2C port. Although we have used that on an outreach robot for a couple of years now with no issues.
And yes, I’ve talked with Brad about how we are not allowed to be at the same events due go the confusion we cause the queuers and scouters.
Were you able to get any resolution here? We’re having the same problem. If we swap the port the NavX is connected to while the Roborio is running, we can then read the navx successfully (despite the fact that our code calls out a specific USB port…). Have you tried to set any of the serial comm parameters (e.g. baud rate) directly?
Wish I had a good answer for you. We instead went ahead with the risky move of using the I2C connection which has worked without any issues all season so far.
We will revisit this issue after the season is over or just switch to Pigeon.
We haven’t used the I2C connection before. Are you able to use that directly when the NavX is plugged into the MXP port on the RoboRIO? Or do I need an I2C cable to connect it to the RoboRIO I2C port?
We are using the NavX2-micro which is NOT plugged into the roboRIO MXP port, but instead is placed at the bottom of our robot and connected via the I2C cable.