Holzauge
Registrierter Benutzer
Hallo,
hier mal eine kleine Projektvorstellung über den Selbstbau eines kleinen 3-Kanal Midi Controller.
Dieses war erst nicht als Projektvorstellung geplant, deshalb auch nur wenige Bilder in der Fotostrecke.
Die Idee…
Ein Freund suchte einen nicht zu großen MIDI-Foot-Controller um an seinem Vocalisten zwei oder
drei Programmbänke umzuschalten.
Das Problem war nur, das er ein Pedal suchte, um eine Programm-Bank nur kurzzeitig umzuschalten um
z.B am ende des Refrain eine Hallfahne oder ein Echo nur kurzzeitig einzuschalten und dann zur
Ursprünglichen Programmbank zurückzuschalten.
Das kann mann sicherlich mit einem Expression Pedal regeln, aber hier haben wir einfach mal eine andere Lösung gesucht.
Erste Schritte…
Aufgebaut habe ich alles auf einem Arduino Uno, der hierfür scheinbar ausreichend war (näheres Später).
Die Arduinos lassen sich für MIDI Anwendung sehr leicht Programmieren, da dort schon eine Serielle Schnittstelle vorhanden ist,
die man sehr direkt mit MIDI Befehlen füttern kann.
Das Einzige Problem beim Programmieren ist hier, wenn man am Seriellen Ausgang (TX1) eine MIDI Buchse aktiviert, hat man
leider keine Möglichkeit für eine Fehlersuche den Seriellen Monitor zur Fehlersuche im Programm gleichzeitig zu Aktivieren.
Das Programmieren…
Den Code Poste ich hier nicht, da ich im Programmieren extrem schlecht bin, und mich jeder mit nur halbwegs moderaten
Programmierkenntnissen an den Pranger stellen würde (Für Eingeweihte: Mein Programm strotzt nur so von If Befehlen…).
Für jeden, der Lust hat hier etwas selber auszuprobieren: Man braucht hier nicht wirklich viel an Material.
Ein Arduino UNO, ein Breadboard, ein paar Buchsen, Schalter und Widerstände, evtl. noch ein kleines Display, da ist man
mit 25-30 Euro dabei.
Für Einsteiger kann ich sehr empfehlen, sich hier einmal durch zu klicken:
Hier erklärt der Autor Schritt für Schritt, wie man sich einen MIDI Controller selber bauen kann.
Etwas Elektronik und Programmierkenntnisse sollte man bei aufwändigeren Projekten allerdings schon haben, da ich mich erst
durch einige Seiten klicken musste, um hier brauchbare librarys zu finden, da ich das Projekt so umsetzen wollte, das das Gerät
mit Drehencodern und nicht mit Tasten einzustellen ist.
Die Werte für die verschiedenen Programmbänke werden hier im Internen EEPROM des Arduino abgelegt, was hier relativ einfach ist,
da ich nur die Werte von 0-127 abspeichern muss, und jede Speicheradresse im EEPROM mit 8 Bit hier allemal ausreicht.
Einen kleinen Hinweis: Beim abspeichern (überschreiben) von Werten im EEPROM bitte vorher den Programmcode seeehr genau prüfen.
Das EEPROM kann man etwa 100 000 mal überschreiben.
Das hört sich zwar nach viel an, wenn das allerdings bei jedem Programmzyklus passiert und nicht nur einmalig z.B. bei einem Tastendruck,
ist das EEPROM eventuell schon nach ein Paar Sekunden hin.
Die Praktische Umsetzung…
Das größte Problem stellte sich mit der Beschaffung des Gehäuses heraus.
Hier habe ich leider nur ein gescheites Gefunden: Hammond 1590BX2.
Das Gehäuse konnte ich dann aus Platzgründen leider nicht mehr mit einem kleinem LCD Display bestücken, sondern musste aus Platzgründen
auf ein kleines OLED Display zurückgreifen.
Vorteile: Viel kleiner, und ein geringerer Stromverbrauch, da hier keine Hintergrundbeleuchtung benötigt wird.
Nachteile: Trotz des doch übersichtlichen Programms ist der Arduino Programmspeicher auf Grund des Displays zu 95%
Ausgereizt, und das OLED Display verlangsamt das Verstellen der Programmiereinstellungen am Pedal extrem.
Aufgebaut habe ich alles Erst einmal auf dem Schreibtisch mit einer losen Verdrahtung auf dem Breadboard, bevor ich das Gehäuse zerbohre.
Hier hatten wir dann noch die Idee, zwei Expression Pedale mit einzubinden, die erst eimal mit zwei Potis
an den Analog-Eingängen des UNOs simuliert wurden.
Hier erst einmal der Schreibtisch -Testaufbau, um das Programm zum Laufen zu bekommen.
Der Aufbau…
Da mir der Arduino zu groß ist, habe ich mir eine kleine Platine gebaut, um den Atmel Prozessor als UNO Clon zu benutzen.
(Sieht nicht allzu doll aus, aber mehr gab die Küchentisch Werkstatt nicht her…)
Hier die nackte Platine
Zum Programmieren braucht man hier nur noch einen USB-Seriell Adapter (FTDI), da der Prozessor selber keine USB Schnittstelle hat.
Das Gehäuse…
Als Bohrschablone habe ich mir hier mit dem Platinenprogramm einen transparenten Aufkleber gedruckt, was das Körnen und Bohren sehr erleichtert.
Das Rohgehäuse
Nachdem alles Gebohrt und Der Displayauschnitt gesägt ist, 1x grundiert und mit der Sprühdose silber lackiert.
Ich wollte hier zwar eine knallige Farbe, hatte aber nur noch eine halbe Dose Felgenlack gefunden.
Mit einer Decal-Folie noch die Beschriftung hergestellt, aufgeklebt und zu guter letzt mit Klarlack versiegelt.
Hier hatte ich ziemlich gepfuscht, wollte aber nicht alles wieder abschleifen, neu bekleben und wieder lackieren.
Die Kontrolle LED´s habe ich einfach mit Zweikomponenten-Kleber eingeklebt und Plangeschliffen.
Die komplette Platine.
Hier sieht man schön was so ein Arduino eigentlich ausmacht: Prozessor, ein Quartz, drei Kondensatoren und einen Widerstand
(Ein Paar Teile sind noch auf der Rückseite als SMD Bauteile direkt aufgelötet).
Mehr braucht es nicht. Die Anderen Teile sind nur noch die Stromversorgung, die Vorwiderstände für die LED´s und etwas Beschaltung,
um den Seriellen Programmieradapter zum Umprogrammieren aufstecken zu können.
Die aufgebaute Platine. Aus Platzgründen habe ich auf Steckkontakte verzichtet und die Kabel mit Kleber gesichert.
Jetzt erst einmal alles in das Gehäuse einsetzen…
Dann noch alles verlöten, und den Deckel drauf!
Hier noch einmal die Funktionen:
Den Mode Encoder ein Paar Sekunden drücken, dann kommt man ins Setup -Menü.
Hier stellt man für jeden Taster zwei MIDI Programmbänke ein, die Umgeschaltet werden sollen.
Als nächsten Schritt wählt man an, ob der Taster zwischen den beiden Programmbänken permanent umschaltet,
oder der zweite Befehl nur bei gedrücktem halten des Tasters gesendet wird, und beim Loslassen wieder der Erste Befehl gesendet wird.
Beim weiterdrehen des Mode Encoders kann man die MIDI CC´s für die beiden Expression-Pedale einstellen.
Als letzten Bedienschritt noch der MIDI Sendekanal 1-16.
Verändert werden die Werte mit dem zweiten Encoder, die Werte werden hier beim drücken gespeichert.
Die Werte lassen sich hier leider durch die Verwendung des OLED Displays nur sehr langsam verstellen (etwa 3 Schritte pro Sekunde).
Wenn hier ein LCD Display verwendet wird geht das deutlich schneller. Das kann ich im Moment verschmerzen, denn die Einstellungen
werden hier nicht alle paar Minuten geändert. Für Infos von versierten Programmierern um hier Abhilfe zu schaffen habe ich aber immer
ein offenes Ohr.
Die Menüpunkte:
Der MIDI Programmkanal beim ersten drücken des Tasters (oder loslassen)
Der MIDI Programmkanal beim zweiten drücken des Tasters (oder gedrückt halten)
Anwahl ob der Taster als um-Taster(1) oder um-Schalter (0)funktioniert
Die beiden CC Kanäle für die beiden Expression-Pedale
Der MIDI Sendekanal
Hier noch das Fertiggerät:
So, fertig!
Für alle Selbstbauer: Das Projekt war nicht mal eben in ein Paar Tagen fertig! Das hat schon mehrere Wochen gedauert.
Also nicht bei solchen Bastelarbeiten entmutigen lassen.
Das Lackieren muss ich noch etwas perfektionieren, da habe ich leider nicht so viel Geduld.
Und falls jemand eine Bezugsadresse hat um endlich einmal Professionell aussehende Display-Abdeckungen zu beschaffen,
bitte gerne in die Kommentare schreiben.
Andreas
hier mal eine kleine Projektvorstellung über den Selbstbau eines kleinen 3-Kanal Midi Controller.
Dieses war erst nicht als Projektvorstellung geplant, deshalb auch nur wenige Bilder in der Fotostrecke.
Die Idee…
Ein Freund suchte einen nicht zu großen MIDI-Foot-Controller um an seinem Vocalisten zwei oder
drei Programmbänke umzuschalten.
Das Problem war nur, das er ein Pedal suchte, um eine Programm-Bank nur kurzzeitig umzuschalten um
z.B am ende des Refrain eine Hallfahne oder ein Echo nur kurzzeitig einzuschalten und dann zur
Ursprünglichen Programmbank zurückzuschalten.
Das kann mann sicherlich mit einem Expression Pedal regeln, aber hier haben wir einfach mal eine andere Lösung gesucht.
Erste Schritte…
Aufgebaut habe ich alles auf einem Arduino Uno, der hierfür scheinbar ausreichend war (näheres Später).
Die Arduinos lassen sich für MIDI Anwendung sehr leicht Programmieren, da dort schon eine Serielle Schnittstelle vorhanden ist,
die man sehr direkt mit MIDI Befehlen füttern kann.
Das Einzige Problem beim Programmieren ist hier, wenn man am Seriellen Ausgang (TX1) eine MIDI Buchse aktiviert, hat man
leider keine Möglichkeit für eine Fehlersuche den Seriellen Monitor zur Fehlersuche im Programm gleichzeitig zu Aktivieren.
Das Programmieren…
Den Code Poste ich hier nicht, da ich im Programmieren extrem schlecht bin, und mich jeder mit nur halbwegs moderaten
Programmierkenntnissen an den Pranger stellen würde (Für Eingeweihte: Mein Programm strotzt nur so von If Befehlen…).
Für jeden, der Lust hat hier etwas selber auszuprobieren: Man braucht hier nicht wirklich viel an Material.
Ein Arduino UNO, ein Breadboard, ein paar Buchsen, Schalter und Widerstände, evtl. noch ein kleines Display, da ist man
mit 25-30 Euro dabei.
Für Einsteiger kann ich sehr empfehlen, sich hier einmal durch zu klicken:
Hier erklärt der Autor Schritt für Schritt, wie man sich einen MIDI Controller selber bauen kann.
Etwas Elektronik und Programmierkenntnisse sollte man bei aufwändigeren Projekten allerdings schon haben, da ich mich erst
durch einige Seiten klicken musste, um hier brauchbare librarys zu finden, da ich das Projekt so umsetzen wollte, das das Gerät
mit Drehencodern und nicht mit Tasten einzustellen ist.
Die Werte für die verschiedenen Programmbänke werden hier im Internen EEPROM des Arduino abgelegt, was hier relativ einfach ist,
da ich nur die Werte von 0-127 abspeichern muss, und jede Speicheradresse im EEPROM mit 8 Bit hier allemal ausreicht.
Einen kleinen Hinweis: Beim abspeichern (überschreiben) von Werten im EEPROM bitte vorher den Programmcode seeehr genau prüfen.
Das EEPROM kann man etwa 100 000 mal überschreiben.
Das hört sich zwar nach viel an, wenn das allerdings bei jedem Programmzyklus passiert und nicht nur einmalig z.B. bei einem Tastendruck,
ist das EEPROM eventuell schon nach ein Paar Sekunden hin.
Die Praktische Umsetzung…
Das größte Problem stellte sich mit der Beschaffung des Gehäuses heraus.
Hier habe ich leider nur ein gescheites Gefunden: Hammond 1590BX2.
Das Gehäuse konnte ich dann aus Platzgründen leider nicht mehr mit einem kleinem LCD Display bestücken, sondern musste aus Platzgründen
auf ein kleines OLED Display zurückgreifen.
Vorteile: Viel kleiner, und ein geringerer Stromverbrauch, da hier keine Hintergrundbeleuchtung benötigt wird.
Nachteile: Trotz des doch übersichtlichen Programms ist der Arduino Programmspeicher auf Grund des Displays zu 95%
Ausgereizt, und das OLED Display verlangsamt das Verstellen der Programmiereinstellungen am Pedal extrem.
Aufgebaut habe ich alles Erst einmal auf dem Schreibtisch mit einer losen Verdrahtung auf dem Breadboard, bevor ich das Gehäuse zerbohre.
Hier hatten wir dann noch die Idee, zwei Expression Pedale mit einzubinden, die erst eimal mit zwei Potis
an den Analog-Eingängen des UNOs simuliert wurden.
Hier erst einmal der Schreibtisch -Testaufbau, um das Programm zum Laufen zu bekommen.
Der Aufbau…
Da mir der Arduino zu groß ist, habe ich mir eine kleine Platine gebaut, um den Atmel Prozessor als UNO Clon zu benutzen.
(Sieht nicht allzu doll aus, aber mehr gab die Küchentisch Werkstatt nicht her…)
Hier die nackte Platine
Zum Programmieren braucht man hier nur noch einen USB-Seriell Adapter (FTDI), da der Prozessor selber keine USB Schnittstelle hat.
Das Gehäuse…
Als Bohrschablone habe ich mir hier mit dem Platinenprogramm einen transparenten Aufkleber gedruckt, was das Körnen und Bohren sehr erleichtert.
Das Rohgehäuse
Nachdem alles Gebohrt und Der Displayauschnitt gesägt ist, 1x grundiert und mit der Sprühdose silber lackiert.
Ich wollte hier zwar eine knallige Farbe, hatte aber nur noch eine halbe Dose Felgenlack gefunden.
Mit einer Decal-Folie noch die Beschriftung hergestellt, aufgeklebt und zu guter letzt mit Klarlack versiegelt.
Hier hatte ich ziemlich gepfuscht, wollte aber nicht alles wieder abschleifen, neu bekleben und wieder lackieren.
Die Kontrolle LED´s habe ich einfach mit Zweikomponenten-Kleber eingeklebt und Plangeschliffen.
Die komplette Platine.
Hier sieht man schön was so ein Arduino eigentlich ausmacht: Prozessor, ein Quartz, drei Kondensatoren und einen Widerstand
(Ein Paar Teile sind noch auf der Rückseite als SMD Bauteile direkt aufgelötet).
Mehr braucht es nicht. Die Anderen Teile sind nur noch die Stromversorgung, die Vorwiderstände für die LED´s und etwas Beschaltung,
um den Seriellen Programmieradapter zum Umprogrammieren aufstecken zu können.
Die aufgebaute Platine. Aus Platzgründen habe ich auf Steckkontakte verzichtet und die Kabel mit Kleber gesichert.
Jetzt erst einmal alles in das Gehäuse einsetzen…
Dann noch alles verlöten, und den Deckel drauf!
Hier noch einmal die Funktionen:
Den Mode Encoder ein Paar Sekunden drücken, dann kommt man ins Setup -Menü.
Hier stellt man für jeden Taster zwei MIDI Programmbänke ein, die Umgeschaltet werden sollen.
Als nächsten Schritt wählt man an, ob der Taster zwischen den beiden Programmbänken permanent umschaltet,
oder der zweite Befehl nur bei gedrücktem halten des Tasters gesendet wird, und beim Loslassen wieder der Erste Befehl gesendet wird.
Beim weiterdrehen des Mode Encoders kann man die MIDI CC´s für die beiden Expression-Pedale einstellen.
Als letzten Bedienschritt noch der MIDI Sendekanal 1-16.
Verändert werden die Werte mit dem zweiten Encoder, die Werte werden hier beim drücken gespeichert.
Die Werte lassen sich hier leider durch die Verwendung des OLED Displays nur sehr langsam verstellen (etwa 3 Schritte pro Sekunde).
Wenn hier ein LCD Display verwendet wird geht das deutlich schneller. Das kann ich im Moment verschmerzen, denn die Einstellungen
werden hier nicht alle paar Minuten geändert. Für Infos von versierten Programmierern um hier Abhilfe zu schaffen habe ich aber immer
ein offenes Ohr.
Die Menüpunkte:
Der MIDI Programmkanal beim ersten drücken des Tasters (oder loslassen)
Der MIDI Programmkanal beim zweiten drücken des Tasters (oder gedrückt halten)
Anwahl ob der Taster als um-Taster(1) oder um-Schalter (0)funktioniert
Die beiden CC Kanäle für die beiden Expression-Pedale
Der MIDI Sendekanal
Hier noch das Fertiggerät:
So, fertig!
Für alle Selbstbauer: Das Projekt war nicht mal eben in ein Paar Tagen fertig! Das hat schon mehrere Wochen gedauert.
Also nicht bei solchen Bastelarbeiten entmutigen lassen.
Das Lackieren muss ich noch etwas perfektionieren, da habe ich leider nicht so viel Geduld.
Und falls jemand eine Bezugsadresse hat um endlich einmal Professionell aussehende Display-Abdeckungen zu beschaffen,
bitte gerne in die Kommentare schreiben.
Andreas
- Eigenschaft
Anhänge
Grund: Schreibfehler korrigiert
Zuletzt bearbeitet: