diff --git a/src/AmsData.h b/src/AmsData.h index 9445472a..02e7df55 100644 --- a/src/AmsData.h +++ b/src/AmsData.h @@ -10,7 +10,7 @@ enum AmsType { AmsTypeKaifa = 0x02, AmsTypeKamstrup = 0x03, AmsTypeIskra = 0x08, - AmsTypeLandis = 0x09, + AmsTypeLandisGyr = 0x09, AmsTypeSagemcom = 0x0A, AmsTypeLng = 0x0B, AmsTypeCustom = 0x88, diff --git a/src/IEC6205621.cpp b/src/IEC6205621.cpp index ba848d4d..f574f2d4 100644 --- a/src/IEC6205621.cpp +++ b/src/IEC6205621.cpp @@ -28,11 +28,14 @@ IEC6205621::IEC6205621(const char* p) { meterType = AmsTypeIskra; listId = listId.substring(0,5); } else if(listId.startsWith("XMX")) { - meterType = AmsTypeLandis; + meterType = AmsTypeLandisGyr; listId = listId.substring(0,6); } else if(listId.startsWith("Ene") || listId.startsWith("EST")) { meterType = AmsTypeSagemcom; listId = listId.substring(0,4); + } else if(listId.startsWith("LGF")) { + meterType = AmsTypeLandisGyr; + listId = listId.substring(0,4); } else { meterType = AmsTypeUnknown; listId = listId.substring(0,4); @@ -136,6 +139,9 @@ IEC6205621::IEC6205621(const char* p) { l2current = (((activeImportPower - activeExportPower) * sqrt(3)) - (l1voltage * l1current) - (l3voltage * l3current)) / l2voltage; } } + + if (l1activeImportPower > 0 || l2activeImportPower > 0 || l3activeImportPower > 0 || l1activeExportPower > 0 || l2activeExportPower > 0 || l3activeExportPower > 0) + listType = 4; } String IEC6205621::extract(String payload, String obis) { diff --git a/src/web/AmsWebServer.cpp b/src/web/AmsWebServer.cpp index 834dde87..6c9b2630 100644 --- a/src/web/AmsWebServer.cpp +++ b/src/web/AmsWebServer.cpp @@ -329,7 +329,7 @@ void AmsWebServer::configMeterHtml() { case AmsTypeIskra: manufacturer = F("Iskra"); break; - case AmsTypeLandis: + case AmsTypeLandisGyr: manufacturer = F("Landis+Gyr"); break; case AmsTypeSagemcom: diff --git a/web/application.js b/web/application.js index b29285ef..62885a3d 100644 --- a/web/application.js +++ b/web/application.js @@ -854,7 +854,7 @@ var fetch = function() { $('.jmt').html("Iskra"); break; case 9: - $('.jmt').html("Landis"); + $('.jmt').html("Landis+Gyr"); break; case 10: $('.jmt').html("Sagemcom");