PDA

View Full Version : Zelfbouw MIDI Router



obiwanjacobi
10 oktober 2015, 17:45
Ik ben een projectje aan het doen en dacht dat ik er hier wel over kwijt kon.

Ik ben een MIDI router aan het maken. 1 MIDI ingang en 4 MIDI uitgangen die programmeerbaar zijn - en nog een 1 MIDI Thru uitgang - maar die zit in hardware vast aan de MIDI in.

Het idee is dat je voor elk van de 4 uitgangen kan programmeren welke MIDI berichten ze moeten doorlaten. Deze filtering kan op verschillende kenmerken van het bericht gebeuren, bijvoorbeeld, welk type bericht en/of welk MIDI kanaal het bericht over verstuurt is.

Wanneer een bericht eenmaal door de filtering heen is gekomen kan er ook nog een transformatie op worden uitgevoerd. Denk aan bijv. het MIDI kanaal wijzigen, het Ctrl-nummer wijzigen of zelfs van het ene type MIDI bericht een heel ander type maken.

Ik ben dit aan het maken omdat ik zelf met mijn rack-gear regelmatig behoefte heb (denk te hebben) aan dit soort functionaliteit. Je weet wel die gedachte van: 'als ik het nou eens zo zou kunnen doen'.

Vooralsnog ben ik lekker met de hardware en software van dit projectje bezig. De 'computer' (Micro Controller Unit - MCU) begint al aardig te werken en kan inmiddels het display aansturen en de MIDI-in inlezen en 2 van de 4 MIDI-out porten aansturen.

Hieronder zie je een foto van een test opstelling waarbij ik MIDI-in door echo naar de 2 outputs en de ruwe MIDI waarden ook toon op het scherm.

https://lh3.googleusercontent.com/-doOM6iZiAcY/Vhju0vM4CUI/AAAAAAAAEfE/enIo6RgBuWs/s800-Ic42/WP_20151010_001%25255B1%25255D.jpg

Voorlopig is het nog niet af, maar het meeste werk zit hem nu nog in de software. Voor de hardware moet er nog een klein toetsenboordje bij tbv navigatie door het programma heen en het kunnen instellen van de filter waarden etc. Daarnaast komt er nog een flash-chip (EEPROM) bij om de presets die je kan maken ook werkelijk te kunnen opslaan - wel handig toch? ;-)

Later als ik groot ben ga ik ze misschien nog wel verkopen. Eerst maar eens eentje helemaal af krijgen...

D3nnis
10 oktober 2015, 17:53
Gaaf!
Klinkt als een uitgebreide versie van de midi solutions event processor?

obiwanjacobi
10 oktober 2015, 18:06
Yep, maar dan met 4 uitgangen. Het grote voordeel is dat je dus op 1 inkomend MIDI bericht, 4 verschillende acties kan programmeren - voor elke uitgang apart. Althans dat is de bedoeling... :soinnocent:

D3nnis
10 oktober 2015, 18:26
Maar wat is daar praktisch gezien het voordeel van? Normaliter heeft elk apparaat zijn eigen midi kanaal, dus al die separate uitgangen zijn niet per se nodig?
Maar die uitgebreidheid is wel wat, als ie op de markt komt hou ik me aanbevolen!

obiwanjacobi
10 oktober 2015, 18:44
Voordeel is bijv bij een (goedkope) footcontroller die alleen PC kan versturen - dan kan je voor elk van de 4 uitgangen andere PC-nummers laten uitsturen of zelfs van de PC een CC maken...

Je zou me helpen door practische voorbeelden te geven van situaties die je probeert op te lossen...

