Modules

Beyond solenoid valves, LEDs and TTL pulses, it's hard to anticipate what kinds of outputs Bpod will need to control hardware in future experiments.

As a general expansion framework, we have exposed 3 (or more) of the UART serial ports of the state machine's microcontroller.

  • The serial ports are indicated on the enclosure as RJ45 ethernet jacks labeled "Modules" 1-N.

  • The ports are configured to communicate with other microcontrollers at 1.3125Mb/s

  • The state machine sends UART serial transmissions to modules using an RS485 IC at each end of the ethernet cable. This employs differential signaling over the Ethernet cable's twisted wire pairs, to make the digital messages more robust against noise.

We designed a special circuit board to interface between these ports and the UART on Arduino Leonardo: the Bpod Arduino Shield.

To develop your own serial device with Arduino M0 or Arduino Due and the Bpod Arduino shield, use the BlinkModule sketch as a starting point.

  • /Bpod_Gen2/Examples/Firmware/Gen2/BlinkModule/BlinkModule.ino

It will help to become familiar with the Arduino language.

An excellent intro to Arduino is located here.