Innholdsfortegnelse:
- Trinn 1: Grenser
- Trinn 2: Slik fungerer det
- Trinn 3: Maskinvare
- Trinn 4: Programvare
- Trinn 5: Kablinger
- Trinn 6: Hva om jeg har mer enn en MIDI -kilde?
Video: Arduino Multi-track MIDI Loop Station: 6 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
En sløyfestasjon, eller en looper, er egentlig et verktøy for å spille av instrumentalriffene dine (looper) i sanntid. Det er ikke ment som et opptaksmedium, men et instrument for å forme inspirasjonen uten distraksjon (og til slutt utføre live …).
Det er mange lydopptaksløyfestasjoner der ute, både i form av dedikert maskinvare (nesten hver eneste gitarpedalprodusent har sitt eget produkt) eller dataprogramvare (den utmerkede Linux Sooper Looper eller windows Mobius, for å nevne den mest kjente). Jeg kunne bare finne noen få prosjekter om DIY ikke-lyd, men MIDI loopers, noe som betyr et verktøy for å spille inn MIDI-hendelser og spille dem umiddelbart tilbake i en loop; de fleste av disse prosjektene (alle skal jeg si) er forlatt eller tapt … vel, her har vi et komplett prosjekt for alle!
Denne Arduino MIDI loop -stasjonen holder ganske enkelt oversikt over innkommende MIDI -hendelser og spiller dem av. Du trenger bare å trykke på rekordpedalen, lage ditt beste riff noensinne og stoppe opptaket ved å trykke på pedalen igjen. Superenkelt:)
Dette prosjektet er basert på lett å finne åpen maskinvare (Arduino DUE), programvare (min egen fastvare og Arduino IDE) og kan tilpasses for å gjenspeile dine preferanser.
La oss gjøre det!
PS: ja, det er super billig!
Trinn 1: Grenser
Før du begynner å skaffe maskinvaredeler til prosjektet, la meg fortelle deg hvilke grenser det er slik at du kan bestemme deg for å gå videre eller stoppe her.
- på grunn av maskinvaregrenser (hovedsakelig Aduino DUE -minne), er standard maksimal lengde på setningen du kan spille inn begrenset til 46 sekunder.
- sløyfer kan ikke lagres og spilles av etter nedleggelse. Du kan imidlertid sende dem til en PC og lagre dem.
- det er ingen notater kvantisering.
- MIDI -klokke støttes, men på et foreløpig stadium på dette tidspunktet.
- MIDI -meldinger registrert er notat på, notat av, kontrollendringer og pitch bend; andre MIDI -meldinger som etter berøring, programendring, SysEx, etc. blir ignorert.
- maks polyfoni er satt til 10 som standard (igjen, Aduino DUE minnegrenser).
På plussiden støttes MIDI -strømmer fra flere forskjellige instrumenter, som hver sender på sin egen kanal; dette betyr at du kan spille inn flere MIDI -instrumenter samtidig, lagdelt eller med sitt eget spor (flere proffer på neste trinn;)).
Hvis det å leve med disse begrensningene virker rimelig (og det er for meg), vil du ha det veldig bra med dette;)
Trinn 2: Slik fungerer det
MIDI loop -stasjonen her er veldig enkel å betjene. Det fungerer på en måte som ligner på maskinvaren lydsløyfestasjoner som hver gitarpedalprodusent har i sin egen katalog.
1) Velg sporet du vil spille inn MIDI -sekvensen til. Som standard er "ett" valgt, men du kan endre det ved å trykke på en av knappene (én for hvert spor).
2) Når du trykker på "REC" -bryteren/fotpedalen første gang, er looper aktivert. Den grønne LED -lampen lyser. Det vil vente til det første notatet er mottatt før du begynner å registrere den faktiske sekvensen/riffet.
3) Når du er ferdig med sekvensen, trykker du på "REC" -bryteren/fotpedalen igjen for å definere den faktiske lengden på riffet. Den grønne LED -lampen lyser. Looper begynner å reprodusere MIDI -sekvensen din umiddelbart. Hvis du når maks. Tid, stopper opptaket automatisk, og sekvensen begynner å gjengis i en sløyfe.
4) Nå kan du bestemme deg for å overdubbe sekvensen din på det gjeldende sporet eller velge et nytt spor og ta opp på det ved å trykke på "REC" -bryteren/fotpedalen. I begge tilfeller lyser den gule LED -en, selv om det nye sporet er tomt, fordi det er et "slave" -spor (slavet til det aller første sporet som er spilt inn). Trykk igjen for å stoppe overdubbing (gul LED slukker).
For deg som er komfortabel med lydsløyfestasjoner, kalles denne MIDI -progresjonen "REC/PLAY/OVERDUB" og er den eneste som støttes.
Hvis du noen gang føler at din siste overdub ikke er ok, kan du slette den ved å trykke på "angre" bryteren/fotpedalen. Du kan slette hele gjeldende spor ved å holde "REC" -pedalen inne i mer enn 3 sekunder; du kan tilbakestille looper (programvare reset) ved å trykke på de tre første sporknappene samtidig eller ved å fjerne alle brukte spor.
Du kan dempe/deaktivere et spor ved å trykke på sporknappen for det gjeldende sporet.
Du kan sende en PANIKK! meldingen ved å trykke på panikk -knappen. Du kan til og med sende en PANIKK! meldingen ved å trykke på de to første knappene samtidig.
Looper har en innebygd enkel metronom: et notat på MIDI -melding for notatnummer "64" sendes med 100 BPM på kanal 10 (kanalen du antagelig har trommemaskinen din til å lytte til). Du kan øke eller redusere tempoet ved å ture den optiske koderen; ved å trykke på den optiske koderbryteren kan du aktivere/deaktivere metronom. Legg merke til at trommemaskinen din må være satt til å spille av en lyd (snare, bass eller hvilken lyd du foretrekker) når du mottar MIDI -note "64", eller at metronom vil være dempet.
En barebone -versjon av denne MIDI loopstation kan bestå av en enkelt fotbryter for å starte og stoppe innspillingen. Hvis du holder bryteren inne i mer enn 3 sekunder, initialiseres sløyfestasjonen på nytt.
Hvis du vil bruke litt ekstra tid på å utvikle maskinvaren, vil det å legge til brytere og knapper gjøre sløyfestasjonen mer fleksibel. På bildet er hvordan jeg har konfigurert mine fire spor (opptil fem støttes) fullt utstyrt sløyfestasjon.
VIKTIG MERK: maskinvaren i bildene mine er en prototype. Jeg brukte flere stikkontakter enn nødvendig, men bare fire knapper for spor. Dette er fordi da jeg startet prosjektet var jeg ikke helt sikker på hva de endelige kravene ville være.
Knapper og fotbrytere er elektronisk ekvivalenter, og du kan bruke den ene i stedet for den andre; for mine behov, er at det alltid er for lite gulvplass (jævla flotte effektpedaler;)), jeg har begrenset fotpedaler til den eneste REC -funksjonen.
Trinn 3: Maskinvare
Stykklister:
Fullt utstyrt 5-spor MIDI loop-stasjon
1x Arduino DUE
7x øyeblikkelige trykknapper
1x plastkasse (jeg brukte et 150 x 110 x 70 mm etui)
2x 5-pinners DIN-panelmontert MIDI-sokkelkontakt
1x 6,3 mm panelmontert jackkontakt
1x dobbeltsidig 50x70 mm perf bord
5x 3 mm LED (grønn)
1x 3 mm LED (gul)
1x optisk encoder
1x H11L1 optokobler
1x 1N4148 diode
3x 1000 ohm motstander
3x 220 ohm motstander
10x 470 ohm motstander
Litt loddetråd, noen kabler, loddestasjon … og fritid:)
Tid som kreves for å fullføre prosjektet: 6-9 timer
Hvorfor ikke en UNO?
De første testene (og en startende arbeidskode) ble skrevet på et "vanlig" arduino UNO -kort. Dette brettet har RAM -grenser som tvang meg til å redusere polyfonien til "4", maks lengde til mindre enn 4 sekunder og en oppløsning på 40 ms ved maks. Dette uten flerkanalshåndtering. Ved å fjerne hastighetssporing også, klarte jeg å øke opptakstiden til 7 sekunder.
Med en UNO kan du realisere en "fungerende" MIDI loop -stasjon da, men svært begrenset.
Trinn 4: Programvare
Programvaren er sterkt avhengig av FortySevenEffects MIDI -bibliotek. Dette biblioteket er flott og gjør denne typen prosjekter gjennomførbare, selv for ikke -kodere som nøkler som meg.
Arduino IDE og fellesskapet er en annen viktig del av denne "suksessen".
Jeg vil ikke gå inn på detaljer om hvordan du laster opp skissen til din arduino DUE. Hvis dette er din første erfaring med arduino IDE, vennligst les dette først.
Jeg skrev to forskjellige versjoner av koden, basert på to helt forskjellige tilnærminger.
Arbeidsprinsippet for versjon 1 er at under innspilling eller overdubbing Arduino DUE sjekker og lagrer i det (flyktige) minnet de støttede MIDI -hendelsene (merk på, noter av, kontrollendring og pitch bend); tidsaksen kvantiseres i 20 ms trinn og mottatte meldinger lagres i disse sporene tilsvarende. Mens du spiller, sendes lagrede MIDI -meldinger tilbake til synthen med respekt for tidskvantisering.
Arbeidsprinsippet for versjon 2 er i stedet å "ganske enkelt" registrere midi -hendelse og tidspunkt da hendelsen må utløses. Versjon 2 har andre grenser enn versjon 1 (oppført på et tidligere trinn). Prøv dem begge og bruk den som fungerer bedre for deg.
Det er også en foreløpig klokkehåndtering, men den trenger noen justeringer for å fungere som den skal. Koden forutsetter at du spiller inn en 4/4 - 4 bar loop (16 slag).
Du kan deaktivere den eksterne klokken ved å holde inne "panikk" -knappen når du slår på looper.
Koder lastes opp HER. Kommentarer er plassert over dem, slik at du kan bøye fastvaren etter ønske;)
Trinn 5: Kablinger
MIDI IN og MIDI OUT kretser er rapportert i de vedlagte bildene. Legg merke til at TX1 og RX1 brukes, ikke TX0 og RX0.
Arduino DUE input pins klarer ikke 5V, men 3.3V; det er derfor en H11L1 optokobler brukes i stedet for en mer vanlig 6N138. Jeg har bevis på at bruk av en 6N138 kombinert med en spenningsdeler for å redusere signalspenningen til TX1, som i min første prototipe, kunne fungere uberegnelig i noen oppsett.
Lysdioder er koblet til Arduino DUE utgangspinner via 470 Ohm motstander. Du kan bruke motstander opp til 1K ohm for å redusere strømmen til lysdioder og redusere lysstyrken.
Knapper/brytere/kontakter er direkte koblet til Arduino -inngangspinner takket være inngangspullup -motstander, aktivert i skissen. Det er ikke behov for eksterne (nedtrekks) motstander.
Den optiske koderen er koblet til GND og +5V. Den går til Arduino -inngangspinner som går gjennom 2 480 ohm motstander, en for hver optisk datautgang.
Arduino DUE drives direkte fra 5V pin og jordet via en +5V DC hub.
Alle grunner er knyttet sammen.
Vedlagt er et bord med tilkoblinger fra arduino -pinner til IN/OUT periferiutstyr. Arduino pin -tall gjenspeiler tallene i min proptotype -maskinvare og kan se ut (de er på en måte …) tilfeldige. Du kan enkelt endre pin -plasseringen i skissen etter ønske;)
Trinn 6: Hva om jeg har mer enn en MIDI -kilde?
Etter et kort søk etter en MIDI -fusjon fant jeg ut at den mest praktiske (og billige) løsningen var en MIDI -switcher.
En MIDI -switcher er en passiv enhet som aktiverer en MIDI -kilde og deaktiverer alle de andre kildene. Så enkelt som det.
Hjertet til en MIDI -switcher er en multi -posisjonell (min er i 6 posisjoner), 2 -polet bryter. Det er veldig viktig at antall poler er "2" fordi hver MIDI -kontakt må kuttes helt hvis den ikke er valgt og ikke i kommunikasjon med de andre. Legger ved et bilde av den jeg skjønte til eget bruk.
På DENNE LINKEN et opplegg.
Anbefalt:
Max MSP Ambient Loop Generator: 19 trinn
Max MSP Ambient Loop Generator: Dette er en veiledning om hvordan du kommer i gang med å lage en ambient loop -generator i Max MSP. Denne opplæringen forventer at du har en grunnleggende forståelse av Max MSP, DAW -grensesnitt og signalbehandling. Hvis du vil bruke programmet som er designet i denne opplæringen
Larson Loop: 5 trinn
Larson Loop: Dette prosjektet kalles Larson Loop som ble inspirert av en enhet som kalles en Larson Scanner. Ideen er at du har flere LED -er i en sløyfe der lys fra LED -ene ser ut som det går i en sløyfe. I tillegg brukes et potensiometer for å endre
Hvordan lage en while -loop i Python: 9 trinn
Hvordan lage en while -loop i Python: Det er øyeblikk i programmeringen når du må gjenta et sett med trinn for å løse et problem. En stund -sløyfe lar deg gå gjennom en del av koden uten å måtte skrive gjentatt kode. Når du programmerer, skriver du den samme koden igjen og igjen
Multi Task Raspberry 1 B (Personal Cloud + Weather Station): 4 trinn
Multi Task Raspberry 1 B (Personal Cloud + Weather Station): For en stund siden husket jeg at det var en RPiB -reserve etter å ha kjøpt en nyere versjon. Tenkte på personvern når jeg lagret sikkerhetskopifilene mine, jeg bestemte meg for å ha min egen skyserver. Fornøyd med godt resultat, men ikke fornøyd med sløsing med potensial fra R
MIDI 5V LED Strip Light Controller for Spielatron eller annen MIDI Synth: 7 trinn (med bilder)
MIDI 5V LED Strip Light Controller for Spielatron eller annen MIDI Synth: Denne kontrolleren blinker trefargede LED stripelys for 50mS per note. Blå for G5 til D#6, rød for E6 til B6 og grønn for C7 til G7. Kontrolleren er en ALSA MIDI -enhet, slik at MIDI -programvare kan mates ut til lysdiodene samtidig som en MIDI -synthenhet