INHOUDSOPGAWE:
Video: HX1 -DM - die upcycled Arduino DUE Powered DIY trommelmasjien (gemaak met 'n dooie masjien MK2): 4 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:25
Die spesifikasie
- Hybride Midi -kontroleerder / dromasjien: Arduino DUE aangedryf!
- 16 Snelheidswaarnemingsblokkies met baie lae latency 1> ms
- 8 knoppies gebruiker toewysbaar aan enige Midi #CC opdrag
- 16-kanaals ingeboude sequencer (geen rekenaar nodig nie!)
- MIDI in/uit/deur funksionaliteit (kan gebruik word as 'n USB midi -koppelvlak!)
- Gedeeltelike MIDI -klok en MTC -ondersteuning (werk aan MMC- en DAW -beheer)
Dit is beslis een van die mees ingewikkelde projekte waaraan ek gewerk het, het gepraat oor 17 uitsetverskuiwingsregisters, 6 insetskofregisters, 2x 16 -kanaals multiplexers wat op 'n kringbord werk. Ek het geen idee wat is wat en waar nie, en ek het nog nooit gemors nie met skofregisters / multiplexers voor ……
Dit het begin as 'n impuls op eBay, ek wou regtig 'n Native Instruments Maschine hê, want ek het altyd van die trommelblokkies gehou, in vergelyking met die in die MPC -ateljee wat ek besit, toe ek 'n foutiewe een op eBay vir £ 40 sien Ek sou probeer om dit op te los, met die ergste scenario: 'as ek dit nie kan regstel nie, het ek 'n Arduino DUE en 'n paar UNO's, ek kan altyd 'n hack doen'
Ek hou in elk geval regtig van die trommelblokkies !!!!
Voorrade
1 x foutiewe Native Instruments Maschine MK2
1 x Arduino Due.
17 x SN74HC595's - 8 -bis uitsetverskuiwingsregisters
6 x SN74HC165’s - 8 -bis invoerverskuiwingsregisters
2 x 74HC4067 - 16 -kanaals multiplexers.
2 x 3,2”256x64 OLED -skerms.
'n paar plat drade ('n ou floppy kabel sal dit doen)
Stap 1: Die herstel
Die eBay -verkoper was gaaf genoeg om 'n idee te gee van wat om te verwag in die beskrywing en het die USB -poort verwyder. Die bord het 'n oorspanning gehad en het nie aangeskakel nie. Gee aandag aan die multimeter … Die bord het 'n kort.. 'Ek het al ontelbare moederborde met kortbroeke herstel, so hoe moeilik kan dit wees!?!' komponent op die bord, insluitend die hoof -SVE. Hierdie bord was regtig sleg!
Ek het voortgegaan om met my multimeter te proe en te poke, 'n bietjie navorsing te doen oor die komponente en uitgevind wat elkeen doen, plus NI het 'n uitstekende taak gedoen om dinge redelik duidelik te maak met die verskillende toetspunte rondom die moederbord ??.
Stap 2: Die hack
Omdat ek geweet het dat ek alles moet vervang, behalwe die hoof -SVE (wat nie nodig is nie), het ek my tot eBay gewend. ?
17 x SN74HC595's - 8 -bis uitsetverskuiwingsregisters
Die 17 uitvoerverskuiwingsregisters word gebruik om die veelkleurige LED's van die trommelblok en al die knoppie-LED's te beheer (136 om presies te wees !!) Dit is baie maklik om te gebruik en het vinnig 'n biblioteek gevind met die Arduino IDE om myself te red.. hulle is aan mekaar vasgeketting.
6 x SN74HC165's - 8 -bis invoerverskuiwingsregister
Hierdie invoerverskuiwingsregisters is ideaal vir veelvuldige insette op 1 kanaal. Daar is altesaam 48 knoppies.
2 x 74HC4067 - 16 -kanaals multiplexers
Ons het 16 pads en 8 knoppies oor, dit is ook analoog. Ek het dit makliker gevind om dit te gebruik, aangesien die op die bord 8 -kanaals was, en ek het probleme gehad om te vind waar ek die datapennetjies kon koppel.. cue spaghetti junction….
2 x 3,2”256 x 64 OLED -skerms
Dit moet 'n paar skerms hê !!! Ek kon geen inligting vind oor die oorspronklike LCD -skerms wat in die NI Maschine verskyn nie, en ek kon nie meer tyd mors om dit te probeer nie, so ek het besluit om 'n paar uit China te bestel … Ek het die UG8x8 -biblioteek gebruik om dit te laat werk. Die nuwe skerms was effens kleiner as die oorspronklike, so ek het net die 'slegte stukkies' verwyder.
1 x Arduino Due
Ek het dit 'n geruime tyd laat lê en wag op 'n projek wat genoeg is vir al die krag !! Daar was 'n probleem wat ek ondervind het. Dit lyk asof sommige hersienings van hierdie borde 'n herstelprobleem het, wat beteken dat ek soms op die reset -knoppie moes druk om die ding te laat loop nadat ek 'n skets opgelaai het. Dit is maklik opgelos met 'n 10K -weerstand (daar is 'n plasing hieroor op die Arduino -forum).
Stap 3: Die kode
Ek was baie beïndruk oor die hoeveelheid ondersteuning wat daar in die Arduino -gemeenskap is, en dit was baie eenvoudig en eenvoudig om kodevoorbeelde en biblioteke vir die verskillende komponente te vind.
Dit was maklik om die USB -midi aan die gang te kry, en dit het 'n paar minute geneem. Die LED's het 'n rukkie geneem en ek moes 'n skets maak wat elke pen INHOUDSKLASSE in 1 sekonde tussenposes stel en 'n aantekening neem.
Ek het 2 biblioteke gemaak om met die multiplexers te praat, die een hanteer die analoog pads en die ander die knoppe. Weereens was dit regtig eenvoudig. Ek het dit aangeheg, gebruik gerus wysig, ens.
Ek wou 'n sequencer hê en die opname sonder 'n rekenaar nodig hê.
Met die timerbiblioteek kon ek leesinsette en dinge met tussenposes stel:
Pads @ 1ms - ek het gevind dat dit die beste balans tussen artefakte van reaksie / de -bounce gee.
Buttons @ 40ms - ek het 'n toubiblioteek gebruik, sodat geen perse gemis word nie.
Verwerking word in die hooflus gedoen; u kan nie te veel doen as u onderbreek nie, aangesien dit die Arduino sal sluit.
Midi stuff @BPM (in ms) - vir die volgorde word by die gewenste BPM 'n funksie genoem wat opdaterings met die ETC moet speel en die maat van die maat verhoog.
Stap 4: Gevolgtrekking
Ek weet nie wat ek hier gemaak het nie, maar ek is nogal trots; die pads reageer uitstekend, ek moes vroetel met die tydsberekening om die regte balans te vind met reaksie en probleme met afbreek. Die volgorde werk uitstekend en sodra ek die DAW -ondersteuning agterkom, kan ek hierdie ding volledig in my werkstroom integreer en kan ek dinge byvoeg in 'n kontroleerder wat ek nog altyd wou hê!. Dit was 'n baie aangename projek om aan te werk en 'n goeie oefening om C onder die knie te kry, om reverse engineering te verstaan en hoe multiplexers, shift registers en MIDI sequencing werk. Ek gaan voort om die hoofkode te verbeter en kan dit eendag as 'n open source ritme -ontwerper vrystel.
WENKE:
Ek het gevind hoe om die USB -naam van die DUE te verander deur een van die koptekstlêers in die Arduino/SAM -lêergids te wysig.
MIDI-OX is 'n uitstekende hulpmiddel om Midi-funksies te toets
SKAKELS:
www.usb.org/sites/default/files/midi10.pdf - USB MIDI Spechttps://midi.teragonaudio.com/tech/miditech.htm https://guitargearfinder.com/guides/convert-ms -mi … 'n Paar inligting oor hoe om BPM na ms om te skakel
travis-ci.com/SMFSW/Queue - Vir knoppie -invoer, sodat ons geen pers hoef te mis nie!
github.com/olikraus/u8g2/wiki/u8x8referenc… - UG8 lib vir LED/LCD skerms
github.com/ivanseidel/DueTimer/releases - Arduino DUE Timing lib
www.pjrc.com/teensy/td_libs_Encoder.html - Encoder Lib vir die groot knop
shiftregister.simsso.de/ - ShiftIn Register lib - Geskep deur Henrik Heine, 24 Julie 2016
forum.arduino.cc/index.php?topic=57636.0 - MIDI Time Code -goed
Aanbeveel:
Framboos Pi -trommelmasjien: 5 stappe
Raspberry Pi Drum Machine: Sample Sequencer, via 'n Raspberry Pi + Python. Die sequencer het 4 polifonie en laat die gebruiker toe om 6 verskillende rye op te slaan en te wys wat hulle in reële tyd kan afwissel, en ondersteun die vermoë om tussen verskillende monsters te wissel . Ek w
Makey Makey elektriese tromme / trommelmasjien: 8 stappe
Makey Makey Electric Drums / Drum Machine: Hierdie handleiding oor hoe om 'n stel elektriese tromme te bou, is 'n inskrywing in die Makey Makey -kompetisie. met skuim/ ander vir tex
Herleef u dooie Pleo RB met 'n vasgemaakte PSU: 5 stappe (met foto's)
Resurrect Your Dead Pleo RB Met 'n vasgemaakte PSU: let op dat alle foto's vir hierdie instruksies geneem is nadat ek die wysigings voltooi het, sodat u die dele wat u het na die demontage van die batterykas noukeurig moet bekyk en vergelyk met die meegeleverde foto's hier voordat u dit verander
Fietsopsporingstelsel met dooie man -waarskuwing met Sigfox: 7 stappe (met foto's)
Fietsopsporingstelsel met Dead Man Alert With Sigfox: Beveiligingstelsel vir fietsryers met opsporings- en stuurwaarskuwingsfunksies. In geval van 'n ongeluk word 'n alarm gestuur met 'n GPS -posisie. Beveiliging vir fietsryers is 'n moet, want padfiets- of bergfietsongelukke gebeur en so gou as moontlik noodgevalle per
Maak 'n magneet -DC -kragopwekker uit 'n dooie mengmotor DIY: 3 stappe (met foto's)
Maak 'n magneet DC -kragopwekker uit 'n dooie mengmotor DIY: Hallo! In hierdie instruksies leer u hoe u 'n dooie blender-/boormasjienmotor (universele motor) kan omskep in 'n baie kragtige Permanent Magnet DC -kragopwekker. Let wel: hierdie metode is slegs van toepassing as die veldspoele van 'n universele motor verbrand word