Sockerbit MIDI Controller
Detta projekt är en bärbar, Arduino-powered, grid-baserad MIDI-controller som startar upp till olika apps att göra massor av saker med ljud. Den har 16 bakgrundsbelysta knappar, används som både in- och utgångar för att ge registeransvarige lite visuell feedback. 2 potentiometrar ge analog kontroll, beroende app krukorna har tilldelats tempo, MIDI-hastighet, tonhöjd och rullning (att göra avaible rutnät utrymmet större än 4 x 4). En x / y accelerometer och en x / y gyroskop lägga lite lekfull, gestikulerande kontroll till enheten; de flesta av apps inför en "skaka för att radera" kontroll och flera svara för att luta på olika sätt. Den stöveln upp in i 7 olika apps (beskrivs nedan), men det har potential att starta upp till 16 totalt. Denna enhet är främst en MIDI-controller, men jag har också skrivit en app som låter dig dra knappen och analog data i MaxMSP och att styra ljud.
Denna regulator var inspirerad av både den monome och tenori-on. När jag var i college, byggde jag en stor pekskärm, baserat på Arduinome monome-Arduino klon scheman och kod, som arbetat med alla öppen källkod monome applikationer skrivna i MaxMSP. Det finns massor av människor bygga sina egna monome-typ enheter med hjälp av dessa knappar från Sparkfun och Arduinome koden, samt några variationer på temat. Med detta projekt, jag var intresserad av att göra en enhet som var lite mer sluten och relativt billigt att göra (massor av knappar = massor av $). Att hålla mer med begreppet tenori-on, denna controller gör alla sin app bearbetning själv, det förlitar sig inte på en dator för att bearbeta knappkontroller pressar/analog till MIDI. Detta innebär att du kan koppla in den direkt i en synth eller någon enhet som förstår MIDI och du är good to go, nej computern krevad. Det rinner av en biffiga LiPo batteri som håller den igång i dagar på en laddning, så det är ganska bärbar också. I linje med den monome sidan av saker, det är helt öppen källkod och kan anpassas till din specifika ljud setup/behov. All kod som Arduino är upp på github (Klicka på moln-formade knappen att ladda ner), tillsammans med en MaxMSP lapp som avkodar data från styrenheten till något användbart i Max.
En översikt av de apps som jag har skrivit hittills:
Pixel luta - en pixel flyttar över en 2D tangentbord med tilt, utlösa MIDI när den flyttas. Kontrollera hastigheten och basenote med krukor.
Flin - speldosa app baserad på monome. Hastighet och hastigheten av anteckningar kontrolleras av y tilt. Personsökning över 16 "körfält" med pot. Skaka om du vill radera.
Seriell kommunikation med MaxMSP - Pull data från knappar och analog kontroller i MaxMSP och används Max att skicka LED stater. Stöder 5 bit analog kontroller för x / y accelerometer och 2 krukor. Det är bra om du vill köra ljudbearbetning program med controller. Ladda ner SerialDemo app (SerialDemo.maxpat, medföljer Arduino filerna, klicka på knappen cloud-formade här) att tolka data i Max. Beat slicer (visas ovan) app ingår med Arduino filer också.
Arpeggiator - spelar en två, tre eller fyra Obs arpeggio, liknar denna app jag skrev för monome. En pott styr hastigheten på arpeggio, en annan kontroller hastighet. Anteckningar i arpeggio kan flyttas uppåt eller nedåt med en halvton via knappkontroller, Den hela arpeggio införlivas via x-lutning. Längst till vänster anteckningen i arpeggio att spela toner i stigande ordning, tryck längst till höger anteckningen i arpeggio spela noterna i fallande ordning och tryck på ett mellersta anteckningen i arpeggio spela noterna i slumpmässig ordning. Skaka om du vill radera.
Boiing - studsande pixlar som genererar polyrytmiken, utifrån denna tenori-on app. Studsa riktning utifrån y tilt. Hastighet och MIDI-hastighet (ljudstyrka) kontrolleras av krukor. Skaka om du vill radera.
Steg Sequencer - fyra not 16 steg sequencer. Krukor styra tempot och personsökning över sekvens. Skaka om du vill radera.
MIDI-klaviatur - enkel MIDI knappsats. Kontrollera hastigheten och basenote med krukor, pitchbend med x tilt.
Reservdelslista:
SPARKFUN:
(1 x) knappen Pad 4 x 4 - LED kompatibel Sparkfun COM-07835
(1 x) knappen Pad 4 x 4 - Breakout PCB Sparkfun COM-08033
(1 x) Arduino Uno Sparkfun DEV-11021
(1 x) Accelerometer/Gyro 5 frihetsgrader Sparkfun SEN-11072
Jag satte en 3-axlig accelerometer och 2 axis gyroskop i den här domänkontrollanten att ge det gestikulerande kontroll, men hittills har jag faktiskt inte använt gyrot i någon apps, och jag har bara x och y axel accelerometern trådbunden upp. Det innebär att du kunde sub i en enklare/billigare del gillar detta. Uppdatering: denna del finns inte längre och jag har svårt att hitta en analog gyro att ersätta den. Denna analoga accelerometer styrelse kommer att fungera, och som jag sade tidigare, jag faktiskt inte har genomfört någon apps med gyrot ännu, så det inte är nödvändigt. ledningarna är lite annorlunda för den nya accelerometern, men om du ansluta x, y, z, gnd hur jag har beskrivit i resten av scheman, och Anslut 5V från Arduino till den accelerometer Vin, det bör fungera samma.
DIGIKEY:
(16 x) vit 5mm LED (3mm är bra också) Digikey C513A-WSN-CV0Y0151-ND
(2 x) 74HC595 skiftregister Digikey 296-1600-5-ND
(1 x) 74HC165 skiftregister Digikey 296-8251-5-ND
(3 x) 16 pin IC uttag Digikey AE9992-ND
(16 x) 1N4148 diod Digikey 1N4148FS-ND
(4 x) strömbegränsande motstånd (värde beror på lysdioder, ta prov beräkningen i steg 5)
(4 x) 10kOhm 1/4 watt motstånd Digikey CF14JT10K0CT-ND
(1 x) 220 Ohm 1/4 watt resistor Digikey CF14JT220RCT-ND
(1 x) 5-Pin MIDI Jack Digikey CP-7050-ND (tillval - förklaras i steg 27)
(1 x) USB typ B kvinnliga jack Digikey 732-2734-ND (tillval - förklaras i steg 27)
(2 x) 10kOhm linjär taper potentiometer Digikey 987-1308-ND
(1 x) storlek N Panel-Mount koaxial DC Power Jack med Switch Radioshack 274-1573 Update Digikey CP-002AHPJCT-ND denna del kan se annorlunda ut än den på bilden, kolla databladet/använda en multimeter för att vara säker anslutning är korrekta.
(1 x) SPST Vippbrytare Digikey 360-3289-ND
(1 x) storlek N koaxial Power Plug Digikey CP3-1000-ND
JAMECO:
(1 x) 16 ledare flatkabeln Jameco 28RC16-10VP
(1 x) 16 rätt vinkel stiftskontakt Jameco 746285-3
(6 x) manliga header pins Jameco 103393
AMAZON:
(1 x) Midi kabel Amazon (tillval - förklaras i steg 27)
(1 x) Li-Ion 7.4V Tenergy 2200mAh uppladdningsbart batteri modul med PCB Amazon
(1 x) Tenergy Universal Smart laddare för Li-Li-Ion/Polymer batteri Pack (3.7V-14.8V 1-4 celler) Amazon
(1 x) MIDI till USB-kabel Amazon (tillval - förklaras i steg 27)
MÅNGA LEVERANTÖRER:
(2 x) rattar - knoppar jag fick är ut av lager (från newark) så länge det passar en 0.25"/6.35mm axel det kommer att fungera, plocka något du gillar:
https://www.tubesandmore.com/products/KNOBS
YTTERLIGARE MATERIAL:
22 gauge tråd, olika färger Jameco #9313-0-R
eltejp Radioshack 64-2373
avbitare
Wire strippor
löda
trä/akryl/projekt inhägnad (jag använde här 6 "x 6"x2"bambu du The Container Store)
lim/epoxy
dubbel dubbelhäftande skumtejp Amazon