Administration
Produkten kan identifieras med hjälp av följande information:
-
Tillverkarens sträng = 0x1596 = "ELV"
-
Versionsfält = 2
-
Fält för enhetstyp = 0x1B = "Rumssensor"
Versionsfältet för länklageradressen återspeglar telegramversionen och kommer endast att ändras om innehållet i det trådlösa M-Bustelegrammet ändras på något sätt på grund av en ny produkt-/programvaruversion. Det faktiska versionsnumret för programvaran finns i en dedikerad post för M-Bustelegrammet.
Produkten kan fungera i krypterat eller okrypterat läge. I krypterat läge används en 128 bitars AES-nyckel för alla telegram.
Efter aktivering kommer produkten att skicka spontana enkelriktade SND-NR-telegram var 3:e minut (C-fält = 0x44 = SND-NR = Skicka, inget svar").
Okrypterat telegram som sänds i luften:
Tabell 152. Okrypterat telegram
Byte index |
Data |
Beskrivning |
---|---|---|
0x55 |
inledning |
|
0x55 |
inledning |
|
0x55 |
inledning |
|
0x55 |
inledning |
|
0x54 |
synk ord byte 0 |
|
0x3D |
synk ord byte 1 |
|
0x54 |
synk ord byte 2 |
|
0x3D |
synk ord byte 3 |
|
0 |
0x62 |
L-fält = Antal byte som följer, inklusive CRC-byte |
1 |
0x44 |
C-fält = 0x44 = SND-NR |
2 |
0x96 |
Byte 0 i tillverkarfältet, lsByte (0x1596 = "ELV") |
3 |
0x15 |
Byte 1 i tillverkarfältet, msByte |
4 |
0xnn |
Byte 0 i ID-fältet, packad BCD, de två lsSiffrorna |
5 |
0xnn |
Byte 1 i ID-fältet, packad BCD |
6 |
0xnn |
Byte 2 i ID-fältet, packad BCD |
7 |
0xnn |
Byte 3 i ID-fältet, packad BCD, de två msDigits |
8 |
0xnn |
Versionsfält |
9 |
0x1B |
Fält för enhetstyp, 0x1B = Rumssensor |
10 |
0x7A |
CI-fält, 0x7A = kort applikationslagerrubrik följer |
11 |
0xnn |
ACC, 0..255, ökas med 1 efter varje sändning |
12 |
0xnn |
STATUS, normalt 0x00 (se not 1) |
13 |
0x00 |
Byte 0 av CONFIG-ordet, lsByte |
14 |
0x20 |
Byte 1 av CONFIG-ordet, msByte (se not 2) |
15 |
0x2F |
Dekrypteringsverifiering byte 1 |
16 |
0x2F |
Dekrypteringsverifiering byte 2 |
17 |
0x02 (0x32) |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 0 (se not 3) |
18 |
0x65 |
VIF = "Extern temperatur, enheten är 0,01 grad Celsius" |
19 |
0xnn |
Byte 0 av aktuell temperatur, lsByte |
20 |
0xnn |
Byte 1 av momentant värde, msByte |
21 |
0x42 (0x72) |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 1 (se not 3) |
22 |
0x65 |
VIF = "Extern temperatur, enheten är 0,01 grad Celsius" |
23 |
0xnn |
Byte 0 av 1-timmes medeltemperatur, lsByte |
24 |
0xnn |
Byte 1 av 1-timmes medeltemperatur, msByte |
25 |
0x82 (0xB2) |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 2 (se not 3) |
26 |
0x01 |
DIFE behövs för lagringsnummer & 1 |
27 |
0x65 |
VIF = "Extern temperatur, enheter är 0,01 grad Celsius" |
28 |
0xnn |
Byte 0 av 24-timmars medeltemperatur, lsByte |
29 |
0xnn |
Byte 1 av 24-timmars medeltemperatur, msByte |
30 |
0x22 (0x32) |
DIF = 16-bitars heltal, minimivärde, lagringsnummer 0 (se not 3) |
31 |
0x65 |
VIF = "Extern temperatur, enheten är 0,01 grad Celsius" |
32 |
0xnn |
Byte 0 av 1 timmes lägsta temperatur, lsByte |
33 |
0xnn |
Byte 1 av 1 timmes lägsta temperatur, msByte |
34 |
0x12 (0x32) |
DIF = 16-bitars heltal, maximalt värde, lagringsnummer 0 (se not 3) |
35 |
0x65 |
VIF = "Extern temperatur, enheten är 0,01 grad Celsius" |
36 |
0xnn |
Byte 0 av 1-timmes maxtemperatur, lsByte |
37 |
0xnn |
Byte 1 av 1-timmes maxtemperatur, msByte |
38 |
0x62 (0x72) |
DIF = 16-bitars heltal, minimivärde, lagringsnummer 1 (se not 3) |
39 |
0x65 |
VIF = "Extern temperatur, enheten är 0,01 grad Celsius" |
40 |
0xnn |
Byte 0 av 24-timmars lägsta temperatur, lsByte |
41 |
0xnn |
Byte 1 av 24-timmars lägsta temperatur, msByte |
42 |
0x52 (0x72) |
DIF = 16-bitars heltal, maximalt värde, lagringsnummer 1 (se not 3) |
43 |
0x65 |
VIF = "Extern temperatur, enheten är 0,01 grad Celsius" |
44 |
0xnn |
Byte 0 av 24-timmars maxtemperatur, lsByte |
45 |
0xnn |
Byte 1 av 24-timmars maxtemperatur, msByte |
46 |
0x02 (0x32) |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 0 (se not 3) |
47 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
48 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
49 |
0xnn |
Byte 0 av aktuell relativ fuktighet, lsByte |
50 |
0xnn |
Byte 1 av aktuell relativ fuktighet, msByte |
51 |
0x42 (0x72) |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 1 (se not 3) |
52 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
53 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
54 |
0xnn |
Byte 0 av 1 timmes genomsnittliga relativa luftfuktighet, lsByte |
55 |
0xnn |
Byte 1 av 1-timmes genomsnittlig relativ luftfuktighet, msByte |
56 |
0x82 (0xB2) |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 2 (se not 3) |
57 |
0x01 |
DIFE behövs för lagringsnummer & 1 |
58 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
59 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
60 |
0xnn |
Byte 0 av 24-timmars genomsnittlig relativ luftfuktighet, lsByte |
61 |
0xnn |
Byte 1 av 24-timmars genomsnittlig relativ luftfuktighet, msByte |
62 |
0x22 (0x32) |
DIF = 16-bitars heltal, minimivärde, lagringsnummer 0 (se not 3) |
63 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
64 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
65 |
0xnn |
Byte 0 av 1 timmes lägsta relativa luftfuktighet, lsByte |
66 |
0xnn |
Byte 1 av 1 timmes lägsta relativa luftfuktighet, msByte |
67 |
0x12 (0x32) |
DIF = 16-bitars heltal, maximalt värde, lagringsnummer 0 (se not 3) |
68 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
69 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
70 |
0xnn |
Byte 0 av 1 timmes maximala relativa luftfuktighet, lsByte |
71 |
0xnn |
Byte 1 av 1 timmes maximala relativa luftfuktighet, msByte |
72 |
0x62 (0x72) |
DIF = 16-bitars heltal, minimivärde, lagringsnummer 1 (se not 3) |
73 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
74 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
75 |
0xnn |
Byte 0 av 24-timmars lägsta relativa luftfuktighet, lsByte |
76 |
0xnn |
Byte 1 av 24-timmars lägsta relativ luftfuktighet, msByte |
77 |
0x52 (0x72) |
DIF = 16-bitars heltal, maximalt värde, lagringsnummer 1 (se not 3) |
78 |
0xFB |
VIF = använd VIF-extension-tabell 0xFB |
79 |
0x1A |
VIFE = "Relativ luftfuktighet, enheten är 0,1 procent" |
80 |
0xnn |
Byte 0 av 24-timmars maximal relativ luftfuktighet, lsByte |
81 |
0xnn |
Byte 1 av 24-timmars maximal relativ luftfuktighet, msByte |
82 |
0x02 |
DIF = 16-bitars heltal, momentant värde, lagringsnummer 0 |
83 |
0xFD |
VIF = använd VIF-extension-tabell 0xFD |
84 |
0x1B |
VIFE = "Digitala ingångar" |
85 |
0xnn |
Byte 0 av produktstatusflaggor, lsByte (se not 4) |
86 |
0xnn |
Byte 1 av produktstatusflaggor, msByte (se not 4) |
87 |
0x0D |
DIF = Variabel längd, momentant värde, lagringsnummer 0 |
88 |
0xFD |
VIF = använd VIF-extension-tabell 0xFD |
89 |
0x0F |
VIFE = "Annan programversion" |
90 |
0x05 |
LVAR = 5, längden på ASCII-strängen som följer |
91 |
0x30 |
'0' "1.0.0" baklänges enligt M-Bus standard (!) Index 91 till 95 är ett exempel på hur det kommer att se ut. Revisionen kan vara något annat än det som står här. |
92 |
0x2E |
'.' |
93 |
0x30 |
'0' |
94 |
0x2E |
'.' |
95 |
0x31 |
'1' |
96 |
0x0F |
Slut på telegram-markör |
97 |
0xnn |
Byte 1 av CRC av ramtyp B, msByte |
98 |
0xnn |
Byte 0 av CRC av ramtyp B, lsByte |
Notera
1
STATUS, som normalt är 0x00, har två felflaggor i bit 2 och 3:
Bit 2 = 1 (0x04) om den uppmätta batterispänningen faller under den nedre gränsen under överföring.
Bit 3 = 1 (0x08) om det finns ett fel i temperatur/fuktighetsgivaren (se även not 3 och 4).
Notera
2
CONFIG-ord = 0x2000 om det är okrypterat.
CONFIG-ord = 0x2560 om krypterat (applikationslagerkrypteringsläge 5, sex krypterade 16-byte-block).
CONFIG bit 13 (SYNC) är alltid 1 för att indikera att produkten sänder synkrona telegram enligt standarden EN13757-4:2013.
Notera
3
Vid fel på temperatur/luftfuktighetssensorn ställs bitarna 4 och 5 av dessa DIF till 1 för att indikera "Värde under feltillstånd". Bit 3 i STATUS kommer också att ställas in på 1 och alla temperatur- och luftfuktighetsvärden kommer att nollställas (se även not 1 och 4).
Notera
4
Produktstatusflaggor:
Bit 15: Växlar varje timme (när 24h min/max/genomsnittsvärdena har uppdaterats)
Bit 14: Växlar var 10:e minut (när 1h min/max/genomsnittsvärdena har uppdaterats)
Bits 13..10: Används inte, alltid 0
Bits 9..8: Drifttid sedan aktivering:
Bits 7..4: Telegramöverföringsintervall i minuter, binärt värde 011 = 3 minuter.
Bits 3..2: Används inte, alltid 0
Bit 0: 1 om sensorfel (samma som STATUS bit 3, se även anteckning 1 och 3)
När kryptering är aktiverad infogas ett 9-byte utökat länklagerblock vid byteindex 10..19. Applikationsskiktets payload, från CI-fältet till 0x0F slutet av telegrammarkören är krypterad. CRC i slutet av telegrammet tillhör länklagret och beräknas efter kryptering.
Krypterat telegram som sänds i luften:
Tabell 153. Krypterat telegram
Byte index |
Data |
Beskrivning |
---|---|---|
0x55 |
inledning |
|
0x55 |
inledning |
|
0x55 |
inledning |
|
0x55 |
inledning |
|
0x54 |
synk ord byte 0 |
|
0x3D |
synk ord byte 1 |
|
0x54 |
synk ord byte 2 |
|
0x3D |
synk ord byte 3 |
|
0 |
0x70 |
L-fält = Antal byte som följer, inklusive CRC-byte |
1 |
0x44 |
C-fält = 0x44 = SND-NR |
2 |
0x96 |
Byte 0 i tillverkarfältet, lsByte (0x1596 = "ELV") |
3 |
0x15 |
Byte 1 i tillverkarfältet, msByte |
4 |
0xnn |
Byte 0 i ID-fältet, packad BCD, de två lsSiffrorna |
5 |
0xnn |
Byte 1 i ID-fältet, packad BCD |
6 |
0xnn |
Byte 2 i ID-fältet, packad BCD |
7 |
0xnn |
Byte 3 i ID-fältet, packad BCD, de två msDigits |
8 |
0xnn |
Versionsfält |
9 |
0x1B |
Fält för enhetstyp, 0x1B = Rumssensor |
10 |
0x7A |
CI-fält, 0x7A = kort applikationslagerrubrik följer |
11 |
0xnn |
ACC, 0..255, ökas med 1 efter varje sändning |
12 |
0xnn |
STATUS, normalt 0x00 (se not 1) |
13 |
0x60 |
Byte 0 av CONFIG-ordet, lsByte |
14 |
0x25 |
Byte 1 av CONFIG-ordet, msByte (se not 2) |
15..110 |
Krypterad payload (samma data som okrypterat byteindex) |
|
111 |
0xnn |
Byte 1 av CRC av ramtyp B, msByte |
112 |
0xnn |
Byte 0 av CRC av ramtyp B, lsByte |
Kommentarer (0 kommentarer)