Link Search Menu Expand Document


An object-oriented approach to doing pressure control. Hopefully things are modular and can be swapped in an out for different controllers and valve setups.



  • An arduino-compatible microcontroller (confirmed working on Arduino Mega and Teensy 3.5)



Download the Firmware


Settings Locations

  • Firmware is located in “pressure_control_firmware
  • Hardware configurations are located in the “config”” folder
  • Sensor configurations are located in the “config/sensors_lib.h”” file

Initialize the Onboard Memory (EEPROM)


For each new MCU board, you need to initiatlize the onboard memory before installing the firmware.

  1. Navigate to “utilities/initialize_onboard_memory
  2. Open “initialize_onboard_memory.ino” in the Arduino IDE
  3. Upload the program to the new MCU.
  4. You’re done! You never need to do this again for that MCU.

Install the Firmware on an MCU

  1. Open the firmware in the Arduino IDE.
  2. Choose a configuration file (in the “config” folder), where you set the # of valves, pins, etc.
  3. Choose what type of communication you want to use
    • Arduino Mega: It’s only capable of serial (no need to change any settings)
    • Teensy 3.x: You can select between serial vs. native USB (HID). Do this in the Arduino IDE’s “Tools” » “USB Type” menu.
  4. Flash the firmware to your microcontroller (confirmed working on Arduino Mega and Teensy 3.5)

Table of contents