Can I use Arduino and roboRIO

Hey, I am in the programming team, and we wanted to use Arduino in addition to roboRIO in order to use a camera, sensors, and so on.
Is it possible?

Your question is so broad I’m not sure we can answer it in a useful way.

Yes, an Arduino can be part of the CUSTOM CIRCUITS on your robot.

You can connect the CUSTOM CIRCUITS to the RoboRIO on any of the data buses (Ethernet, USB, spi, i2c, analog input, DIO…)

You may not control actuators (motors, relays, or other core elements) directly using a CUSTOM CIRCUIT such as the Arduino. Any CAN frames, PWM outputs, relay outputs, etc must be controlled through the roborio.

3 Likes

Check out H303, R707, and R905, and see if your intended use might run afoul of those rules.

2 Likes

From a purely technical perspective, ignoring any rules conflicts, Arduino and a microcontroller such as the Teensy are definitely able to be used for most functions of a robot. My team has a marketing bot that doesn’t even have a roboRIO and runs purely off 2 Teensys.

However, Arduino might not be the best choice to run sensors off of. What kind of sensors are you trying to run? Many sensors can be ran off the roboRIO itself eliminating the need for the additional complexity of an Arduino board.

1 Like

Echoing above - yup, definitely both possible and legal in many cases. May or may not be optimal.

@OP, do you have a description of what end behavior on the robot you’re looking to accomplish, and what sensors and architectures you’re considering currently to achieve it? There’s many folks here who would happily review and advise your proposed path!

2 Likes

encoders and we want to connect a camera to track balls.

but we want it to be separate from the roboRIO’s systems except for the encoders that will be on the wheels

Yes, the camera is a great use case for off-RIO processing.

The sensors, not AS much. You’ll get extra delay the more active hardware your feedback must traverse.

1 Like

I recommend having the encoders just be part of your code that runs off the roborio. There isn’t really a reason to add in an separate Arduino board for encoders.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.