From b2f348f57dd472aa347365aed9f353342a3d5887 Mon Sep 17 00:00:00 2001 From: Roar Fredriksen Date: Thu, 8 Mar 2018 00:20:07 +0100 Subject: [PATCH] Made it work with Kaifa data --- Code/Arduino/HanReader/src/HanReader.cpp | 8 ++++++-- Code/Arduino/HanReader/src/HanReader.h | 1 + Code/Arduino/HanReader/src/Kaifa.h | 3 --- Code/Arduino/KaifaTest/KaifaTest.ino | 1 + 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/Code/Arduino/HanReader/src/HanReader.cpp b/Code/Arduino/HanReader/src/HanReader.cpp index 5cb385b3..298f984f 100644 --- a/Code/Arduino/HanReader/src/HanReader.cpp +++ b/Code/Arduino/HanReader/src/HanReader.cpp @@ -102,7 +102,10 @@ int HanReader::getListSize() time_t HanReader::getPackageTime() { - return getTime(buffer, 8, bytesRead); + int packageTimePosition = dataHeader + + (compensateFor09HeaderBug ? 1 : 0); + + return getTime(buffer, packageTimePosition, bytesRead); } time_t HanReader::getTime(int objectId) @@ -125,7 +128,8 @@ int HanReader::findValuePosition(int dataPosition, byte *buffer, int start, int { // The first byte after the header gives the length // of the extended header information (variable) - int firstData = dataHeader + buffer[dataHeader] + 1; + int headerSize = dataHeader + (compensateFor09HeaderBug ? 1 : 0); + int firstData = headerSize + buffer[headerSize] + 1; for (int i = start + firstData; i