D3nnis
10 oktober 2015, 19:34
Een mogelijkheid om de laatst verzonden program change ( s) te onthouden is bijvoorbeeld erg handig. De events processor kan dat ook.
Waar ik het voor gebruik: mijn versterker heeft een solo boost.
Versterker wordt geschakeld via een switcher die program changes ontvangt, zeg 1 t/m 4 voor de 4 kanalen.
Nu gebruik ik program change 11 t/m 14 voor dezelfde switcher instellingen, maar dan met het relais voor de boost ook ingeschakeld, dus eigenlijk het originele program change nummer +10.
Stuur ik met de midi controller dan Cc(noem eens wat) 22 naar waarde 127, dan pakt de events processor de laatst gebruikte PC (op het gemonitorde kanaal) en telt er 10 bij op en zend dat uit.
Zo kan ik met dezelfde midi CC in diverse presets toch de solo boost inschakelen (zonder een aparte switcher er bij te gebruiken die op midi CC's reageert)

En nog iets dat de events processor niet kan maar ik wel handig zou vinden:
Stel midi CC 31 schakelt de wah in en uit, en cc88 wordt gebruikt om de frequentie sweep te regelen dmv het expressiepedaal. Nu schakel ik met een cc button de wah in, waarna je de wah bedient met het expressiepedaal.
Het lijkt me handig als de processor "ziet " dat Cc 88 van waarde verandert, en dan zelf cc31 aanstuurt om de wah in te schakelen.

muziekschuur
10 oktober 2015, 20:18
Als je zowel midi i/o als USB i/o op het device plaatst heb je een gat in de markt....

obiwanjacobi
11 oktober 2015, 10:55
@Dennis: Het 1e scenario is duidelijk. Dat 2e scenario zou je kunnen oplossen door altijd voor het doorsturen van de CC88 eerste een CC31-on te zetten - mids je ontvanger daar tegen kan/goed mee omgaat. Anders zou je op de Midi mapper de state moeten bijhouden van een ander apparaat (staatie aan of uit) en dat kan uit sync gaan lopen - en dan heb je een anti-feature ;-).

@muziekschuur: USB zit zeker in de pipeline. Maar eerst wil ik functioneel wat verder komen. USB toevoegen zou ongeveer hetzelfde moeten zijn als een extra MIDI In/out port toevoegen. Maar dat moet ik nog wel even wat verder uitzoeken.

Thanx!

D3nnis
11 oktober 2015, 19:05
Dat 2e scenario zou je kunnen oplossen door altijd voor het doorsturen van de CC88 eerste een CC31-on te zetten - mids je ontvanger daar tegen kan/goed mee omgaat.

Ja, ik denk dat er sowieso wel haken en ogen aan zitten (als je de 128 stappen hebt, moet ie dan al schakelen bij 1 stap verschil, met als risico dat je op een bewegend podium continu een wah ingeschakeld krijgt, en na hoe lang geen beweging zou die weer uit moeten, etc), maar toch lijkt het me een handige feature.

obiwanjacobi
12 oktober 2015, 09:58
Iig bedankt voor het scenario. Ik heb hem erbij gezet (lijstje bijhouden ;-) en is idd op zich wel interessant.

Maar ik werk in kleine stapjes en ga voor de least-viable-product eerst - een simpele werkende oplossing. Daarna kunnen we gaan uitbreiden.

Thanx.

miyaru
3 november 2015, 17:58
Interessant project!!! Heb ooit veel met midi gedaan als in studio/synth/modules etc. Het is oud, midi dan, maar nog steeds een krachtige taal om devices aan te sturen.

Ik blijf je project volgen, puur uit interesse, gebruik zelf geen midi in mijn gitaarsetup. Wellicht nog in de toekomst, wie zal het zeggen.

Veel succes, Robin.

obiwanjacobi
3 november 2015, 18:06
Thanx!

Ik ben nu bezig met het toetsenboordje aansluiten en de menu/settings structuur te bedenken...

miyaru
4 november 2015, 10:24
@ Obiwanjacobi: Ik zag tussen jouw foto's nog een Peavey Bandit staan, grappig een Bandit uit '83 was ooit mijn eerste versterker.... Voor de rest mooie spullen man!!!!

Robin.

obiwanjacobi
4 november 2015, 15:03
Thanx! Het was mijn 2e versterker ;-)

HaroldA
9 november 2015, 00:36
Ik ben nu bezig met het toetsenboordje aansluiten en de menu/settings structuur te bedenken...

Ik ben er achter gekomen dat je met een rotary encoder met switch echt extreem snel dingen kunt doen en vele acties kunt versnellen:
* klik / dubbelklik / lange klik
* ingedrukt houden en draaien
* sneller draaien = grotere stappen
* ingedrukt sneller draaien = grotere stappen

Ik gebruik het helemaal niet; maar interactie met een apparaat met instellingen en cijfers is best goed te doen met maar 1 ding in je hand ;)

obiwanjacobi
9 november 2015, 07:16
Het originele schema dat ik heb getekend heeft ook een rotary encoder met push switch.

Maar de settings vallen wel mee, ik zie eigenlijk alleen een voordeel bij het invoeren van tekst op dit moment - en dat hoeft alleen bij de preset naam.

Ik wil de Roland (en andere?) truk toepassen dat met twee toesten inhouden de stap grootte groter wordt. Dus je drukt ^ (up) in, dan verhoogd de waarde druk je ook nog down erbij dan gaat het nog sneller omhoog. Vond ik altijd op de Roland modules lekker werken...