Skip to content

hcan protocol tool

RealMerlin edited this page Mar 2, 2019 · 2 revisions

hcan-protocol

hcan-protocol ist ein Kommandozeilenscript um die openHCAN Protokollreferenz einfach durchsuchen zu können.
Ist z.B. hilfreich wenn man eine hcandq Abfrage machen will aber nicht auswendig weiß welche MessageID der REEDKONTAKT_OFFEN hat.

Funktionen

Suche nach Message Nummer

Zeigt die Beschreibung der MessageID 41 im Service 5 an:
$ hcan-protocol 5 41

*** Service: HES (5 / 0x05) ***
Message: REEDKONTAKT_STATE_QUERY (41 / 0x29)
Description: Fragt nach dem Status eines Reedkontakts
Parameter 0: gruppe (Gruppe)

Suche nach Message Name

Zeigt alle MessageIDs die 1Wire im Name enthalten:
$ hcan-protocol 5 1Wire

*** Service: HES (5 / 0x05) ***
Message: 1WIRE_DISCOVER (30 / 0x1e)
Description: Veranlasst einen 1Wire Scan an gebenen Pin
Parameter 0: pin (Pin ID des 1Wire Ports im Bereich [0..7])

Message: 1WIRE_DISCOVERED_PART_1 (31 / 0x1f)
Description: ein 1Wire Device ist gefunden worden, Message Teil 1
Parameter 0: id0 (1. Byte der 1Wire id[8] (Checksum dabei))
Parameter 1: id1 (2. Byte)
Parameter 2: id2 (3. Byte)
Parameter 3: id3 (4. Byte)

Message: 1WIRE_DISCOVERED_PART_2 (32 / 0x20)
Description: ein 1Wire Device ist gefunden worden, Message Teil 1
Parameter 0: id4 (5. Byte der 1Wire id[8] (Checksum dabei))
Parameter 1: id5 (6. Byte)
Parameter 2: id6 (7. Byte)
Parameter 3: id7 (8. Byte)

Message: 1WIRE_ERROR (33 / 0x21)
Description: ein 1Wire Fehler trat auf
Parameter 0: error (3 = NoSensorFound, 4 = BusError)

Message: 1WIRE_TEMPERATURE (34 / 0x22)
Description: Messergebnis (Fixed Point) eines DS18B20 1Wire Temperaturfuehlers
Parameter 0: gruppe (Gruppe)
Parameter 1: temp_hi (MSB)
Parameter 2: temp_lo (LSB; 4 LSB sind Nachkommabits)

Message: 1WIRE_TEMPERATURE_QUERY (35 / 0x23)
Description: fragt einen Temperatursensor nach der aktuellen Temperatur
Parameter 0: gruppe (Gruppe)

Message: 1WIRE_TEMPERATURE_REPLAY (36 / 0x24)
Description: Messergebnis (Fixed Point) eines DS18B20 1Wire Temperaturfuehlers als Antwort auf 1WIRE_TEMPERATURE_QUERY
Parameter 0: gruppe (Gruppe)
Parameter 1: temp_hi (MSB)
Parameter 2: temp_lo (LSB; 4 LSB sind Nachkommabits)

Weitere Hinweise

Beide Parameter können auch ? sein, dann wird darauf nicht gefiltert
hcan-protocol ? 5
alle Messages mit der ID 5 egal von welchem Service

hcan-protocol 1 ?
alle Messages von Service 1

hcan-protocol ? ?
alle Messages

Nummern können auch direkt Hexadezimal eingegeben werden:
$ hcan-protocol 0x06 0x02

*** Service: RTS (6 / 0x06) ***
Message: DATE_INFO (2 / 0x02)
Description: Meldet das aktuelle Datum
Parameter 0: level (Date Level; regelt den Master-/Slave Betrieb)
Parameter 1: day_of_month (Tag des Monats [1..31] )
Parameter 2: month_of_year (Monat [1..12] )
Parameter 3: year (Jahr 2000 + [1..255] = [ 2001..2255 ])

Natürlich wird stets auf die XML aus dem letzten Bildvorgang zurückgegriffen, so das eingene Änderungen/Devices hier auch erscheinen.

Clone this wiki locally