Simpel sequencertje bouwinstructie

Tijs

Ouwe rot
Lid sinds
8 juni 2004
Berichten
850
Locatie
Eindhoven
Recent heb ik een eenvoudig sequencertje gemaakt.
Het idee was simpel: weinig componenten maar wel snel bedieningsgemak en visuele feedback, geen ingewikkelde schemas. Alles snel op te bouwen met minimaal soldeerwerk.

De uiteindelijke opzet is een Teensy LC met een 4X4 button matrix , 2 control knoppen, een 8x8 led matrix en een OLED voor toekomstige functies.

De code is nog ruw. De sequencer start nu vanzelf en er zijn voor 16 tracks, 16 triggers in te voeren het OLED bevat in de ruwe versie enkel nog dummy weergave. Ik ben nog bezig met een start/stop/settings menu.

Zelf kom ik net kijken in het zelfbouw wereldje en Arduino is nieuw voor me. Hierdoor is de code niet erg efficiënt opgezet. Ik ben gestart met zoveel mogelijk op lossen in arrays maar liep hier uiteindelijk op vast doordat ik de 16 step arrays niet geprepareerd kreeg op een wijze waarmee ik de matrix library functies kon aanroepen.

Het resultaat is een fikse lap code die weliswaar totaal niet efficiënt opgezet is, maar wellicht wel wat makkelijker te volgen is voor een beginner gezien de functionele benadering met variabelen en het gebrek aan abstractere arrays. Voor veel van de herhalingen in de functies en declaraties heb ik in excel templates gemaakt waardoor dit vrij snel ging.

Voor de mensen die het leuk vinden om het sequencertje te bouwen/aanpassen/bekijken/meedenken/af te schieten heb ik hieronder beschreven hoe ik mijn eigen sequencertje gemaakt heb en heb ik de Arduino sketch toegevoegd

Qua behuizing heb ik uiteindelijk een xenos kistje gebruikt van 1,50 dat precies groot genoeg is voor alle modules. Ik heb twee testdoosjes verzaagd voor ik een enigszins handige methode had gevonden om de vierkanten uit te zagen. Ik heb het gedaan door op de afgetekende lijnen een metalen profieletje uit te lijnen en daar langs af te slijpen met een dremel slijpschijfje.

Benodigdheden:

Soldeerbout
Tin
Tinzuiger
Mini knijptangetje
(derde arm; erg handig)


Keypad 4x4 matrix - Tactile Switch
€1,50
https://www.tinytronics.nl/shop/nl/...eypad-4x4-matrix-tactile-switch?search=matrix

LED Matrix 8*8 met MAX7219 Module
€4,00
https://www.tinytronics.nl/shop/nl/...d-matrix-8*8-met-max7219-module?search=matrix

Teensy LC met Gesoldeerde Headers
€16,00
https://www.tinytronics.nl/shop/nl/...y-lc-met-gesoldeerde-headers?search=TEENSY LC


0.96 inch OLED Display 128*64 pixels wit
€7,00
https://www.tinytronics.nl/shop/nl/display/0.96-inch-oled-display-128*64-pixels-wit?search=OLED

Tactile Pushbutton Switch Momentary 4pin 6*6*9mm
16 X €0,15
https://www.tinytronics.nl/shop/nl/...-switch-momentary-4pin-6*6*9mm?search=TACTILE

Breadboard 170 points - Transparant
€2,50
https://www.tinytronics.nl/shop/nl/...oard-170-points-transparant?search=BREADBOARD



DuPont Jumper draad Male-Female 10cm 10 draden
4 X €0,50





Stap 1:
Knip met het tangetje de plastic headers van de LED matrix module en de button matrix; desoldeer nu 1 voor 1 de pinnen met een tinzuiger.

Stap 2:
Desoldeer de kleine tactile buttons van de matrix pcb en soldeer de langere buttons terug. Het desolderen gaat met een tinzuiger heel snel als je eenmaal de smaak te pakken hebt. Goede oefening. Wellicht verstandig om er 2 van te kopen aangezien ze mar 1,50 zijn om wat te oefenen.

Stap 3:
Neem twee 10 draden dupont kabels en knip de female connectors eraf.

Stap 4:
Plaats de Teensy LC in het minibreadboard.

Stap 5:
Sluit de Led/button matrixen en het OLED scherm aan conform pinout hieronder beschreven. Soldeer de gestripte dupont kabels aan de matrixen. Het oled kan gewoon met een female dupont aangesolten worden aangezien de aansluiting aan de onderkant van het scherm zit.

