While testing the roboRIO, WildStang decided to mess with test out the MXP expansion port. Namely, by designing and implementing a board to break out the extra various pins available. The board features a bonus 10 PWMs, 4 extra analog inputs, 2 analog outputs, additional SPI, I2C (which, if unused, give another 6 digital I/O), and serial port.
We set out with simple design goals:
- make a simple board that any team could use
- make the board a simple breakout, to make all of the pins of the MXP easily available and accessible
- make the board useful (allow for varied placement of the board, provide supply voltages where practical/useful)
use as many LEDs as possible without being totally obnoxiousprovide useful status feedback with LEDs
Board features
Our board has the MXP connector on the edge of the board, making it easy to access. Choice and placement of the connector allows the board to be set up in a variety of ways: a female connector soldered to the bottom allows the board to “piggyback” on top of the roboRIO, while a male connector (straight or right angle) soldered onto the top of the board allows it to be placed anywhere and connected to the roboRIO with a cable.
All pins available on the expansion port are broken out in a way that’s familiar to FRC, with ground towards the edge of the board, power (if supplied) in the center, and signal towards the center of the board. Similar to the old Digital Sidecar, PWMs 4-9 have the option to supply the 6V needed to power servos or other higher-voltage devices. Plugging in power from the PDP and flipping the corresponding DIP switch sends voltage through the otherwise unpowered pin; the voltage is supplied through a buck circuit similar to the one found on the digital sidecar, and so stays relatively stable even as battery voltage drops. An indicator light for each individual PWM output lets you know when power is being supplied.
Adjusting course (temporarily?)
As we were just about ready to send the board off to manufacture, FIRST released a statement on their blog regarding use of the MXP. (You can read it here.)
In light of this, we are now trying to find out if this board, as is, would be classified as “passive” or “active”, and whether it would need approval from FIRST in order to be used.
Because of this, we have designed a for-sure passive version of the board. This is the same board, save for some layout changes and the removal of the powered PWMs – no buck converter circuit, and a sad reduction in the number of LEDs. We’ve sent this board out to be made, and will post testing of it here once it arrives. In the meantime, here’s the Eagle schematic and board layout for anyone to look over and see what we’ve done.
We are providing three different board layouts from the same schematic, which may suit different needs.
‘The original’
This board is the original layout, used for our initial board design.
The blank space in the middle is where the ‘missing’ components go. Watch that space…
Download the board here.
(Update: please see out latest post here.)
‘The secure’
This board layout is larger to span from the MXP connector to the
two screw holes for mounting at the top. This allows it to be firmly secured to the roboRIO.
Download the board here.
‘The mini’
Designed to be as small as practical, this board tries to use minimal
space, while still allowing for an oversized logo. This board will either leave a small footprint on the roboRIO, or allows for compact mounting away from the roboRIO via a cable.
Download the board here.
The schematic
It is what it says it is – the schematic. This is for EAGLE.
Obligatory Disclaimer
This board design and schematic are provided as is. We haven’t even got ours back to build and test yet, so there may be errors. We also don’t know how FIRST views this board right now. So, if you decide to take this and use it, we’re sorry if it is ruled illegal, or doesn’t work in its current state. The voice of doom has spoken.
