Bugfixes

Aus KeyboardPartner Wiki
Zur Navigation springenZur Suche springen

Bugfixes und Änderungen

Bugfixes beheben ernste Probleme, die einzelne Funktionen stören oder komplett lahmlegen. Je nach Anwendungsfall kann es erforderlich sein, das HOAX-Modul upzudaten oder einzusenden. Änderungen sind eher kosmetischer Natur, ein Firmware-Update ist hier üblicherweise nicht erforderlich. Als Update gekennzeichnete Einträge umfassen umfangreiche Arbeiten an der Firmware, die möglicherweise eine Neuverdrahtung bestimmter Baugruppen oder ein Neuprogrammieren des Controller-EEPROMs (eigene Presets werden hierbei überschrieben!) erfordern. Alternativ zur Programmierung des EEPROMs mit AVRdude empfehlen wir folgendes Vorgehen:

Auch unabhängig von Firmware- und FPGA-Updates veröffentlichen wir neue EEPROM-Parametersätze als Patches, genauer gesagt als TeraTerm-Macro PATCH_MACRO.ttl in unserem GIT-Repository. Das Macro (Textdatei, Erstellungsdatum siehe dritte Zeile) aktualisiert die im HOAX-Controller-EEPROM abgelegten Parameter automatisch, ohne die Presets oder die eingestellte Scan-Routine zu verändern; es ist lediglich die serielle Verbindung zum HOAX/HX3 mit dem FTDI-Kabel und das Terminal-Programm TeraTerm (Windows, Freeware) notwendig. Auf diese Weise können Sie eine Neuprogrammierung des EEPROMs über AVRdude vermeiden. Testen Sie aber die TeraTerm-Verbindung und -Einstellungen, bevor Sie das Macro starten.

Der Vorgang des Updates ist unter Firmware- und FPGA-Update beschrieben. 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.

Im unserem GIT-Repository habe ich jetzt einen Unterordner "BETA" angelegt, der brandaktuelle Neuerungen umfasst. Die Firmware wird bei ausgelieferten Platinen verwendet. I.d.R. komplette Neuprogrammierung von FLASH und EEPROM sowie Hochladen der beigefügten FPGA-Konfiguration erforderlich. Erfahrungen und Fehlermeldungen bitte an <info@keyboardpartner.de>

Last releases of firmware could be found directory "BETA" in our GIT-Repository. Usually needs complete programming of FLASH and EEPROM, also reload of FPGA configuration.

AVR Version 3.2, FPGA Version 02012013

New Features: Reloadable FIR filter for Leslie horn emulation, better "throb" and overall effect

Ab dieser Version wird ein neues, sehr viel genaueres Verfahren zur Modellierung des charakteristischen Frequenzgangs des Jensen V21 Horntreibers verwendet. Es eliminiert ebenso die früher durch Biquad-Rundungsfehler aufgetretenen Nebengeräusche. Die neue FPGA-Konfiguration 02012013 benötigt eine Neuprogrammierung der Controller-Firmware (Version 3.2) samt EEPROM. Die Leslie-Simulation ist nur noch in Mono; der "linke Kanal" (Klinkenstecker-Ring) der Leslie-Ausgangsbuchse führt nun das Signal nach dem "147-Amp" (inkl. Overdrive, regelbar über Leslie Volume-Poti) ohne Leslie-Effekt.

Hintergrund: Anstelle der bislang verwendeten Biquad-Filter wird ein so genanntes FIR-Filter mit der Original-Impulsantwort des Leslie-Horns benutzt. Die 512 Integer-Filterkoeffizienten sind im Controller-EEPROM abgelegt und können mit den Parametern 2000 bis 2511 neu geladen werden; ich werde "auswechselbare" Impulsantworten verschiedener Leslies demnächst als Patch-Makro zur Verfügung stellen. Das FPGA berechnet die Faltung (diskrete Fourier-Transformation) mit dem Hochton-Signal der Frequenzweiche mit 50 Millionen Berechnungen pro Sekunde; für jedes der 48000 Samples pro Sekunde sind 512 Multiplikationen und Additionen notwendig. Normale DSPs geraten hierbei schon an ihre Grenzen - das FPGA erledigt diese Aufgabe quasi nebenbei!

Bitte beachten

Dieser Versionssprung erfordert Neuprogrammierung des ATmega644 mit FLASH und EEPROM sowie Hochladen der beigefügten FPGA-Konfiguration über TeraTerm-Makro, ggf. auch Neueingabe der Lizenznummern.

Varianten: 
HOAX_main.hex           Flash-Dastei zum Upload per AVRdude, Button Presets oder Preset16-Panel
HOAX_main_latching.hex	Flash-Dastei zum Upload per AVRdude, Latching Presets (einrastende Tasten)
HOAX_boot_main.hex      Flash-Dastei komplett mit Bootloader, für OEM-Programmierung über ISP-Programmer
HOAX_main.eep           EEPROM-Datei zum Upload mit AVRdude oder Programmierung über ISP
main_midi.bit           FPGA-Konfiguration 02012013, in Ordner FPGACORES zu kopieren für Upload