StapX:
Maak een leuke behuizing.

Stap 6:
Download benodigde libraries (zie includes sketch)

Stap 7:
Verifieer sketch om te checken of alle libs goed geïnstalleerd zijn. Upload sketch

Stap 8:
Sluit hem aan en maak een pattern

**************************************************

Aansluiting pinout (module pin:teensy pin):

Led matrix:
VCC : 5V
GND: GND
DIN: 11
CS: 10
CLK: 9

Button Matrix:
Van bovenaf gezien (S1 linksboven) Vanaf de bovenste pin (1) naar beneden:
1: 4
2: 5
3: 6
4: 7
5: 3
6: 2
7: 1
8: 0

OLED:
Van achterzijde gezien. Van Linker pin (1) naar rechts:
1: 17
2: 18
3: 19
4: 16
5: 15
6: 5V
7: GND

2 control knoppen (momentcontacten):
1: 8
2: 20
 

Attachments

  • buitenkant.jpg
    buitenkant.jpg
    29,1 KB · Bekeken: 196
  • binnenkant.jpg
    binnenkant.jpg
    39,5 KB · Bekeken: 155
  • sequencer_met_oled_raw.ino.zip
    12,8 KB · Bekeken: 149
Ziet er goed uit. Hoe bedien je 'm? Ik ben een step-sequencer gewend die een synth aanstuurt. D.w.z. een apparaat dat een voor een midi noten stuurt naar een synth (of drum computer). Hoe voer ik die noten in op jouw sequencer?
 
Thanks guys.

@ MeneerJansen: De noot informatie zit nu in variabelen (N1-N16) en volgt vooralsnog de noten zoals ableton drumrack die verwacht. In eerste instantie wilde ik hem enkel maken om trigger signalen uit te zenden om losse drum modules (ik had de dr55 pcb hiervoor in gedachten) aan te sturen waarbij noot informatie niet relevant is aangezien een 5V trigger dan volstaat.


Juist noot informatie en CC controls kan ik wel eenvoudiger met arrays oplossen aangezien de lengtes van die arrays corresponderen met de step logica. Anders zouden er 254 variabelen bij moeten komen; 1 per step per track.
Ik ga denk ik 1 van de control knoppen vervangen door een push encoder, zodat met de button matrix de track en de step zijn te selecteren en met de encoder een noot waarde / CC waarde.
Voor 1 kanaal wil ik de meest gangbare akkoorden in variabelen stoppen zodat je dat kanaal makkelijk akkoorden op de steps kunt zetten door het akkoord nummer te selecteren.

Sync heb ik al wel ingebouwd maar dat reageert nog niet helemaal zoals ik het wil. Hij synced prima als slave maar de bidirectionele sync heeft nog wat bugs.

Op de foto kun je ook zien dat ik de DAC pin van de teensy heb aangesloten op 1 van de cinch outs. Hiermee ben ik aan het experimenteren om uiteindelijk het kastje ook echt drumsounds te laten produceren/selecteren voor de channels. Je kunt de teensy best leuke sounds laten produceren.

Het weekend ga ik er weer mee aan de slag en dan zal ik ook zorgen dat de de DIN midi out goed is geimplementeerd.

Mochten mensen suggesties hebben op basis van de bijgevoegde code hoor ik het uiteraard graag. Er valt voor mij nog heel veel te leren en door gebrek aan kennis van specifieke syntax kunnen bepaalde zaken zeker handiger opgelost worden.
 
Dankjewel! Superleuk project om op de Arduino club te gaan maken als ik m'n ArduTouch heb afgemaakt. Zal het hier doorgeven als de code goeroe verbeteringen mocht hebben.
 
Bedankt voor de leuke reacties.
@Jess: Leuk zon hobby clubje; mocht je eraan toekomen ben ik natuurlijk erg nieuwsgierig naar het resultaat.

@Draakje: ik ben er aan begonnen om te kijken of me het maken van zoiets me zou lukken met beperkte kennis van electronica en C/Arduino (wel een informatica achtergrond). Met name de simpele opzet van de kant en klare componenten maakt het inderdaad wel een leuk Instructables projectje, maar daarvoor vind ik de code nog niet volwassen genoeg. Daar moet ik nog wel wat uurtjes in steken.
Wat een leuk idee die elektruck bus uit je onderschrift!
 
Ook eens een keer om deze te proberen te maken.

Ik denk wel dat ik je code dan ietsjes meer OO ga proberen te maken. Sowieso meer template functies. 90% is herhalende code. Zeker een factor 10 minder regels nodig schat ik :P
 
Back
Top