Benutzer-Werkzeuge

Webseiten-Werkzeuge


wiki:ems:re

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
wiki:ems:re [2014/04/18 17:50]
karlmw reveng
wiki:ems:re [2014/07/04 13:36]
maniac103
Zeile 1: Zeile 1:
 ====== Reverse Engineering ====== ====== Reverse Engineering ======
 ==== Sniffen ==== ==== Sniffen ====
-Wie man EMS Telegramme identifiziert und z.B. in den "​collectord"​ einbaut, hat Michael Moosbauer (moosy) detailliert [[http://​www.mikrocontroller.net/​topic/​318364#​3530428|im Thread]] beschrieben. In der Zwischenzeit (Mitte April 2014) sind einige Änderungen eingetreten,​ so dass moosys aktualisierter Text, auch der einfacheren Auffindbarkeit,​ hier noch einmal ​wieder gegeben ​wird.+Wie man EMS Telegramme identifiziert und z.B. in den "​collectord"​ einbaut, hat Michael Moosbauer (moosy) detailliert [[http://​www.mikrocontroller.net/​topic/​318364#​3530428|im Thread]] beschrieben. In der Zwischenzeit (Mitte April 2014) sind einige Änderungen eingetreten,​ so dass moosys aktualisierter Text, auch der einfacheren Auffindbarkeit ​halber, hier noch einmal ​wiedergegeben ​wird.
 ==== HowTo ==== ==== HowTo ====
 Der Einbau eines neuen Features ist eigentlich immer gleich: Der Einbau eines neuen Features ist eigentlich immer gleich:
  
-  ​Identifizierung der Parameter/​Werte,​ die man ändern/​einstellen kann. +  ​Identifizierung der Parameter/​Werte,​ die man ändern/​einstellen kann.\\ 
-  ​Herausfinden,​ in welchen Telegrammen sie stecken. Das geht mit dem collectord recht leicht, allerdings muss hierzu der ems-collector mit Raw-Kommando-Support gebaut werden (Zeile 3 des Makefiles auskommentieren,​ d.h. Raute entfernen). Dann im collectord:+  ​Herausfinden,​ in welchen Telegrammen sie stecken. Das geht mit dem collectord recht leicht, allerdings muss hierzu der ems-collector mit Raw-Kommando-Support gebaut werden (Zeile 3 des Makefiles auskommentieren,​ d.h. Raute entfernen). Dann im collectord:\\
  
-   a) 'raw read <​device>​ <​type>​ <​offset>​ <​len>'​ also: +  ​a) 'raw read <​device>​ <​type>​ <​offset>​ <​len>'​ also: 
-      raw read DE TY 0 25 , wobei DE das DEVICE is (also 10=RC35, 08=UBA),+      raw read DE TY 0 25 , wobei DE das DEVICE is (also 0x10=RC35, 0x08=UBA),
       und TY der Telegrammtyp,​ den man im Verdacht hat, dass er zuständig ist.       und TY der Telegrammtyp,​ den man im Verdacht hat, dass er zuständig ist.
       Ausgabe merken.       Ausgabe merken.
-   b) Wert am RCxx[x] verstellen +  ​b) Wert am RCxx[x] verstellen 
-   ​c) a) wiederholen. Wenn sich was geändert hat, ist es ein heißer Kandidat. +  c) a) wiederholen. Wenn sich was geändert hat, ist es ein heißer Kandidat. 
-   ​d) a) - c) wiederholen um sicherzugehen +  d) a) - c) wiederholen um sicherzugehen 
-   ​e) raw read DE TY OFF 1  , wobei OFF der ausgezählte Offset ist,+  e) raw read DE TY OFF 1  , wobei OFF der ausgezählte Offset ist,
       so lange probieren, bis genau dieser eine Wert da steht       so lange probieren, bis genau dieser eine Wert da steht
-   f) 'raw write <​device>​ <​type>​ <​offset>​ <​data0>​ ... <​dataX>',​ also:+  ​f) 'raw write <​device>​ <​type>​ <​offset>​ <​data0>​ ... <​dataX>',​ also:
       raw write DE TY OFF <​andererWert>​ und gucken, ob sich der Wert am RCxx[x] geändert hat.       raw write DE TY OFF <​andererWert>​ und gucken, ob sich der Wert am RCxx[x] geändert hat.
       WENN NICHT: mit raw write DE TY OFF <Wert aus e)> alten Wert wiederherstellen.       WENN NICHT: mit raw write DE TY OFF <Wert aus e)> alten Wert wiederherstellen.
-  ​Für die Messwerte parallel die Werte am RC35 ablesen und per raw read gucken, ob man sie irgendwo findet (dabei beachten: raw read liefert hex, Temperaturen sind oft verdoppelt 30°=60 oder verzehnfacht 30°=300).+  ​g) Für die Messwerte parallel die Werte am RCxx[x] ​ablesen und per raw read gucken, 
 +     ob man sie irgendwo findet (dabei beachten: raw read liefert hex, Temperaturen sind 
 +     oft verdoppelt 30°=60 oder verzehnfacht 30°=300).
  
-  ​Ins EMS-Wiki eintragen (lassen) +  ​Ins EMS-Wiki eintragen (lassen)\\ 
-  ​In den ems-collectord einbauen (lassen) +  ​In den ems-collectord einbauen (lassen)\\ 
-  ​Ins Webinterface einbauen (lassen)+  ​Ins Webinterface einbauen (lassen)\\
  
wiki/ems/re.txt · Zuletzt geändert: 2015/12/30 21:00 (Externe Bearbeitung)