Indholdsfortegnelse:
- Forbrugsvarer
- Trin 1: Design din egen
- Trin 2: Lodning og ledninger
- Trin 3: Fra hardware til software
- Trin 4: Sådan fungerer MIDI
- Trin 5: Sådan sender du MIDI over USB på Arduino
- Trin 6: Kodningstid
- Trin 7: Sæt dine ting sammen
Video: Arduino MIDI -controller til Aalto: 7 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:26
Som amatørmusiker går jeg ofte fra Analog Synths til VST'er.
Når jeg er i "VST" -stemning, er jeg virkelig til et fantastisk instrument: Madronalabs Aalto VST
Denne utrolige VST er meget fleksibel, den genererer meget gode lyde og er ret nem at bruge til en rimelig pris.
Min begrænsning af VST'er er imidlertid, at jeg ikke rigtigt kan røre kontrollerne, og jeg skal bruge min mus/pegefelt, mens jeg jam - ikke det bedste. Jeg ejer en MIDI -controller, men knapper afspejler ikke den ægte Aalto -grænseflade.
På den anden side kan du med modulære eller semi-modulære synths ikke rigtig gemme dine patches, hvilket gør det hele lidt frustrerende for mig.
Så jeg ville oprette en Custom MIDI -controller til Aalto med et design, der afspejler Aaltos interface for at styre de mest relevante ting.
Følg mig på Instagram for at se flere videoer af processen: weirdest.worry
Mig på Spotify:
Forbrugsvarer
- 1 Arduino Mega- 14 Potentiometre (jeg brugte dem -> PTV09A -4020F -B103) - Et brødbræt til prototyper - jeg anbefaler virkelig Electro Cookie perfboard, der er meget godt til lodning (den blå på billedet) - Krydsfiner - Lodning Jern - Kobberbånd - Springtråde
Trin 1: Design din egen
Fra grænsefladen på min VST ville jeg wireframe mit layout med noget papir for at finde den perfekte pasform.
Jeg har derefter designet det med en software, printet det og limet det til en pap prototype for at se, om layoutet muligvis fungerer i den virkelige verden.
Dette trin er virkelig op til dig - du kan designe det til en dåseæske eller en tændstikæske: min anbefaling er at prototype så meget som du kan.
At få krydsfinerhuset til at matche elektronikbrædderne og bruge perfboards er ikke det mest præcise nogensinde: Jo mere du tester, jo bedre er det.
Trin 2: Lodning og ledninger
Når dit design er færdigt, kan du gå efter elektronik!
Bemærk: Jeg går ud fra, at du ved, hvordan disse ting fungerer, så jeg vil ikke gå ind på detaljer om lodning og forbindelser.
I denne fase brugte jeg 2 forskellige perforerede brædder til tre adskilte kredsløb: den gul-ish er sandsynligvis den mest almindelige. Jeg kan ikke lide det meget, men jeg havde en ekstra, så jeg ville alligevel bruge den. Den blå-ish er langt bedre, og jeg anbefaler virkelig at bruge den i stedet, hvis du er en nybegynder, som jeg er.
I den gul-ish er et hul meget, meget lille, og kobber er bare på den ene side omkring hvert eneste hul, loddetin flyder ikke gennem hullet.
For at designe sporene på dette bræt besluttede jeg mig for at gå efter 5 mm kobberbånd: Jeg skar det i to, men det var en frygtelig idé. Da det er meget let, er forfærdeligt at håndtere, og både GND og VCC distribueres muligvis ikke korrekt. Det krævede meget test og reparation, og det tog meget lang tid.
Men hey, det ser meget godt ud til sidst.
Det er lidt smertefuldt at få ledningerne til at løbe rundt: at færdiggøre dette bord er nok det, der tog mest tid.
Brug af det blå perfboard (kaldet Electro Cookie på Amazon) var langt bedre: det er forbundet som et brødbræt, du kan undgå at bruge kobberbånd, da stifter og ledninger allerede er tilsluttet, når de loddes på den samme blok.
Du kan også snappe den med dine hænder i mindre stykker, hvilket er frygtelig bedre.
Huller er større og belagt med kobber, hvilket gør lodning super hurtigt og rent.
Det tog 3-4 dage at lave det første gul-ish bord, kun få timer at lave de andre 2.
Bemærk om potentiometre Som du kan se, var jeg nødt til at bøje grydefødder - de er beregnet til at blive brugt på PBC'er og er ikke rigtig de bedste i dette tilfælde. Men at bøje deres fødder til den rigtige vinkel gjorde dem meget stabile.
Trin 3: Fra hardware til software
Nu har du alle dine ting forbundet, og forhåbentlig gjorde du dine tests for at kontrollere, at din Vcc og GND er ok.
Potentiometre er nok det letteste at starte med på Arduino.
De har tre ben: en er til GND, en er til 5V. Den centrale stift er en slags "output" af potentiometeret. Hvis du slutter GND til den venstre pin, 5V til den højre pin, og du drejer gryden med uret, vil du se værdien stige på dens "output" mellem 0 til 5V.
Den centrale pin går til en af de "analoge indgange" på Arduino, som vil prøve værdien, og den vil oversætte den til et digitalt tal: Arduino Mega 2560 oversætter værdierne fra 0 til 1023 (det vil give et 0, når puljen er alt vejen gennem venstre, 1023 når er hele vejen gennem højre, 5V).
Husk, at MIDI accepterer værdier fra 0 til 123, så du bliver nødt til at dividere Arduino -værdien med 8, før du sender hele talværdien via seriel.
Det ser meget enkelt ud (og det er), men der er et par ting at huske på:- ofte er gryder ikke superpræcise: deres output kan tilfældigt hoppe til de tilstødende værdier og udløse uønskede CC-kommandoer- dit kredsløb (godt, mit i dette tilfælde) er ikke perfekt: da det ikke er et printkort, kan du have tilfældige værdier hist og her, så igen tilfældige værdier.- du vil ikke sende MIDI CC-værdier hele tiden, ellers vil din DAW sandsynligvis tilstoppe du skal finde en løsning for at undgå dette
Min kode er skrevet for at tackle de tre punkter ovenfor, og det gør det ret godt.
Trin 4: Sådan fungerer MIDI
MIDI er en meget gammel protokol, designet og skabt til at få computere og instrumenter til at fungere sammen.
Der er en omfattende forklaring på, hvordan MIDI fungerer: Når det kommer til at sende noter, er der masser af signaler, du kan sende, men i vores tilfælde er alt meget simpelt.
Vi arbejder med Control Change (MIDI), så vi skal bruge en af disse kanaler, der er rapporteret i denne tabel:
www.midi.org/specifications-old/item/table…
fra 176 til 191.
Når du sender MIDI/CC -værdier, skal du sende via seriel: - statusbyten (første kolonne i tabellen) for at fortælle din DAW, at du sender en CC- hvilken kontrol - i dette tilfælde, hvilken KNOB - sender den (heltal)- værdien af kontrollen
I mit tilfælde har jeg 14 knapper, så en besked kan være:
Serial.write (176, 13, 107)
Knap 13 sender 107 værdi via CC.
MIDI accepterer værdier fra 0 til 123, mens Arduino læser analoge værdier fra 0 til 1023 - bare husk at dividere med 8, før du sliber værdien.
Trin 5: Sådan sender du MIDI over USB på Arduino
Du har 2 muligheder for at sende MIDI over USB med Arduino:
- blinker en intern Arduino USB -controller (anbefales i slutningen af dit projekt)
- forlader Arduino lager og brug en software på din pc (denne) MEGET ANBEFALET
Blinkende Arduino USB Controller er ikke den mest bekvemme måde at prototype på: Når du blinker firmwaren for at sende MIDI over USB, modtager Arduino ikke nogen ny kode til upload, så hvis du vil opdatere din kode, skal du blinke firmwaren Så f.eks. er din Arduino på lager, og du uploader koden. Du blinker den for at få MIDI til at fungere. Tag den ud. Tilslut den. Du tester koden. Den virker ikke.
Du blinker den tilbage til stock. Unplug. Plug-in. Rediger koden. Upload. Flash. UnplugPlugin [REPEAT AND CRY]
Den eneste fordel ved dette er, at du ikke behøver at bruge nogen ekstern software, men jeg anbefaler kun at bruge denne metode i slutningen af dit projekt.
På den anden side er Hairless super let at bruge, fordi du ikke skal blinke noget - hvis du er på en Mac fungerer det perfekt med MIDI Setup, og din DAW genkender det med det samme som "hårløs midi controller". Meget, meget bedre.
Trin 6: Kodningstid
Ikke meget at sige her, da jeg postede min kode på Github, og jeg har kommenteret koden så meget som jeg kunne.
Husk bare nogle grundlæggende ting:
- Elektriske værdier svinger
- du vil ikke oversvømme dig DAW med unødvendige CC -signaler
- Du vil ikke sende en kopi af CC -beskeder
I min kode er alt forklaret, og du kan finde det herhttps://github.com/weirdest-worry/aalto_midi_contr…
Trin 7: Sæt dine ting sammen
Nu fungerer din kode, og det eneste du skal gøre er at sætte dine ting sammen.
Dette vil kræve nogle træfærdigheder, jeg ikke har (heldigvis hjalp min kone mig i processen), så jeg kan ikke rigtig give råd, men hvis du besluttede dig for at bruge perfboards, får du et meget rent og ryddet arbejde. Slut nu din USB, åbn din DAW og slip lidt bas!
Anbefalede:
LoRa 3 km til 8 km trådløs kommunikation med lavpris E32 (sx1278/sx1276) enhed til Arduino, Esp8266 eller Esp32: 15 trin
LoRa 3 til 8 km trådløs kommunikation med lavpris E32 (sx1278/sx1276) enhed til Arduino, Esp8266 eller Esp32: Jeg opretter et bibliotek til at styre EBYTE E32 baseret på Semtech -serien af LoRa -enheder, meget kraftfuld, enkel og billig enhed.Du kan finde 3Km version her, 8Km version herDe kan arbejde over en afstand på 3000m til 8000m, og de har en masse funktioner og
LoRa Messenger til to enheder til distancer Op til 8 km: 7 trin
LoRa Messenger til to enheder til afstande Op til 8 km: Tilslut projektet til din bærbare computer eller telefon, og chat derefter mellem enhederne uden internet eller SMS ved hjælp af bare LoRa.Hey, hvad sker der gutter? Akarsh her fra CETech. I dag skal vi lave et projekt, der kan forbindes til din smartphone eller en hvilken som helst
1A til 40A nuværende BOOST -konverter til op til 1000W DC -motor: 3 trin
1A til 40A Current BOOST-konverter til op til 1000W DC-motor: Hej! I denne video lærer du, hvordan du laver et strømforstærkerkredsløb til dine høj ampere DC-motorer op til 1000W og 40 ampere med transistorer og en center-tap-transformer. Selvom, strømmen ved udgangen er meget høj, men spændingen bliver r
Overbevis dig selv om bare at bruge en 12V-til-AC-line inverter til LED-lysstrenge i stedet for at genoprette dem til 12V .: 3 trin
Overbevis dig selv om bare at bruge en 12V-til-AC-line inverter til LED-lysstrenge i stedet for at genoprette dem til 12V .: Min plan var enkel. Jeg ville skære en væg-drevet LED-lysstreng i stykker og derefter genkoble den til at køre 12 volt. Alternativet var at bruge en strømomformer, men vi ved alle, at de er frygtelig ineffektive, ikke? Ret? Eller er de det?
12v til USB Adapter 12v til 5v Transformer (fantastisk til biler): 6 trin
12v til USB Adapter 12v til 5v Transformer (fantastisk til biler): Dette viser dig, hvordan du laver en 12v til USB (5v) adapter. Den mest oplagte anvendelse af dette er til 12v biladaptere, men hvor som helst du har 12v kan du bruge det! Hvis du har brug for 5v til andet end USB, skal du blot springe trinene om tilføjelse af USB -porte over