DART circuit:

  • Upload the DART_Sketch on a UNO or Leonardo board and start building a MIDI controller.
  • The circuit is based on multiplexers (4051), so the 6 analog inputs are multiplied to 48.
  • These  inputs can be connected to buttons, potentiometers, faders, sensors.
  • on/off modifiers (like buttons) and continuous modifiers (like pots or sensors) are automatically reognized so NOTE messages will be controlled by buttons and CC messages are controlled by pots.

  • Arduino pins 2 and 3 are connected to the main encoder (super fast and accurate readings).
  • MIDI signals are emitted both via DIN connector and via USB.
  • Midi over USB  funcionality is immediately active on Leonardo boards. It must be enabled on UNO boards.
  • Use the Dart PRESET EDITOR to access advanced settings (MIDI, DMX, HID, encoders, touchsensing, spinners setup…) 


  • The 48 inputs in a Dart circuit are numbered as in the following image.
  • IN and OUT pins are coupled by default (example: a button on IN 3 will lit the LED on OUT 3)
  • Use the PRESET EDITOR to re-arrange the IN/OUT coupling.




  • 74hc595 shift registers are used to manage Dart outputs – commonly used for LEDs
  • Dart sketch and circuit is ready to handle 4 shifters .

Distance Sensor

  • The Distance sensor can be disabled or moved to any input pin
  • set a modifier to DISTANCE SENSOR MODE (Preset Editor) and use it to store it’s settings.

PAGE Switch

  • The Page Switch can be disabled or moved to any input pin
  • set a modifier to PAGE SWITCH MODE (Preset Editor) and use it to store it’s settings.

DMX output & MIDI input

  • The phisical MIDI input and the USB-midi input can be used jointly in arduino Leonardo.
  • MIDI and USB inputs cannot work at the same time, in arduino UNO.
  • this circuit shows a DMX output with galvanic isolation.

Secondary encoder / piezo input

  • Pads and 2ndEncoder functions can be de-activated in GENERAL Settings via Preset Editor.
  • Just set a modifier to PADS, in the Preset Editor, and follow it’s Hint box.
  • id PADS function is active, the last multi-plexer of the chain (Arduino A5 input) is read at higher frequency, so it’s dedicated to Piezo Pads signal conversion.
  • A two channel female jack connector is used in DART ONE, to provide Pads input, so a common INSERT Y type jack cable can be used for two pads. Up to four pads can be read.



  • The DART system supports 2 touch sensors  that are not active by default and can be enabled by using the PRESET EDITOR
  • For a perfect functioning  remember to connect your system to ground –  just leave the power supply attached to your laptop.
  • T1 and T2 work like buttons, controlling a MIDI on/off  message
  • many of their functions are strictly related with 1st and 2nd encoder, for DJ jogwheels emulation.