kopia lustrzana https://github.com/weetmuts/wmbusmeters
Dif 0f is manufacturer specific, treat remaining odd difs, like 7f also as manufacturer specific.
rodzic
0643668f51
commit
84eeaaa038
2
Makefile
2
Makefile
|
@ -408,4 +408,4 @@ collect_copyrights:
|
|||
# Include dependency information generated by gcc in a previous compile.
|
||||
include $(wildcard $(patsubst %.o,%.d,$(PROG_OBJS) $(DRIVER_OBJS)))
|
||||
|
||||
.PHONY: deb
|
||||
.PHONY: deb test testd deploy release_major release_minor release_rc collect_copyrights
|
||||
|
|
|
@ -208,7 +208,7 @@ bool parseDV(Telegram *t,
|
|||
{
|
||||
if (dif == 0x0f)
|
||||
{
|
||||
DEBUG_PARSER("(dvparser) reached manufacturer specific data 0f, parsing is done.\n");
|
||||
DEBUG_PARSER("(dvparser) reached dif %02x manufacturer specific data, parsing is done.\n", dif);
|
||||
datalen = std::distance(data,data_end);
|
||||
string value = bin2hex(data+1, data_end, datalen-1);
|
||||
t->mfct_0f_index = 1+std::distance(data_start, data);
|
||||
|
@ -216,7 +216,12 @@ bool parseDV(Telegram *t,
|
|||
t->addExplanationAndIncrementPos(data, datalen, KindOfData::PROTOCOL, Understanding::NONE, "%02X manufacturer specific data %s", dif, value.c_str());
|
||||
break;
|
||||
}
|
||||
debug("(dvparser) cannot handle dif %02X ignoring rest of telegram.\n", dif);
|
||||
DEBUG_PARSER("(dvparser) reached unknown dif %02x treating remaining data as manufacturer specific, parsing is done.\n", dif);
|
||||
datalen = std::distance(data,data_end);
|
||||
string value = bin2hex(data+1, data_end, datalen-1);
|
||||
t->mfct_0f_index = 1+std::distance(data_start, data);
|
||||
assert(t->mfct_0f_index >= 0);
|
||||
t->addExplanationAndIncrementPos(data, datalen, KindOfData::PROTOCOL, Understanding::NONE, "%02X unknown dif treating remaining data as mfct specific %s", dif, value.c_str());
|
||||
break;
|
||||
}
|
||||
if (dif == 0x2f) {
|
||||
|
|
|
@ -12,7 +12,6 @@ cat > $TEST/test_expected.txt <<EOF
|
|||
(dvparser) found new format "046D036E51706CE1F14302FF2C0259D40902FD66A000" with hash 48a9, remembering!
|
||||
(dvparser) warning: unexpected end of data
|
||||
(dvparser) warning: unexpected end of data
|
||||
(dvparser) cannot handle dif 7F ignoring rest of telegram.
|
||||
(dvparser) found new format "046D0406041301FD17426C4406840106840206840306840406840506840606840706840806840906C1337F47A64E0C062364" with hash b934, remembering!
|
||||
(meter) while processing field extractors ignoring dventry 0C06 at offset 129 matching since field total was already matched against dventry 0406 at offset 25 !
|
||||
EOF
|
||||
|
|
Ładowanie…
Reference in New Issue