Erfahrungen und Fehlermeldungen bitte an <info@keyboardpartner.de> Bitte beachten Sie die ausführliche Anleitung auf http://wiki.keyboardpartner.de!

Important

Version AVR: #3.20 Version FPGA: 02012013 needs complete programming of ATmega644 FLASH and EEPROM, also reload of FPGA configuration and re-entry of licence numbers. Please regard installation instructions on http://wiki.keyboardpartner.de!

Variants: 
HOAX_main.hex           Flash file for serial upload via AVRdude, button presets or Preset16
HOAX_main_latching.hex	Flash file for serial upload via AVRdude, latching presets
HOAX_boot_main.hex      Flash file complete with Bootloader, for OEM programming by ISP programmer
HOAX_main.eep           EEPROM file for upload via AVRdude or ISP programming
main_midi.bit           FPGA configuration 02012013, to be copied in dierctory FPGACORES

Version History

  • Update Firmware #3.20 und FPGA-Konfiguration 02012013: Deutlich verbesserte Leslie-Simulation durch FIR-Konvolutionsfilter, weniger Störgeräusche. FLASH-, EEPROM- und FPGA-Neuprogrammierung erforderlich!
  • Update Firmware #3.11: Schweller-Steuerung verbessert, Funktion "Disable MIDI IN Controllers" wenn auf Parameter "MIDI option" (510) +4 addiert wird (also 4..6 statt 0..2). Aufspielen der neuen FPGA-Konfiguration 19122012 empfehlenswert, ebenso EEPROM-Programmierung oder Patch-Makro 3.11
  • Update Patch-Makro #3.11: Perkussion exakt nach Hammond B3 von Lutz Krajenski
  • Update FPGA-Konfiguration #19122012: Nebengeräusche bei oberen Tonlagen und gesamtes Tapering verbessert; ausgewogenerer Klang in unteren Mittellagen, nicht mehr so "nasal"
  • Änderung Firmware #3.10: Wenn nur ein Preset16-Panel angeschlossen ist, werden obere und untere Tastenreihe auf Ober- und Untermanual aufgeteilt, es stehen also mit nur einem Preset16 (Jumper "Upper" setzen!) zweimal 8 Presets zur Verfügung
  • Update Firmware #3.09: Spezielle Version für "Latching Preset Keys" (siehe Preset12 MPX) online
  • Änderung Firmware #3.09: Owner-Info (Name) jetzt im EEPROM vermerkt und mit 9990? abrufbar bzw. 9990="Vorname Name" änderbar (Schreibfreigabe mit WEN=1 erforderlich)
  • Patch Patch-Macro 25.09.2012: Geeignet ab FPGA-Konfiguration #24092012 und Firmware #3.08, neue EEPROM-Parameter Leslie-Equalizer
  • Update FPGA-Konfiguration #24092012: Leslie-Nebengeräusche (Digitalisierungsrauschen) stark vermindert, Firmware #3.08 erforderlich wg. Parameter-Änderungen (Lautsprecher-Simulationsparameter).
  • Update Firmware #3.08: Percussion Volume Normal führt jetzt standardmäßig zu einer Absenkung des Zugriegel-Pegels wie beim Original. Änderungen einiger Parameter, erfordert EEPROM-Neuprogrammierung (Alternative: Parameter-Macro, siehe oben)
  • Update Firmware #3.07: Manual Split jetzt immer "live", Sustainzeit-Steuerung verbessert, bisher unbenutzte PL12 Pins 1 bis 3 jetzt Ausgänge für ext. Leslie-Steuerung (siehe auch Zubehör-Platinen zum Selberbauen)
  • Bugfix Firmware #3.05: Bug in Leslie-Steuerung behoben (ließ sich bei Preset nicht am Panel ändern), Leslie-Minimallautstärke angepasst, MIDI-Controller-Steuerung verbessert
  • Änderung FPGA-Konfiguration #01092012: Basspedal-Lautstärke wieder etwas abgesenkt (6dB), Nebengeräusche/Verstärker-Rauschen optimiert
  • Änderung FPGA-Konfiguration #31072012: Basspedal-Lautstärke um 12 dB angehoben
  • Bugfix Firmware #3.04: Vibrato-Zuordnung V2/C2 war fehlerhaft, kleiner Bug in Parser
  • Bugfix Scancores Rev. #6, Scancore 3 für Scan4014-16 44-Tasten-Manuale und Scancore 0 für OrganScan61: Problem mit Bass-Split Untermanual behoben
  • Änderung Firmware #3.03: Einschaltmeldung zeigt jetzt Lizenznummern an, EEPROM und gespeicherte Presets werden bei Neuprogrammierung beibehalten

Die aktuellsten Einträge finden Sie oben. Ausgelieferte Erstversion war Firmware #3.02, FPGA-Konfiguration #21022012 und Scancore Rev. #4 bzw. #5.