Firmware- und FPGA-Update: Unterschied zwischen den Versionen
Bovist (Diskussion | Beiträge) |
Bovist (Diskussion | Beiträge) |
||
Zeile 5: | Zeile 5: | ||
== Update der Controller-Firmware per Bootloader == | == Update der Controller-Firmware per Bootloader == | ||
Der AVR-Controller ATmega644 kümmert sich auf der HOAX-Platine um die Abfrage der Bedienelemente und die Auswertung der empfangenen MIDI-Controllernummern. Bei kleineren Änderungen der Firmware sollte keine EEPROM-Programmierung erforderlich sein; Sie müssen dann nur ''hoaxflash.bat'' ausführen. ''hoaxflasheeprom.bat'' dagegen beschreibt auch das EEPROM neu. VCP-Treiber für '''FTDI-Kabel''' und ggf. Terminal-Programm '''TeraTerm 4.7x''' müssen installiert sein (siehe [[Inbetriebnahme der Bausatz-Platine]]). Das benötigte Flash-Tool '''AVRdude''' ist im HOAX-Ordner bereits vorhanden, es sollte von den Batch-Dateien aufgerufen werden (außer, Sie wissen, was Sie tun!) | Der AVR-Controller ATmega644 kümmert sich auf der HOAX-Platine um die Abfrage der Bedienelemente und die Auswertung der empfangenen MIDI-Controllernummern. Bei kleineren Änderungen der Firmware sollte keine EEPROM-Programmierung erforderlich sein; Sie müssen dann nur ''hoaxflash.bat'' ausführen. ''hoaxflasheeprom.bat'' dagegen beschreibt auch das EEPROM neu. VCP-Treiber für '''FTDI-Kabel''' und ggf. Terminal-Programm '''TeraTerm 4.7x''' müssen installiert sein (siehe [[Inbetriebnahme der Bausatz-Platine]]). Das benötigte Flash-Tool '''AVRdude''' ist im HOAX-Ordner bereits vorhanden, es sollte von den Batch-Dateien aufgerufen werden (außer, Sie wissen, was Sie tun!). Der COM-Port muss für AVRdude zugänglich sein, d.h. TeraTerm ggf. vorher beenden. | ||
'''Achtung:''' Das Programmieren des Controller-EEPROMs überschreibt alle nachträglichen Einstellungen und eigene Presets, ebenso wie die Seriennummer-Freischaltcodes, die dann neu eingegeben werden müssen. | '''Achtung:''' Das Programmieren des Controller-EEPROMs überschreibt alle nachträglichen Einstellungen und eigene Presets, ebenso wie die Seriennummer-Freischaltcodes, die dann neu eingegeben werden müssen. |
Version vom 22. Dezember 2012, 11:54 Uhr
Setzt eine funktionierende Platine mit Bootloader voraus. Vorbereitung des USB-Kabels und Download der Firmware/Dokumentation wie unter Inbetriebnahme der Bausatz-Platine beschrieben. Das Upgrade/Update verlangt gewisse Kenntisse im Umgang mit Programmier-Tools; sollten Sie sich dies nicht zutrauen, können Sie die Platine auch einsenden und im Keyboardpartner-Shop für 10 Euro zzgl. Rücksendung ein Update bestellen.
Update der Controller-Firmware per Bootloader
Der AVR-Controller ATmega644 kümmert sich auf der HOAX-Platine um die Abfrage der Bedienelemente und die Auswertung der empfangenen MIDI-Controllernummern. Bei kleineren Änderungen der Firmware sollte keine EEPROM-Programmierung erforderlich sein; Sie müssen dann nur hoaxflash.bat ausführen. hoaxflasheeprom.bat dagegen beschreibt auch das EEPROM neu. VCP-Treiber für FTDI-Kabel und ggf. Terminal-Programm TeraTerm 4.7x müssen installiert sein (siehe Inbetriebnahme der Bausatz-Platine). Das benötigte Flash-Tool AVRdude ist im HOAX-Ordner bereits vorhanden, es sollte von den Batch-Dateien aufgerufen werden (außer, Sie wissen, was Sie tun!). Der COM-Port muss für AVRdude zugänglich sein, d.h. TeraTerm ggf. vorher beenden.
Achtung: Das Programmieren des Controller-EEPROMs überschreibt alle nachträglichen Einstellungen und eigene Presets, ebenso wie die Seriennummer-Freischaltcodes, die dann neu eingegeben werden müssen.
- Ggf. aktuelles "HOAX_main.hex" und "HOAX_main.eep" aus unserem GIT-Repository downloaden (als Raw-Text) und in das "C:\HOAX"-Verzeichnis kopieren
- Alternativ (und sicherer, Sie haben dann immer die neueste Dokumentation): Komplettes git-Repository als ZIP downloaden, entpacken und unter Beibehaltung der Verzeichnisstruktur in HOAX-Ordner kopieren; dann sind auf jeden Fall die COM-Partameter in den Batch- und Makro-Dateien erneut anzupassen (evt. Backup Ihrer Einstellungen aufbewahren)
- Platine mit Strom versorgen (5V/500mA)
- JP7 und JP8 müssen gesteckt sein
- JP5 setzen
- Windows "Command Prompt" im Verzeichnis "C:\HOAX" aufrufen, hoaxflash (oder hoaxflasheeprom für Neuprogrammierung auch des EEPROMs) eintippen, aber Befehl noch nicht mit ENTER abschicken
- Weiteren Jumper auf Position R quer auf PL1 setzen, das sind die beiden mittleren Pins 5 und 6 genau in der Mitte (grüner Jumper im Bild)
- FTDI-Kabel an HOAX-Platine anschließen; GND = Pin1 = schwarzes Kabel!
- Jumper auf Position R abziehen, LED1 muss 5x aufblitzen. Möglichst während die LED noch blinkt, in Windows Command Prompt "hoaxflash.bat" aufrufen, d.h. jetzt die ENTER-Taste drücken
- AVRdude programmiert Controller mit HEX- und ggf. EEP-Datei seriell und führt Verifikation der Daten durch
- Falls "out of sync" oder "verification error", Vorgang wiederholen
Update der FPGA-Konfiguration (HX3-Sound-Engine)
Das FPGA ist der eigentliche Klangerzeuger und -verarbeiter der HX3-Platine; zusätzlich enthält es noch einen Mini-Controller für die Tastaturplatinen, der die eingestellte Scan-Routine abarbeitet. Beim Update der FPGA-Konfiguration sowie der Scan-Cores und Hallprogramme bleiben eigene Presets und Einstellungen sowie die Lizenz-Freischaltungen bestehen.
- JP7 und JP8 müssen gesteckt sein
- Ggf. aktuelle "main_midi.bit", "HX_*.dat" und "hoax3rev.bin" in Unterverzeichnis "FPGACORES" kopieren
- In der Makro-Datei "HOAX_UPLOAD.TTL" in "\TERATERM_MACRO" Pfade "mypath=..." kontrollieren (mehrfach vorhanden, mit Texeditor zu öffnen) und ggf. auf aktuellen Pfad zu "<drive>:\HOAX\FPGACORES" setzen (Default C:\HOAX\FPGACORES)
- TeraTerm starten und serielle Verbindung (57600/8n1) mit HX3-Platine herstellen, muss ENTER mit "#0:255=0 [OK]" beantworten
- Makro "HOAX_UPLOAD.TTL" mit "Control/Macro..." öffnen/ausführen, Anweisungen folgen
- Frage "Upload FPGA configuration?" mit Ja beantworten
- Bei Frage nach Scan Core folgende Ziffern eingeben:
- Core 0 = Chained OrganScan61 (alt, von Projekt Klangcomputer), mit ein bis drei Platinen in Reihe an PL14
- Core 1 = MIDI receive only
- Core 2 = ScanFatar2 mit ein oder zwei Manualen an PL14, ggf. zusätzlich Bass-Scanplatine mit 4014-SR an PL15
- Core 3 = Scan4014-Strip/Bass parallel 2x 44 Tasten, 2x 3 Platinen an PL15
- Core 4 = Scan4014-Strip/Bass parallel 2x 49 Tasten, 2x 3 Platinen an PL15
- Core 5 = Scan4014-Strip/Bass parallel 2x 61 Tasten, 2x 4 Platinen oder ein bis drei Scan4014-Inline parallel an PL15
- Core 6 = Test-Routine (Auslieferungszustand)
- Core 7 = OptoScan von B.A.S.S. an PL14
- Bei nicht vollständig bestückter Platine (R-Netzwerke fehlen) immer Core 6 (Testroutine) wählen, HOAX ist sonst evt. nicht mehr ansprechbar!
- Damit AVRdude wieder auf das FTDI-Kabel zugreifen kann, muss TeraTerm beendet oder Verbindung mit ALT-I unterbrochen werden!