Moin Dirk,
ich hatte das weiter oben schon mal geschrieben, ich habe auf dem µC einen Arduino Bootloader installiert, um den Controller über den UART / per USB programmieren zu können (außerdem habe ich beim Rackgerät eh den ISP-Wannenstecker weggelassen). Ich hab allerdings keinen Arduino-Atmel gekauft, sondern den Bootloader mit meinem Programmiergerät selbst auf den nackten Controller gebrannt. Sonst sind die ja viel zu teuer
.Ich hab den Bootloader außerdem selbst kompiliert, weil ich irgendwas anpassen musste - kann mich aber nicht mehr erinnern, was.
Wenn ich das Teil endgültig zusammen- und ins Rack baue, kommt der Bootloader vorher wieder runter. Ich hab das auch mal ausprobiert, ohne Bootloader kommt das Relais für die Einschaltverzögerung quasi sofort nach dem Einschalten. Ob die Einschaltverzögerung jetzt sinnlos war oder nicht, lasse ich mal dahin gestellt. Schaden tut's nicht, wenn man die Relaisspannung per µC überwachen kann.
Ich nutze die Gelgegenheit dann gleich mal für ein Resümee, denn gestern ist die Software für die Rackeinheit quasi fertig geworden. Zusammenfassend hat meine Anlage jetzt folgende Features:
FloorboardFeatures:
- 16 numerische Taster zur Programm- (Presetmodus) bzw. Effektwahl (Stompboxmodus), dazu Up/Down/Edit/Direct, 20 LED und ein großes 2x16 Zeichen LCD
- Preset- und Stompboxmodus
- 400 Presets in 25 Bänken zu 16 Presets
- Für jeden der 16 Midikanäle ein Gerät namentlich anlegbar
- über die 16 Taster Zugriff auf 32 Instant Access Taster, jeder Taster also doppelt belegt (Shiftfunktion)
- Presetwechsel im Stompboxmodus über Up/Down möglich
- Pro Preset können bis zu 16 PC- und 32 CC-Befehle gesendet werden
- Vier Modi für die Fußtaster: Taster, Schalter, Schalter mit senden des gespeicherten Status bei Presetwechsel, Tap Tempo[1]
Fehlende Features / To Do:
- Mischbetrieb aus Preset- und Stompboxmodus, also z.B. Vier Preset- und 12 IA-Taster: Weiß nicht ob ich das noch realisiere, mal abwarten, ob ich's brauche. Mein Bedarf, Presets zu schalten, ist überschaubar, der Stompboxmodus ist zu 95% der, den ich brauche.
- Tastergruppen: Taster, die sich gegenseitig zurücksetzen, z.B. für Kanalwahl am Amp - Kanal 1 / 2 / 3, und immer nur einer darf aktiv sein. Mache ich evtl. noch
- Die Software hat im Bereich des Editierens noch ein paar Bugs / Inkonsistenzen in der Menü- und Benutzerführung. Funktionell ist alles top, von daher bleibt das wahrschinlich liegen .
- Zugriff auf die Shiftfunktion der Taster: Bisher schalte per dezidiertem Taster zwischen 1-16 und 17-32 um. Schön wäre, durch langes Drücken die Sekundärfunktion des Tasters auslösen zu können. Funktioniert auch, beißt sich aber, wenn ein Fußtaster als Tastfunktion eingerichtet ist. Habe ich noch keine Lösung für, ist mir aber das wichtigste fehlende Feature und wird daher bestimmt irgendwie noch kommen.
- Eventuell baue ich beim Presetabruf noch mal eine Verzögerung von ein paar Milisekunden zwischen dem Senden von PC und CC ein. Bei meinem G-Major2 habe ich festgestellt, dass die CCs für die Effektblöcke ohne Probleme ausgewertet werden, die CCs für die Modifikatoren (ich nutze z.B. MOD2 zur Geschwindigkeitsumschaltung des Vibe) scheinen aber verloren zu gegen.
RackeinheitFeatures:
- 12 Loops organisiert in drei Ketten zu je vier Loops
- 6 potentialfreie Schaltkontakte
- Anzeige des Loop-/Schalterstatus per LED [2]
- Hardwareseitig vorbereitet für bis zu 32 Relais, 18 bisher genutzt
- Empfang auf Midikanal 1
- Schalten der Relais über CC#
Fehlende Features / To Do:
- Keine Presets, keine Programmierung
- Midikanal nicht[3] konfigurierbar
- CC# nicht[3] konfigurierbar
[1] Die Tap Tempo Funktion ist noch unausgereift. Ein Tap Taster arbeitet wie ein Schalter, aber die LED blinkt dann im getappten Tempo. Derzeit gibt es nur eine Timerroutine dafür, also auch nur einen LED-Blinkrythmus. Außerdem verschluckt sich das ganze manchmal. Ist also noch Überarbeitungsbedarf da.
[2] Die LED sind nicht programmierbar, sondern den Relais einfach parallel geschaltet
[3] Nicht ohne Eingriff in die Software. Für den Midikanal baue ich evtl. noch ein Mäuseklavier ein, Einstellbarkeit der CC# bringt für mich keinen Mehrwert.
An der Floorboardsoftware mache ich auf jeden Fall noch was, die Rackeinheit ist für meinen Bedarf, glaube ich, fertig, die kommt diese oder nächste Woche wieder ins Rack.
Insgesamt bin ich sehr zufrieden mit dem vorläufigen Ausgang des Projekts, weil ich auch sehr viel dabei gelernt habe - für mich immer fast wichtiger als die Fertigstellung der eigentlichen Gerätschaft. Mein Ziel, meine Anlage zu midifizieren und so die Bedienung meiner Pedale unter einen Hut zu bringen mit 19"-Gerätschaften habe ich, wenn auch erst nach sehr langer Zeit, erreicht. Beide Geräte sind sehr schnell. Latenzen konnte ich bisher nicht feststellen, zumindest sind sie nicht spürbar.
Dem aktuellen Stand der Technik hinken meine Gerätschaften natürlich schon wieder hoffnungslos hinterher - siehe z.B. die Entwicklung der RJM- oder der Axefx-Controller. Andererseits bieten meine Teile schon jetzt deutlich komplexere Möglichkeiten als ich brauche, insofern: Who cares.
Die nächsten Tage gehe ich noch mal über alle Platinen und Pläne und schaue, wie komplett und fehlerfrei die sind, und dann stelle ich die noch mal ein. Wie immer gilt bei mir aber, dass das Zeug eher als Infomaterial nutzbar denn nachbaubar ist, weil beim Aufbau auch wieder einiges improvisiert wurde.
Wer die Software haben will, kann sich bei mir melden. Den (letzten?) Softwarestand werde ich dann wahrscheinlich auch hier einstellen. Auch hier gilt: Nur bedingt zum Nachbau geeignet. Und, ich hab's schon mal gesagt, ich bin programmiermäßig eher ein Rookie, weshalb der Code weder schön noch resourcenschonend oder besonders performant ist. Besserer Code käme möglicherweise mit einem kleineren Controller als dem 328P aus, aber da ich nicht in Serie gehe noch mal: Who cares.
In diesem Sinne,
Nils