Use easily the DJ Shield for Arduino by Nootropic Design https://nootropicdesign.com/djshield
README
ofxArduinoDjShield
Openframeworks addon C++
Addon to use easily the DJ Shield for Arduino by Nootropic Design
<https://nootropicdesign.com/djshield/>
Specification of the DJ Shield for Arduino :
- 5 tactile buttons, connected to digital pins 2-6
- 3 10K linear potentiometers connected to analog pins 0,1,2. (shaft is 1/4")
- 2 LEDs (one red, one blue) connected to analog pins 4 and 5 (analog pins can also be used as digital pins)
- 3 ABS plastic or aluminium knobs for the potentiometers.
- Compatible with the Arduino Uno, Duemilanove, Mega or Leonardo
Credits for the addon :
Code for Arduino from examples/communication/firmataExample
Code for DjShield : Nicolas Boillot <http://www.fluate.net>
Webpage for the addon : <http://www.fluate.net/code/ofxArduinoDjShield>
USAGE:
- Get an Arduino Uno, Duemilanove, Mega or Leonardo <http://arduino.cc/en/Main/arduinoBoardUno>
- Upload StandardFirmata on the arduino :

- Get a DJ Shield for Arduino : <https://nootropicdesign.com/djshield/>
- Add to your code :
in ofApp.h add :
include "ofxArduinoDjShield.h"
and after "public:" : ofxArduinoDjShield DjShield; bool ArduinoUSB; // if Arduino connected to USB port string deviceInit;in ofApp.c add :
- in setup() { }
for(auto & device : devices){ if(device.getDeviceID() == 0){ deviceInit = device.getDeviceName(); } }
// Here the list of 4 USB Port of the computer, change them in case.. // replace the string below with the serial port for your Arduino board // you can get this from the Arduino application or via command line // for OSX, in your terminal type "ls /dev/tty.*" to get a list of serial devices
string ArduinoPort01 = "tty.usbmodem1411"; string ArduinoPort02 = "tty.usbmodem1d11421"; string ArduinoPort03 = "tty.usbmodem1421"; string ArduinoPort04 = "tty.usbmodem1431";
if((deviceInit == ArduinoPort01) || (deviceInit == ArduinoPort02) || (deviceInit == ArduinoPort03) || (deviceInit == ArduinoPort04)){ ArduinoUSB = true; } else{ ArduinoUSB = false; }
if(ArduinoUSB){ DjShield.setup("/dev/" + deviceInit); }
-------------------------------------- - in update() {}
bool DjShield.bSetupArduino // if arduino ready // Potentiometers A0-A2 float DjShield.PotA0(); // native, from 0 to 1 float DjShield.PotA1(TRUE, 0,255); // rescale from 0 to 255 float DjShield.PotA2(TRUE, 3, 10); // rescale from 3 to 10
// Buttons D2-D6 bool DjShield.ButtonD2(); bool DjShield.ButtonD3(); bool DjShield.ButtonD4(); bool DjShield.ButtonD5(0.5); // 0.5 s delay before next hit bool DjShield.ButtonD6();
// LED A4-A5 DjShield.LedA4(true); DjShield.LedA4(false); DjShield.LedA5(true); DjShield.LedA5(false); }
See examples for more details.See release for OSC Bridge app : https://github.com/fluaten/ofxArduinoDjShield/releases
Get this addon
Latest release
Edit settings.txt for option and config
ofxAddons