From 29368b35af547c275335def5cd390ca1669423d4 Mon Sep 17 00:00:00 2001 From: Gunnar Skjold Date: Thu, 4 Apr 2019 12:00:59 +0200 Subject: [PATCH 1/2] Added List2 for 1 phase meters. Will add List3 when List2 is confirmed --- .../AmsToMqttBridge/AmsToMqttBridge.ino | 12 ++++- .../Arduino Libraries/HanReader/src/Aidon.h | 51 +++++++++++++++++++ 2 files changed, 62 insertions(+), 1 deletion(-) diff --git a/Arduino Code/AmsToMqttBridge/AmsToMqttBridge.ino b/Arduino Code/AmsToMqttBridge/AmsToMqttBridge.ino index 2361553e..5561ffa5 100644 --- a/Arduino Code/AmsToMqttBridge/AmsToMqttBridge.ino +++ b/Arduino Code/AmsToMqttBridge/AmsToMqttBridge.ino @@ -184,7 +184,7 @@ void readHanPort() void readHanPort_Aidon(int listSize) { - if (listSize == (int)Aidon::List1 || listSize == (int)Aidon::List2 || listSize == (int)Aidon::List3) + if (listSize == (int)Aidon::List1 || listSize == (int)Aidon::List2 || listSize == (int)Aidon::List3 || listSize == (int)Aidon::List2_p1 ||) { if (listSize == (int)Aidon::List2) { @@ -235,6 +235,16 @@ void readHanPort_Aidon(int listSize) data["U2"] = ((double) hanReader.getInt((int)Aidon_List2::VoltageL2)) / 10; data["U3"] = ((double) hanReader.getInt((int)Aidon_List2::VoltageL3)) / 10; } + else if (listSize == (int)Aidon::List2_p1) + { + data["lv"] = hanReader.getString((int)Aidon_List2_p1::ListVersionIdentifier); + data["id"] = hanReader.getString((int)Aidon_List2_p1::MeterID); + data["type"] = hanReader.getString((int)Aidon_List2_p1::MeterType); + data["P"] = hanReader.getInt((int)Aidon_List2_p1::ActiveImportPower); + data["Q"] = hanReader.getInt((int)Aidon_List2_p1::ReactiveExportPower); + data["I1"] = ((double) hanReader.getInt((int)Aidon_List2_p1::Current)) / 10; + data["U1"] = ((double) hanReader.getInt((int)Aidon_List2_p1::Voltage)) / 10; + } else if (listSize == (int)Aidon::List3) { data["lv"] = hanReader.getString((int)Aidon_List3::ListVersionIdentifier); diff --git a/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h b/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h index c00e905f..1c1a60a7 100644 --- a/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h +++ b/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h @@ -8,6 +8,7 @@ enum class Aidon { List1 = 0x01, List2 = 0x0D, + List2_p1 = 0x09, List3 = 0x12 }; @@ -97,6 +98,56 @@ enum class Aidon_List2 VoltageL3Enum }; +enum class Aidon_List2_1p +{ + ListSize, + IGN_0, + ListVersionIdentifier_OBIS, + ListVersionIdentifier, + IGN_1, + MeterID_OBIS, + MeterID, + IGN_2, + MeterType_OBIS, + MeterType, + IGN_3, + ActiveImportPower_OBIS, + ActiveImportPower, + IGN_4, + ActiveImportPowerInt8, + ActiveImportPowerEnum, + IGN_5, + ActiveExportPower_OBIS, + ActiveExportPower, + IGN_6, + ActiveExportPowerInt8, + ActiveExportPowerEnum, + IGN_7, + ReactiveImportPower_OBIS, + ReactiveImportPower, + IGN_8, + ReactiveImportPowerInt8, + ReactiveImportPowerEnum, + IGN_9, + ReactiveExportPower_OBIS, + ReactiveExportPower, + IGN_10, + ReactiveExportPowerInt8, + ReactiveExportPowerEnum, + IGN_11, + Current_OBIS, + Current, + IGN_12, + CurrentInt8, + CurrentEnum, + IGN_13, + Voltage_OBIS, + Voltage, + IGN_14, + VoltageInt8, + VoltageEnum, +}; + enum class Aidon_List3 { ListSize, From 44dbe13f7e9328abe893046a5460197337477df2 Mon Sep 17 00:00:00 2001 From: Gunnar Skjold Date: Thu, 4 Apr 2019 12:02:59 +0200 Subject: [PATCH 2/2] Removed unnecessary comam --- Arduino Code/Arduino Libraries/HanReader/src/Aidon.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h b/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h index 1c1a60a7..f7b98e6f 100644 --- a/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h +++ b/Arduino Code/Arduino Libraries/HanReader/src/Aidon.h @@ -145,7 +145,7 @@ enum class Aidon_List2_1p Voltage, IGN_14, VoltageInt8, - VoltageEnum, + VoltageEnum }; enum class Aidon_List3