Components and supplies
Arduino Nano R3
jacks
Custom PCB
19" 1U case
Tools and machines
Soldering iron (generic)
Project description
Code
TR-909
arduino
1// Trigger to MIDI - Roland TR-909 2 3#include <MIDI.h> 4 5bool trig[11]; 6bool mem[11]; 7byte drum[11]={38,45,37,42,51,49,46,39,48,41,35}; 8// SD LT HT CP OH CC RC CH RS MT BD 9byte x; 10 11void setup() { 12pinMode(2,INPUT); //SD 13pinMode(3,INPUT); //MT 14pinMode(4,INPUT); //RS 15pinMode(5,INPUT); //CH 16pinMode(6,INPUT); //RC 17pinMode(7,INPUT); //CC 18pinMode(8,INPUT); //OH 19pinMode(9,INPUT); //CP 20 21pinMode(10,INPUT); //HT 22pinMode(11,INPUT); //LT 23pinMode(12,INPUT); //BD 24 25Serial.begin(31250); 26 27for (x=0;x<11;x++){ 28 trig[x]=LOW; 29 mem[x]=LOW; 30} 31delay(1000); 32} 33 34void loop() { 35trig[0]=digitalRead(2); 36trig[1]=digitalRead(3); 37trig[2]=digitalRead(4); 38trig[3]=digitalRead(5); 39trig[4]=digitalRead(6); 40trig[5]=digitalRead(7); 41trig[6]=digitalRead(8); 42trig[7]=digitalRead(9); 43trig[8]=digitalRead(10); 44trig[9]=digitalRead(11); 45trig[10]=digitalRead(12); 46 47for (x=0;x<11;x++){ 48 if (trig[x]==HIGH){ 49 if (mem[x]==LOW){ 50 Serial.write(144); 51 Serial.write(drum[x]); 52 Serial.write(127); 53 mem[x]=HIGH; 54 }} 55 if (trig[x]==LOW){ 56 if (mem[x]==HIGH){ 57 Serial.write(128); 58 Serial.write(drum[x]); 59 Serial.write(0); 60 mem[x]=LOW; 61}}}} 62
HR-16
arduino
1// Trigger to MIDI - Alesis HR-16 2 3#include <MIDI.h> 4 5bool trig[16]; 6bool mem[16]; 7byte drum[16]={48,41,65,67,68,62,63,45,49,46,42,38,35,39,44,51}; 8// CH T3 P1 P3 P4 P2 T4 T2 CC OH CH SD BD CP MH RC 9byte x; 10 11void setup() { 12pinMode(2,INPUT); //T1 13pinMode(3,INPUT); //T3 14pinMode(4,INPUT); //P1 15pinMode(5,INPUT); //P3 16pinMode(6,INPUT); //P4 17pinMode(7,INPUT); //P2 18pinMode(8,INPUT); //T4 19pinMode(9,INPUT); //T2 20 21pinMode(10,INPUT); //CC 22pinMode(11,INPUT); //OH 23pinMode(12,INPUT); //CH 24pinMode(A0,INPUT); //SD 25pinMode(A1,INPUT); //BD 26pinMode(A2,INPUT); //CP 27pinMode(A3,INPUT); //MH 28pinMode(A4,INPUT); //RC 29 30Serial.begin(31250); 31 32for (x=0;x<16;x++){ 33 trig[x]=LOW; 34 mem[x]=LOW; 35 } 36 37delay(1000); 38} 39 40void loop() { 41trig[0]=digitalRead(2); 42trig[1]=digitalRead(3); 43trig[2]=digitalRead(4); 44trig[3]=digitalRead(5); 45trig[4]=digitalRead(6); 46trig[5]=digitalRead(7); 47trig[6]=digitalRead(8); 48trig[7]=digitalRead(9); 49trig[8]=digitalRead(10); 50trig[9]=digitalRead(11); 51trig[10]=digitalRead(12); 52trig[11]=digitalRead(A0); 53trig[12]=digitalRead(A1); 54trig[13]=digitalRead(A2); 55trig[14]=digitalRead(A3); 56trig[15]=digitalRead(A4); 57 58for (x=0;x<16;x++){ 59 if (trig[x]==HIGH){ 60 if (mem[x]==LOW){ 61 Serial.write(144); 62 Serial.write(drum[x]); 63 Serial.write(127); 64 mem[x]=HIGH; 65 }} 66 if (trig[x]==LOW){ 67 if (mem[x]==HIGH){ 68 Serial.write(128); 69 Serial.write(drum[x]); 70 Serial.write(0); 71 mem[x]=LOW; 72}}}} 73
HR-16
arduino
1// Trigger to MIDI - Alesis HR-16 2 3#include <MIDI.h> 4 5bool trig[16]; 6bool mem[16]; 7byte drum[16]={48,41,65,67,68,62,63,45,49,46,42,38,35,39,44,51}; 8// CH T3 P1 P3 P4 P2 T4 T2 CC OH CH SD BD CP MH RC 9byte x; 10 11void setup() { 12pinMode(2,INPUT); //T1 13pinMode(3,INPUT); //T3 14pinMode(4,INPUT); //P1 15pinMode(5,INPUT); //P3 16pinMode(6,INPUT); //P4 17pinMode(7,INPUT); //P2 18pinMode(8,INPUT); //T4 19pinMode(9,INPUT); //T2 20 21pinMode(10,INPUT); //CC 22pinMode(11,INPUT); //OH 23pinMode(12,INPUT); //CH 24pinMode(A0,INPUT); //SD 25pinMode(A1,INPUT); //BD 26pinMode(A2,INPUT); //CP 27pinMode(A3,INPUT); //MH 28pinMode(A4,INPUT); //RC 29 30Serial.begin(31250); 31 32for (x=0;x<16;x++){ 33 trig[x]=LOW; 34 mem[x]=LOW; 35 } 36 37delay(1000); 38} 39 40void loop() { 41trig[0]=digitalRead(2); 42trig[1]=digitalRead(3); 43trig[2]=digitalRead(4); 44trig[3]=digitalRead(5); 45trig[4]=digitalRead(6); 46trig[5]=digitalRead(7); 47trig[6]=digitalRead(8); 48trig[7]=digitalRead(9); 49trig[8]=digitalRead(10); 50trig[9]=digitalRead(11); 51trig[10]=digitalRead(12); 52trig[11]=digitalRead(A0); 53trig[12]=digitalRead(A1); 54trig[13]=digitalRead(A2); 55trig[14]=digitalRead(A3); 56trig[15]=digitalRead(A4); 57 58for (x=0;x<16;x++){ 59 if (trig[x]==HIGH){ 60 if (mem[x]==LOW){ 61 Serial.write(144); 62 Serial.write(drum[x]); 63 Serial.write(127); 64 mem[x]=HIGH; 65 }} 66 if (trig[x]==LOW){ 67 if (mem[x]==HIGH){ 68 Serial.write(128); 69 Serial.write(drum[x]); 70 Serial.write(0); 71 mem[x]=LOW; 72}}}} 73
TR-909
arduino
1// Trigger to MIDI - Roland TR-909 2 3#include <MIDI.h> 4 5bool 6 trig[11]; 7bool mem[11]; 8byte drum[11]={38,45,37,42,51,49,46,39,48,41,35}; 9// 10 SD LT HT CP OH CC RC CH RS MT BD 11byte x; 12 13void setup() { 14pinMode(2,INPUT); 15 //SD 16pinMode(3,INPUT); //MT 17pinMode(4,INPUT); //RS 18pinMode(5,INPUT); 19 //CH 20pinMode(6,INPUT); //RC 21pinMode(7,INPUT); //CC 22pinMode(8,INPUT); 23 //OH 24pinMode(9,INPUT); //CP 25 26pinMode(10,INPUT); //HT 27pinMode(11,INPUT); 28 //LT 29pinMode(12,INPUT); //BD 30 31Serial.begin(31250); 32 33for (x=0;x<11;x++){ 34 35 trig[x]=LOW; 36 mem[x]=LOW; 37} 38delay(1000); 39} 40 41void loop() { 42trig[0]=digitalRead(2); 43trig[1]=digitalRead(3); 44trig[2]=digitalRead(4); 45trig[3]=digitalRead(5); 46trig[4]=digitalRead(6); 47trig[5]=digitalRead(7); 48trig[6]=digitalRead(8); 49trig[7]=digitalRead(9); 50trig[8]=digitalRead(10); 51trig[9]=digitalRead(11); 52trig[10]=digitalRead(12); 53 54for 55 (x=0;x<11;x++){ 56 if (trig[x]==HIGH){ 57 if (mem[x]==LOW){ 58 Serial.write(144); 59 60 Serial.write(drum[x]); 61 Serial.write(127); 62 mem[x]=HIGH; 63 64 }} 65 if (trig[x]==LOW){ 66 if (mem[x]==HIGH){ 67 Serial.write(128); 68 69 Serial.write(drum[x]); 70 Serial.write(0); 71 mem[x]=LOW; 72}}}} 73
Downloadable files
input prevention
input prevention
Documentation
Schaeffer front panel
Schaeffer front panel
Schaeffer front panel
Schaeffer front panel
Comments
Only logged in users can leave comments