pic: 4143 RoboRio expansion card prototypes ordered

A few protoype boards are on the way. Hopefully we’ll get selected for the BETA so we can test them.

What’s the feature set for these cards? Which of the expandable I/O did you choose to bring out?

Looks like all of it. The 6 AIOs are labeled, there are 10 3-pin DIO spots, and I imagine the other 3 groups of pins are large SPI (6?), I^2C (4?), and RS232 (DB-25?) bus interfaces.

It looks similar to a protoshield for an Arduino - This will be very helpful for prototyping interfaces with the Rio.

We have a been using a lot of analog position sensors, so I know we’ll need the the extra 4 analog inputs. They are broke out to headers.

The Arduino is wired to the I2C bus. It is there to handle Adafruit Neopixel LED strings. There will be push connectors to hook the LED strings up to.

All pins also have a solder hole to put whatever else you need.

I think I flipped the top and bottom pin rows on the RoboRio so the first boards will just be for fit up. I guess I spent too much time on the artwork and not enough on the engineering…

The files will be posted to github once I’m confident there aren’t big mistakes like shorting power to ground.

Will any RoboRios be at IRI to see if the physical layout is ok?

I’m still not really clear what exactly is on this board.

I see the additional analog inputs but the rest of the board and your description still needs more explanation for me to fully grasp what you are doing here.

Are you saying there is a connector for an arduino or is there an arduino on this board?

Did you bring out the rest of the PWM outputs as well, I imagine this will be one of the more requested features for all the expansion boards.

It is just a glue board. There are no components other than headers and sockets. You plug this in the rio. You plug an Arduino into this. It breaks out the extra rio analog I/O from the MXP connector and puts an Arduino on the i2c bus.

I know a lot of teams use an Arduino on the i2c bus for fancy light shows. Andymark has a kit for this. The timing of the LED strip protocol is strict enough that it still probably makes sense to offload that to a separate microcontroller.

I’ll probably break out some PWM to headers on the next version. Though I’m not sure CAN Talons wouldn’t be a better option.

I’d consider it pretty awful if our severely discounted, dual core 667MHz, ARM, $430 controller with an FPGA can’t keep up with a $5 microcontroller, and had timing issues like these.

It probably CAN keep the timing requirements. But why add on that requirement and slow down everything else when you can offload the processing to a $5 processor. Add on to that, we can use it to teach MORE students DIFFERENT programming skills.

The same program written on an i7 with Java and windows probably couldn’t keep up either. The same program written to take advantage of real-time features of the cRIO on vxworks probably could keep up.

Boards came in. They’ll need some tweaking, but they look pretty cool.

I made some changes and pushed everything to github.

It is probably now functional but untested. It appears to fit good over printed full scale prints from the NI website. There may be some interference between Arduinos with full size USB ports and the solder joints for the RoboRio connector. I’ll make another revision if that is the case. I broke out 4 PWM lines also this time.

Pics of the prototype. I guess this project will get shelved for a while. There aren’t any beta teams very close.


The controller could nail the timing - RT Linux can’t

where did you order them from? we’re a beta team, and would like to take one out for spin early; the earlier we wring out the wrinkles, the better…

I ordered a small batch of boards from a chinese board shop. The first boards have a design flaw that make them unusable. But they are perfect for fit up testing. I haven’t made the corrected version yet, because I haven’t been around beta hardware yet.

I’ll gladly send you a board to plug in, if you can post pictures of it installed here.

Once fit and clearances are verified, I’ll get another small batch made of the corrected version.

PM me an address and I’ll get one sent off.


Bombsquad let me test the MXP board for fitup last weekend at GRC. Thanks.

Looks good, but now I’m not sure we’ll be allowed to use the MXP port next year. Apparently there is debate about the safety of the port. Not sure I get that. Copper on a board is the same as copper in a wire to me.

I guess we could add analog inputs through the i2c or spi busses.