Ich muss in der Lage sein, serielle Befehle zurückzuentwickeln, damit ich herausfinden kann, wie entweder die lesbaren Werte oder die binären Werte serialisiert werden rohe serielle Befehle.
IE:
%Vor%Ich arbeite an einem Wrapper für ein Open-Source-Automatisierungsprojekt.
Es gibt eine Möglichkeit, raw
-Befehle zu senden und theoretisch mehrere Befehle miteinander zu verknüpfen.
Ich habe ein paar serielle Befehle geschnüffelt, und so sehen sie aus.
Was ich tun muss, ist Reverse Engineering, so dass ich die seriellen Aufrufe programmgesteuert ausführen kann, oder besser noch, wie entweder die menschenlesbaren Werte oder die Binärdatei Werte werden in rohen seriellen Befehlen serialisiert.
Ja, ich könnte alle Befehle ausspionieren und jeden Wert separat speichern, aber ich würde gerne wissen, wie das gemacht wurde.
Hier ist meine aktuelle Beobachtung.
04
wird initiiert und teilt dem Gerät mit, was es nach **
teilt dem System mit, welches Gerät gesteuert wird [ HouseCode
& amp; DeviceCode
] 55
wird zurückgegeben, um Ihnen mitzuteilen, dass es bereit ist 06
wird initiiert und teilt dem Gerät mit, was zu erwarten ist **
teilt dem System den Hauscode und den Befehl mit [ HouseCode
& amp; %Code%]
FunctionCode
wird optional gesendet und ist ein Wert zwischen 0 & amp; 100, um auf eine Dimmstufe zu verweisen **
wird erneut gesendet, um Ihnen mitzuteilen, dass es bereit ist 55
= A, B, C usw.) und das zweite Zeichen ist die Adresse ( HouseCode
= 1, 2, 3 usw.)
DeviceCode
muss direkt mit 6
A
muss direkt mit e
übereinstimmen
B
wie das zweite Paar HouseCode
Schließlich beziehen sich in den Dokumenten die einzelnen Befehle auf binäre Daten. Es ist also wahrscheinlich nicht , FunctionCode
in A1
zu konvertieren, sondern eher hex
in binary
.
Weiß jemand, wie ich das erreichen könnte?
Heyu ist eine fantastische Open-Source-Anwendung für die Arbeit mit X10-Geräten. Sie haben eine sehr umfassende X10-Protokollspezifikation basierend auf dem Originaldokument von X10 veröffentlicht.
Dies sollte Ihre Arbeit raten. Wesentlich ist, dass der Hauscode und der Einheitencode statische Karten sind und nicht berechnet werden können. Die Protokollspezifikation spezifiziert genau, wie der Bitstrom gebildet wird. ZB
%Vor%Tags und Links c# serial-port reverse-engineering hex x10