====== Konfiguration ======
Die Konfiguration wird über den USB-Port oder per Telnet vorgenommen und im EEPROM des Microkontrollers gespeichert. Die geänderten Werte sind sofort aktiv.
Wird die Firmware erstmals installiert, so befindet sich die USB-Schnittstelle im HEX-Modus.
Die Firmware gibt die eingegebenen Zeichen nicht als Echo an das Terminalprogramm zurück. Wer nicht blind tippen möchte, kann das lokale Echo des Terminalprogramms einschalten.
Tippfehler lassen sich mit **Backspace** (ASCII 0x08 bzw. ^H) korrigieren. Um BS korrekt zu senden, muss in PUTTY der Backspace-Key in den Optionen auf ^H gesetzte werden!
Es gibt folgende Befehle (Groß-/Kleinschreibung wird beachtet!):
=== Ethernet: ===
* '**Ki** xxx.xxx.xxx.xxx' Setzen der IP-Adresse
* '**Km** xxx.xxx.xxx.xxx' Setzen der Netzwerkmaske
* '**Kg** xxx.xxx.xxx.xxx' Setzen des Gateways
* '**Kn** xxx.xxx.xxx.xxx' Setzen des NTP-Servers
=== Optionen: ===
* '**Kr**' Umschaltung in den **RAW-Modus** (0 - Hex / 1 - RAW) - betrifft nur Empfang!
* '**Ks**' Aktivierung der **SD-Card** (0/1)
* '**Ka**' **EMS-Busadresse** in dezimal (normalerweise 0x0B = 11)
* '**Kp**' Empfange **Polling** auf dem EMS-Bus
* '**Kc**' **Catch All** Empfange Telegramme, die nicht an das GW direkt gerichtet sind
* '**Kt**' Berechne beim Senden die **Checksumme** automatisch
* '**Kl**' **Auflisten** der Einstellungen
* '**Ke**' **EMS-Bus** Paketstatistik
* '**Kd**' **Debuging** Debug-Nachrichten (0 /1)
* '**Kj**' **JSONP** oder JSON Antworten
=== Werte: ===
* '**KS**' **EMS-Werte** Aufsummierte Leistungsdaten
* '**KK**' **EMS-Werte** Temperaturen Heizung
* '**KH**' **EMS-Werte** HK1 Werte
=== CAN-Bus: ===
* '**KC**' **CAN Catch ** Empfange CAN-Telegramme (0/1)
* '**K1**' **CAN Config ** Wert für BRDCON1 des ECAN
* '**K2**' **CAN Config ** Wert für BRDCON2 des ECAN
* '**K3**' **CAN Config ** Wert für BRDCON3 des ECAN
=== Spezial: ===
* '**BootloadMode!**' Starten des [[bootloader|Bootloaders]] (siehe Anleitung)
* '**RESET!**' Neustart des EMS-GW
=== Sendeformate: ===
* '**HEX(terminal)** : xx xx xx xx xx xx' (xx ist jeweils eine Hex-Zahl (ASCII))
* '**RAW(altes Format)** : 0xaa 0x55 0x00 0xaa 0x55' (alles binär)
* '**RAW(collector)** : 0xaa 0x55 '
**In Senderichtung wird nicht zwischen den verschiedenen Modes unterschieden! In welchem Format die Daten vorliegen, wird automatisch erkannt!**
===== Telnet Schnittstelle =====
Das Telnet Protokoll ist nicht 8-Bit tauglich, da z.B. 0xff eine Steuersequenz darstellt. Daher die folgende Regel: Beginnt eine Zeile mit 0xaa 0x55, so ignoriert der Telnet-Server Steuersequenzen. Ein folgendes 0xaa 0x55 stellt das Zeilenende dar. Die Bytes zwischen den 0xaa 0x55 werden an den Kommandointerpreter übergeben und wie oben interpretiert.
{{wiki:ems:telnet1.jpg|}}
====== Fehlermeldungen ======
^Nummer^Bedeutung^Ursache^
|0x01| CRC-Fehler | Ein empfangenes Telegramm auf den Bus hat eine falsche Prüfsumme. |
|0x02| Frame-Error | Die UART hat einen Paritätsfehler gemeldet. Das empfangene Byte ist fehlerhaft. |
|0x03| Overrun-Error | Die UART meldet ein Overrun Fehler. Das EMS-GW holt die empfangenen Bytes zu langsam ab. |
|0x04| Buffer-Overflow | Ein empfangenes Paket überschreitet die Bufferlänge. |
|0x05| Bus-Echo-Error | Das vom Master gesendete Echo entspricht nicht dem von EMS-GW gesendeten Byte.|
|0x06| Send-Failed | Ein vom EMS-GW gesendetes Telegram wurde nicht mit 0x01 quittiert.|
|0x10| Telegram-Buffer-Overflow|Die 4 vorhandenen EMS-Empfangspuffer reichen nicht aus - ggf. Timingproblem in der Software. |
|0x20| Telegram-Buffer-Overflow|Die 8 vorhandenen CAN-Empfangspuffer reichen nicht aus - ggf. Timingproblem in der Software. |
====== LEDs (ab v131209) ======
* LED 1 (RA0): Diese LED leuchtet bei empfangenen und gesendeteten Telegrammen auf dem EMS BUS kurz auf
* LED 2 (RA1): Diese LED leuchtet bei empfangenen und gesendeteten Zeichen (USB/Telnet) kurz auf
Beide LED's werden in den jeweiligen Funktionen an und im 10Hz Interrupt wieder abgeschaltet, so dass sie nur kurz aufblitzen.