Release-Notes für die EasyControl Software (XN-Control) ======================================================= Alle Versionen mit angehängten Buchstaben sind interne Testversionen und nicht für den Einsatz beim Endkunden gedacht. Die endgültigen Versionen enthalten dann alle bei diesen Zwischenversionen genannten Fixes und Ergänzungen. Rev 2.2.3 (09.11.2019) - Fehlerbehandlung nach Übertragungsfehler auf dem XPressNet wie in der Doku beschrieben implementiert. Rev 2.2.2 (17.07.2019) - Übertragung der Funtkionen F16 - F31 per ANS_SETFUNCEX Rev 2.1.0 (09.10.2017) - Mögliche Endlosschleife bei Statusanfragen vom XPressNet zur MasterControl korrigiert (bei Paketverlust funktionierte der Timeout nicht und es konnte zum Hängenbleiben ohne Watchdog-Reset kommen). - Anpassung der Versionsnummer auf den Stand der MasterControl. Rev 1.2.0 (20.05.2017) - Versionsabfrage über EasyNet eingebaut (z.Zt. noch nicht genutzt). Einige Ergänzungen am EasyNet-Protokoll nachimplementiert. Rev 1.1.5 (24.12.2016) - Wartephase nach Anfrage auf dem XPressNet verkürzt. Lenz LW150 bekommt sonst einen Timeout. Rev 1.1.4 (14.12.2014) - XpressNet-Version wird jetzt als 3.6 (mit Control LH200) auf dem Bus angegeben. Dazu einige notwendige Funktionen (z.B. für F13 - F28) implementiert (Kompatibilität mit dem neuen Lenz-Handregler LH 01). Rev 1.1.3 (24.06.2012) - Forciertes Löschen des Empfangbuffers, wenn etwas gesendet wird, da dies bei Halbduplex dringend so zu handhaben ist. Dies vermeidet Timingprobleme bei verspätet gesendeten Antworten. - Fehler bei Adresserkennung auf dem XPressNet korrigiert. - Handling von Übertragungsfehlern verändert, da die ESU mobile control auf ein "Request for Acknowledge" mit Absturz reagiert (sendet fortwährend 0x40 oder 0x20 und blockiert so den Bus). Rev 1.1.2 (14.05.2012) - Ungewolltes Weichenschalten als Folge der Versendung alter EasyNet-Blocks aus der abgearbeiteten Sendequeue unterbunden. Potentielles Dead-Lock in Zusammenhang mit der EasyNet-Standard-Antwort beseitigt. (Änderung in einer produktübergreifenden Bibliothek) Rev 1.1.1 (16.04.2012) - Kleine Optimierungen beim Handling des XBUS-Protokolls. - Workaround für zu kurzen Timeout der LM(2) beim Blättern durch die Loks. In vielen Fällen benötigt die Anfrage der Lok-Informationen von der MC einige Millisekunden zu lange und daraufhin stellt die LM(2) dieselbe An- frage gleich noch einmal. Dadurch kam ein Anfrage-Burst zustande, der so- wohl den XBUS als auch das EasyNet und die MC stark belastet hat. Die LM(2) schien dann auch völlig blockiert. Nun wird diese Anfrage nur noch beim ersten Mal komplett über das EasyNet abgewickelt (und führt zu einem Time- out). Ab dann werden die Anfragen zur bekannten Lok nur noch aus dem aktuellen Status beantwortet (dafür aber sofort) und erst anschließend der Status über das EasyNet upgedated. Dadurch steht den XBUS-Teilnehmern die Information immer um ein Abfrageinterval verzögert zur Verfügung. Diese Maßnahme hat keinen Einfluß auf die Reaktionsgeschwindigkeit, wenn der XBUS-Teilnehmer die Lok steuert. Rev 1.1.0 (11.12.2011) - Einige Debugmeldungen via Standard-IO (Aufruf von putchar()) dürfen nur nach Einbinden der entsprechenden Debug-Unterstützung aufgerufen werden. Dies war ein Überbleibsel aus alten Tests und hätte nur konditionell mit eingebunden sein dürfen. Die entsprechenden Testmacros fehlten jedoch und so waren diese Aufrufe auch im Produktions-Code enthalten. Als Folge wurden unkontrolliert nicht vorhandene Handlerroutinen für Ausgaben aufgerufen und in der Folge alles Mögliche verstellt und teilweise per Aufruf des Null- Vectors auch wieder von vorne begonnen (Endlos-"Reboot"). - Einige Versuche, die Abstürze in den Griff zu bekommen, wieder auf den Vorherigen Stand zurückgesetzt (tatsächlicher Fehler siehe vorheriger Punkt). Rev 1.0.9 (05.12.2011) - Eleminierung einiger nicht abstellbarer Interrupts. - Geringfügige Reduktion des Speicherbedarfs (evtl. Stack-Overflows?). - Erkennung eines abgezogenen EasyNet-Buskabels umgestellt. Rev 1.0.8 (30.10.2011) - Umstellung des EasyNet-Protokolls nach Erweiterung auf 28 Funktionen (es können auf dem XPressNet nur Funktionen bis F12 genutzt werden). Rev 1.0.7 (02.08.2011) - Umstellung des EasyNet-Protokolls nach Ändern der fehlerhaften CRC- Berechnung. Optimierung an der Queueverwaltung des EasyNet. - Watchdog-Timeout verlängert. - Ein Flag vermerkt, ob eine XN-Bus-Änderung bereits an das EasyNet weiter- gegeben wurde. Rev 1.0.6 (18.08.2010) - Übertragung der Funktionen an XPressNet-Teilnehmer lieferte nur entweder die Licht-Funktion oder die anderen Funktionen (fehlerhafte Klammerung in einem Ausdruck). Rev 1.0.5a (18.08.2010) - Anpassung auf neue Teile der Easynet-Kommunikation (noch nicht ganz fertig) - Ausbau der Debug-Funktionen per DEFINE Rev 1.0.5 (20.04.2009) - Umbau auf synchrones Handling der XPressNet-Anfragen. - Dynamisches Adresshandling für max. 16 Geräte mit vollem Adressumfang. Rev 1.0.4 (22.05.2008) - Korrekturen zur automatischen Adressvergabe bei Lok- und Multimäusen. - Überschneidung unvollständiger Stati bei Lokübernahme korrigiert. Rev 1.0.3 (16.05.2008) - Regelmäßiges Refresh der Lokdaten auf dem EasyNet wieder aktiviert (war zu Fehlertests versehentlich auskommentiert). - Lokübernahme sicherer gemacht. - Echten Nothalt implementiert. Rev 1.0.2 (14.05.2008) - Nothalt als ersten Schritt als Fahrstufe 0 implementiert. Ohne Berück- sichtigung der Notstop-Fahrstufen konnte die Lok anschließend mit maximaler Geschwindigkeit fahren. - Bei am EasyNet gegen Übernahme gesperrten Loks die XpressNet-Devices sofort nach Übernahme solcher Loks über die Rückübernahme durch eine andere Steuerung informieren (XpressNet-Device geht in den inaktiven Modus, i.A. Blinken). Rev 1.0.1 (30.03.2008) - Korrekte Behandlung eines abgezogenen EasyNet-Bussteckers. Es wird versucht eine neue Adresse zu erhalten. Solange dies nicht erfolgreich ist, wird den angeschlossenen Geräten eine beschäftigte Zentrale gemeldet. Rev 1.0.0 - Auslieferungs- / Messeversion der ersten Exemplare