Gyro Sensors

What does everyone think as a good gyro to use on FRC robots? There is a pretty large difference in price but I would welcome any opinions.


Spartan Board

Pigeon IMU

Analog Devices Gyro

The navX-MXP and navX-micro are IMUs containing accelerometers, magnetometers, and sensor fusion algorithms to combine these. I highly recommend the MXP. It’s easy to use and very robust. We had it mounted about 15 inches away from the center of rotation and it still gave repeatable readings within a few degrees. I’m sure the cheaper micro is almost as good (or even with) the MXP version.

I think the Pigeon was just released, but it has the same 3 axes of rotation over 3 different sensors that the navX family has. No comment on this one as I haven’t used it. It must be plugged into a Talon SRX.

The spartan board and AD gyro are single-axis gyro-only sensors. This means that your roboRIO must lie flat, opposed to the other devices which allow you to mount it at a different plane. It also means that you may not get as precise results without the sensor fusion. Talking about these in broad strokes because I again haven’t used them, but I trust 971 and the WCP Spartan Board has some nice features beside the gyro like locking connectors.

If we didn’t have the navX, I would like the old KoP square gyro. I loved those things, until our last one randomly almost caught fire.

I prefer the pigeon. You can plug it directly into a talon srx and it works. I can’t emphasize how important that aspect is for a huge number of teams. If you don’t have an o-scope, troubleshooting a digital connection like SPI can be a nightmare. Wire it correctly and it still might not work if you don’t ping the right registers, etc.

We’ve used the old FRC analog gyro, the Analog Devices version, and the first version of the Nav-X successfully. But we’ve never had as trouble-free an experience as with the pigeon.

We’ve used the AD gyro the last 2 years. Yes, you need to keep the RoboRIO parallel to the ground to get rotational data, but we use it in our PID controllers (on the RoboRIO) in autonomous to maintain the correct heading.

They have a bit of drift, and you should make sure you run the calibrate function when your code starts up. (Make sure the students aren’t moving the bot.) Over the course of a match the overall drift is usually less than 2 to 2 1/2 degrees. Given we’ve only used it in auto, that was not a problem at all.

We’re looking to move up and snag a navX from first choice. (Us and 3,000 other teams probably.) If we don’t we may be looking at the pigeon to integrate to our SRXs. Then again, we may stick w/ the AD gyro again – it depends on the game.

Just to clarify, you can actually solder wires to the Pigeon and use it as a native CAN device without an SRX. See section 4.1 of the PigeonUser’s Guide. Just want to remind everyone that it’s possible. However the convenience of being able to just plug the Pigeon into the Gadgeteer port on the Talon SRX is really nice if you don’t want to do that.

This is our exact experience as well - The pigeon just works and was flawless this past year after using others in the past. Others can work also (the Nav-x is on FIRST choice for 5 credits which is ridiculous bargain - and if not using SRX’s is way to go).

If you’re looking gyro-only, one alternate is the ADXRS435 - similar to the one you listed, but just better noise rejection:

We’ve had good luck with it in the past.

Same Gyro on the WCP Spartan Board. We have used it in 2016 and 2017 and will continue to use it in 2018.

TIL! Thanks!

We have used the NAV-X and the FRC analog devices Gyro. The roborio has built in libraries for the FRC gyro and last year when our NAV-X quit working for us we plugged in the FRC gyro and had it working in minutes. I recommend keeping one as a fallback. It does wander a lot more on the Roborio than the old analog gyro did on the C-RIO. I believe because the C-RIO had better analog inputs. I think we tried the old gyro on the RoboRio and did not get adequate results for field centric drive. That is why we switched to the NAV-X the next year but haven’t needed field centric so I can’t comment.
Last year our auto code only used the gyro for the first 5 seconds or so. Any of these gyros would have been fine from a drift point of view.

I plan on trying a Pigeon soon because the mounting is so easy.

The FRC gyro just plugs into the RoboRio on a port most of us never use. However it does require the RoboRio be mounted horizontal. Not sure if upside down works. I made a short cable to mount it a few inches off board because our RoboRio was mounted vertical. It was not hard.

There are other threads here talking about update rate and speed. Those are actually 2 different things for a gyro. All of these gyros can handle as fast as our robots turn. They don’t even list the max slew rate on them. You have to dig to the chip spec sheets to find that. I don’t think any of them are fast enough to track well during a hard impact.