Last active
November 13, 2024 14:00
-
-
Save yipo/eedbd0309e2ff1bb4be3b1b7a2487350 to your computer and use it in GitHub Desktop.
photon ↔ icms (device model)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| *.pyc | |
| /.venv/ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import argparse | |
| import json | |
| from operator import itemgetter | |
| from deepdiff.diff import DeepDiff | |
| from sqlalchemy import create_engine, engine | |
| from sqlalchemy.orm import DeclarativeBase, Mapped, Session, mapped_column | |
| class Base(DeclarativeBase): | |
| pass | |
| class PhotonModel(Base): | |
| __tablename__ = 'DeviceModel' | |
| id: Mapped[int] = mapped_column(primary_key=True) | |
| vendorName: Mapped[str] | |
| modelName: Mapped[str] | |
| seriesName: Mapped[str] | |
| type: Mapped[str] | |
| parameters: Mapped[str] | |
| description: Mapped[str] | |
| supported: Mapped[int] | |
| parserVersion: Mapped[int] | |
| officialModelName: Mapped[str] | |
| isChildDevice: Mapped[int] | |
| def to_tuple(self): | |
| return ( | |
| self.vendorName, self.modelName, self.seriesName, self.type, | |
| as_json(self.parameters), as_json(self.description), self.supported, | |
| self.parserVersion, self.officialModelName, self.isChildDevice, | |
| ) | |
| class IcmsModel(Base): | |
| __tablename__ = 'device_models' | |
| id: Mapped[int] = mapped_column(primary_key=True) | |
| vendor_name: Mapped[str] | |
| model_name: Mapped[str] | |
| series_name: Mapped[str] | |
| device_type: Mapped[str] | |
| parameters: Mapped[str] | |
| description: Mapped[str] | |
| supported: Mapped[int] | |
| parser_version: Mapped[int] | |
| official_model_name: Mapped[str] | |
| is_child_device: Mapped[int] | |
| def to_tuple(self): | |
| return ( | |
| self.vendor_name, self.model_name, self.series_name, self.device_type, | |
| as_json(self.parameters), as_json(self.description), self.supported, | |
| self.parser_version, self.official_model_name, self.is_child_device, | |
| ) | |
| def as_json(content: str) -> dict: | |
| return json.loads(content or 'null') | |
| def main(): | |
| args = get_args() | |
| photon_rows = dict(query_photon(args.photon_url)) | |
| print('phtn:', len(photon_rows)) | |
| icms_rows = dict(query_icms(args.icms_url)) | |
| print('icms:', len(icms_rows)) | |
| diff, only_photon, only_icms = compare(photon_rows, icms_rows) | |
| print('diff:', len(diff)) | |
| dump(diff) | |
| print('in phtn only:', len(only_photon)) | |
| dump(only_photon) | |
| print('in icms only:', len(only_icms)) | |
| dump(only_icms) | |
| def get_args(): | |
| args = argparse.ArgumentParser() | |
| args.add_argument( | |
| '--photon-url', | |
| required=True, | |
| type=engine.make_url, | |
| ) | |
| args.add_argument( | |
| '--icms-url', | |
| required=True, | |
| type=engine.make_url, | |
| ) | |
| return args.parse_args() | |
| def query_photon(url: engine.URL): | |
| engine = create_engine(url) | |
| with Session(engine) as session: | |
| for row in session.query(PhotonModel).all(): | |
| yield '.'.join([row.vendorName, row.modelName, row.type]), row | |
| def query_icms(url: engine.URL): | |
| engine = create_engine(url) | |
| with Session(engine) as session: | |
| for row in session.query(IcmsModel).all(): | |
| yield '.'.join([row.vendor_name, row.model_name, row.device_type]), row | |
| def compare(photon_rows: dict[str, PhotonModel], icms_rows: dict[str, IcmsModel]): | |
| common_keys, diff = photon_rows.keys() & icms_rows.keys(), {} | |
| for key, photon_model, icms_model in ( | |
| (key, photon_rows[key], icms_rows[key]) for key in sorted(common_keys)): | |
| if photon_model.to_tuple() != icms_model.to_tuple(): | |
| diff[key] = DeepDiff(photon_model.to_tuple(), icms_model.to_tuple()) | |
| return diff, photon_rows.keys() - common_keys, icms_rows.keys() - common_keys | |
| def dump(items: set[str] | dict[str, dict]): | |
| if isinstance(items, dict): | |
| for key, value in sorted(items.items(), key=itemgetter(0)): | |
| print('-', key) | |
| print(value) | |
| else: | |
| for item in sorted(items): | |
| print('-', item) | |
| if __name__ == '__main__': | |
| main() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| deepdiff==8.0.1 | |
| PyMySQL==1.1.1 | |
| SQLAlchemy==2.0.36 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| phtn: 1391 | |
| icms: 1389 | |
| diff: 199 | |
| - ABB.PVS-100-TL-WB-SX2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ABB.PVS-120-TL-WB-SX2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ADVANTECH.ADAM-4017.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - ADVANTECH.ADAM-4118.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - AISWEI.ASW50K-LT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy Plus-110kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy Plus-136kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy-Max-30kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-100K-T400GL02-E.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-110K-T400.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-50K-T500.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CARLO.VMU-M.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - CHALLENGE.BAW-4C-V3.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['version_difference']"]} | |
| - CHALLENGE.BAW-4C.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - CYBERPOWER.CPSHB6000ETL48.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV120KETL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV15000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV22000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV30000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV3000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV33000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV33000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV36000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV3600ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV50000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV50000ETL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV55000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV6000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV66000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV8000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M100A-280.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M100A-283.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M125HV-111.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M125HV-113.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M20A-220.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M30A-230.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M70A-262.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M70A-263.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M88H-122.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - EEI.MASTER-300-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - EEI.MASTER-300.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ENETELUS.EOU-A-MBX01.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW-120K-HT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW25KA-SMT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW60KA-SMT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.10KTL3-US.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.20KTL3-US.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.22KTL3-SL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.30000TL3-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.33000TL3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.50KTL3-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.5500MTL-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-30KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-40KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50000TL3-SE-1MPTT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50KTL3-SE.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-60KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-100KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-125KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-150KTL3-X-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-150KTL3-X2-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-50KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[5]['comment']"]} | |
| - GROWATT.MAX-50KTL3-XL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-60KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[5]['comment']"]} | |
| - GROWATT.MAX-60KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[5]['comment']"]} | |
| - GROWATT.MAX-70KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-70KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-75KTL3-XL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-80KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-80KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MID40KTL3-X.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HAIWELL.S04AI.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HAIWELL.S08AI-E.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HUAWEI.SUN2000 100KTL-INM0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 115KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 12KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 17KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 185KTL-H1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M5.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 215KTL-H0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 215KTL-H3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 30KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-JP-3MPPT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-JP.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 36KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 36KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 4.95KTL-NHL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 40KTL-JP.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 40KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 42KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 43KTL-IN-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 43KTL-LN-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 5KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 60KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 65KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 8KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 2KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3.68KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4.6KTL.INVERTER | |
| {'type_changes': {"root[4]['nominalCapacity']": {'old_type': <class 'float'>, 'new_type': <class 'int'>, 'old_value': 5.0, 'new_value': 5}}, 'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - KACO.XP-550-OD-TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-10000S-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-100KS-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-110KH-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-125KH-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-15000S-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-30000H-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-3000M-V.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-5000M-V.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-60000H-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-60000T-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-75000T-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - RISH.Master-3440.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SCHNEIDER.CL-60E.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SCHNEIDER.CL25000.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SFE.SFE100K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE40K-C.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE60K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.SOLID-Q50.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP-17000TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP110-60-FW1.01.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP110-60.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOFAR.80KTLX-G3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLAREDGE.SE120K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE3000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE4000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE5000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE6000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE66.6K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE82.8K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLGROW.DH110CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.100K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.110K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.80K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.S5-GC110K.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.S5-GC50K.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG1000-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG10RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG10RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-P2-CN-12MPPT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-P2-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-no-powercontrol.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG125CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG12RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG12RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG15RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG15RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG2000-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG20RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG20RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG250HX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG30CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG33CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG350HX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG40CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG40CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG500.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX-P2-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50KTL-M-20.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50KTL-M.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG5RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG5RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG60KTL-M.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG60KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG6RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG6RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG7RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG7RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG8RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG8RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNLITE.SL50K-C.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNLITE.SL5K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - TAIHUA.TD-300.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| in phtn only: 3 | |
| - ABB.PVS-100-TL-WB-SX2-no-stringmeter.INVERTER | |
| - LANDIS.E650-DLMS.POWERMETER | |
| - TEST-LTI.PVM2-45-230-EM.INVERTER | |
| in icms only: 1 | |
| - THINGNARIO.TEMPLATE.POWERMETER |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| phtn: 1391 | |
| icms: 1392 | |
| diff: 22 | |
| - ADVANTECH.ADAM-4017.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - ADVANTECH.ADAM-4118.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - CARLO.VMU-M.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - CHALLENGE.BAW-4C-V3.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['version_difference']"]} | |
| - CHALLENGE.BAW-4C.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - GROWATT.MAX-50KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - GROWATT.MAX-60KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - GROWATT.MAX-60KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - HAIWELL.S04AI.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HAIWELL.S08AI-E.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - RISH.Master-3440.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SCHNEIDER.CL25000.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SCHNEIDER.CL25000E.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE100K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE120K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE3000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE4000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE5000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE6000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE66.6K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE82.8K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - TAIHUA.TD-300.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| in phtn only: 0 | |
| in icms only: 1 | |
| - THINGNARIO.TEMPLATE.POWERMETER |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| phtn: 1391 | |
| icms: 1390 | |
| diff: 196 | |
| - ABB.PVS-100-TL-WB-SX2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ABB.PVS-120-TL-WB-SX2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ADVANTECH.ADAM-4017.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - ADVANTECH.ADAM-4118.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - AISWEI.ASW50K-LT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy Plus-110kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy Plus-136kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy-Max-30kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-100K-T400GL02-E.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-110K-T400.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-50K-T500.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CARLO.VMU-M.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - CHALLENGE.BAW-4C-V3.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['version_difference']"]} | |
| - CHALLENGE.BAW-4C.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - CYBERPOWER.CPSHB6000ETL48.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV120KETL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV15000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV22000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV30000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV3000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV33000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV33000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV36000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV3600ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV50000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV50000ETL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV55000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV6000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV66000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV8000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M100A-280.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M100A-283.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M125HV-111.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M125HV-113.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M20A-220.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M30A-230.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M70A-262.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M70A-263.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M88H-122.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - EEI.MASTER-300-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - EEI.MASTER-300.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ENETELUS.EOU-A-MBX01.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW-120K-HT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW25KA-SMT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW60KA-SMT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.10KTL3-US.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.20KTL3-US.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.22KTL3-SL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.30000TL3-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.33000TL3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.50KTL3-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.5500MTL-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-30KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-40KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50000TL3-SE-1MPTT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50KTL3-SE.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-60KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-100KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-125KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-150KTL3-X-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-150KTL3-X2-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-50KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[5]['comment']"]} | |
| - GROWATT.MAX-50KTL3-XL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-60KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-60KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[5]['comment']"]} | |
| - GROWATT.MAX-70KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-70KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-75KTL3-XL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-80KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-80KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MID40KTL3-X.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HAIWELL.S04AI.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HAIWELL.S08AI-E.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HUAWEI.SUN2000 100KTL-INM0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 115KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 12KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 17KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 185KTL-H1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M5.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 215KTL-H0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 215KTL-H3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 30KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-JP-3MPPT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-JP.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 36KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 36KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 4.95KTL-NHL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 40KTL-JP.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 40KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 42KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 43KTL-IN-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 43KTL-LN-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 5KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 60KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 65KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 8KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 2KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3.68KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4.6KTL.INVERTER | |
| {'type_changes': {"root[4]['nominalCapacity']": {'old_type': <class 'float'>, 'new_type': <class 'int'>, 'old_value': 5.0, 'new_value': 5}}, 'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - KACO.XP-550-OD-TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-10000S-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-100KS-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-110KH-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-125KH-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-15000S-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-30000H-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-3000M-V.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-5000M-V.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-60000H-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-60000T-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-75000T-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - RISH.Master-3440.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SCHNEIDER.CL-60E.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE100K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE40K-C.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE60K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.SOLID-Q50.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP-17000TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP110-60-FW1.01.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP110-60.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOFAR.80KTLX-G3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLAREDGE.SE3000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE4000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE5000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE6000H.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLAREDGE.SE82.8K-NEW.INVERTER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SOLGROW.DH110CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.100K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.110K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.80K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.S5-GC110K.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.S5-GC50K.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG1000-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG10RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG10RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-P2-CN-12MPPT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-P2-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-no-powercontrol.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG125CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG12RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG12RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG15RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG15RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG2000-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG20RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG20RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG250HX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG30CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG33CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG350HX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG40CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG40CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG500.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX-P2-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50KTL-M-20.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50KTL-M.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG5RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG5RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG60KTL-M.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG60KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG6RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG6RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG7RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG7RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG8RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG8RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNLITE.SL50K-C.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNLITE.SL5K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - TAIHUA.TD-300.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| in phtn only: 2 | |
| - LANDIS.E650-DLMS.POWERMETER | |
| - TEST-LTI.PVM2-45-230-EM.INVERTER | |
| in icms only: 1 | |
| - THINGNARIO.TEMPLATE.POWERMETER |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| phtn: 1386 | |
| icms: 1387 | |
| diff: 201 | |
| - ABB.PVS-100-TL-WB-SX2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ABB.PVS-120-TL-WB-SX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['writeOperations']['needReenableCtrl']"]} | |
| - ABB.PVS-120-TL-WB-SX2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['needReenableCtrl']"]} | |
| - ABB.TRIO-TM-50.0-400-1MPPT-MODBUS.INVERTER | |
| {'dictionary_item_removed': ["root[4]['writeOperations']['needReenableCtrl']"]} | |
| - ADVANTECH.ADAM-4017.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - ADVANTECH.ADAM-4118.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - AISWEI.ASW50K-LT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy Plus-110kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy Plus-136kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ALLIS.Trinergy-Max-30kW.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-100K-T400GL02-E.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-110K-T400.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CANADIANSOLAR.CSI-50K-T500.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CARLO.VMU-M.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - CHALLENGE.BAW-4C-V3.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['version_difference']"]} | |
| - CHALLENGE.BAW-4C.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - CYBERPOWER.CPSHB6000ETL48.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV120KETL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV15000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV22000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV30000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV3000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV33000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV33000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV36000ETLA-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV3600ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV50000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV50000ETL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV55000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV6000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV66000ETL-WB.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - CYBERPOWER.CPSPV8000ETLA.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M100A-280.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M100A-283.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M125HV-111.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M125HV-113.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M20A-220.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M30A-230.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M50A.INVERTER | |
| {'values_changed': {"root[4]['writeOperations']": {'new_value': {'startPowerControl': {'address': 48511, 'type': 'holding_write', 'values': [{'value': 1}]}, 'stopPowerControl': {'address': 48511, 'type': 'holding_write', 'values': [{'value': 0}]}, 'setPowerLimit': {'address': 48512, 'type': 'holding_write', 'unit': '%', 'scale': 100}}, 'old_value': {'startPowerControl': {'address': 48511, 'type': 'holding_write', 'values': [{'value': 1}]}, 'setPowerLimit': {'address': 48512, 'type': 'holding_write', 'unit': '%', 'scale': 100}, 'stopPowerControl': {'address': 48511, 'type': 'holding_write', 'values': [{'value': 0}]}, 'startReactivePowerControl': {'address': 48767, 'type': 'holding_write', 'values': [{'value': 3}]}, 'setReactivePowerLimit': {'address': 48783, 'type': 'holding_write', 'unit': '%', 'scale': 100}, 'stopReactivePowerControl': {'address': 48767, 'type': 'holding_write', 'values': [{'value': 0}]}, 'startPowerFactorControl': {'address': 48767, 'type': 'holding_write', 'values': [{'value': 1}]}, 'setPowerFactorLimit': {'address': 48768, 'type': 'holding_write', 'unit': '0.01', 'scale': 100}, 'stopPowerFactorControl': {'address': 48767, 'type': 'holding_write', 'values': [{'value': 0}]}, 'startVpsetControl': {'address': 48543, 'type': 'holding_write', 'values': [{'value': 1}]}, 'setVpsetLimit': {'address': 48547, 'type': 'holding_write', 'unit': '0.1', 'scale': 10}, 'stopVpsetControl': {'address': 48543, 'type': 'holding_write', 'values': [{'value': 0}]}}}}} | |
| - DELTA.M70A-262.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M70A-263.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - DELTA.M88H-122.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - EEI.MASTER-300-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - EEI.MASTER-300.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - ENETELUS.EOU-A-MBX01.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW-120K-HT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - GOODWE.GW25KA-SMT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GOODWE.GW40K-MT.INVERTER | |
| {'values_changed': {"root[4]['registerOperation'][0]['registerList'][0]['address']": {'new_value': 768, 'old_value': 512}, "root[4]['registerOperation'][0]['registerList'][0]['count']": {'new_value': 38, 'old_value': 8}, "root[4]['registerOperation'][1]['registerList'][0]['address']": {'new_value': 850, 'old_value': 768}, "root[4]['registerOperation'][1]['registerList'][0]['count']": {'new_value': 9, 'old_value': 38}}, 'iterable_item_removed': {"root[4]['registerOperation'][2]": {'registerList': [{'address': 850, 'count': 9, 'type': 'holding'}]}}} | |
| - GOODWE.GW60KA-SMT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.10KTL3-US.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.20KTL3-US.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.22KTL3-SL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.30000TL3-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.33000TL3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.50KTL3-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.5500MTL-S.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-30KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-40KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50000TL3-SE-1MPTT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50KTL3-SE.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-50KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAC-60KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-100KTL3-X-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-125KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-150KTL3-X-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-150KTL3-X2-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-50KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - GROWATT.MAX-50KTL3-XL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-60KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-60KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-70KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-70KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-75KTL3-XL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-80KTL3-LV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MAX-80KTL3-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - GROWATT.MID40KTL3-X.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HAIWELL.S04AI.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HAIWELL.S08AI-E.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']"]} | |
| - HUAWEI.SUN2000 100KTL-INM0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 100KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 115KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 12KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 15KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 15KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 15KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 17KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 185KTL-H1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 20KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 20KTL-M2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 20KTL-M5.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 20KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 215KTL-H0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 215KTL-H3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 30KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 33KTL-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-JP-3MPPT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL-JP.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 33KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 36KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 36KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 4.95KTL-NHL2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 40KTL-JP.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 40KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setPowerFactorLimit']['unit']"]} | |
| - HUAWEI.SUN2000 42KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 43KTL-IN-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 43KTL-LN-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL-C1.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 50KTL-M3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setPowerFactorLimit']['unit']"]} | |
| - HUAWEI.SUN2000 50KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 5KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - HUAWEI.SUN2000 60KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 65KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000 8KTL-M0.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 2KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3.68KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 3KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4.6KTL.INVERTER | |
| {'type_changes': {"root[4]['nominalCapacity']": {'old_type': <class 'float'>, 'new_type': <class 'int'>, 'old_value': 5.0, 'new_value': 5}}, 'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 4KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL-CN-4G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - HUAWEI.SUN2000L 5KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - KACO.XP-550-OD-TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-10000S-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-100KS-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-110KH-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-125KH-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-15000S-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-30000H-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-3000M-V.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-5000M-V.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-60000H-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-60000T-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - PRIMEVOLT.PV-75000T-U.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - RAINWISE.PVMET-100.METERHEADER | |
| {'values_changed': {"root[4]['childRegisterMappings']['ANE-01'][0]['count']": {'new_value': 2, 'old_value': 1}, "root[4]['childPositionRegisterMappings']['1'][0]['count']": {'new_value': 2, 'old_value': 1}}} | |
| - RAINWISE.PVMET-200-V0.METERHEADER | |
| {'values_changed': {"root[4]['childRegisterMappings']['ANE-01'][0]['count']": {'new_value': 2, 'old_value': 1}, "root[4]['childPositionRegisterMappings']['2'][0]['count']": {'new_value': 2, 'old_value': 1}}} | |
| - RAINWISE.PVMET-500.METERHEADER | |
| {'values_changed': {"root[4]['childRegisterMappings']['ANE-01'][0]['count']": {'new_value': 2, 'old_value': 1}, "root[4]['childPositionRegisterMappings']['1'][0]['count']": {'new_value': 2, 'old_value': 1}}} | |
| - RAINWISE.PVMET-75.METERHEADER | |
| {'values_changed': {"root[4]['childRegisterMappings']['ANE-01'][0]['count']": {'new_value': 2, 'old_value': 1}, "root[4]['childPositionRegisterMappings']['1'][0]['count']": {'new_value': 2, 'old_value': 1}}} | |
| - RISH.Master-3440.POWERMETER | |
| {'dictionary_item_removed': ["root[5]['comment']"]} | |
| - SCHNEIDER.CL-60E.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE100K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE40K-C.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SFE.SFE60K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.SOLID-Q50.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP-17000TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP110-60-FW1.01.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP110-60.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SMA.STP20000TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['writeOperations']['startPowerControl']['count']", "root[4]['writeOperations']['stopPowerControl']['count']", "root[4]['writeOperations']['setPowerLimit']['count']"]} | |
| - SMA.STP25000TL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['writeOperations']['startPowerControl']['count']", "root[4]['writeOperations']['stopPowerControl']['count']", "root[4]['writeOperations']['setPowerLimit']['count']"]} | |
| - SOFAR.80KTLX-G3.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLGROW.DH110CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.100K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.110K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.80K-5G.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.S5-GC110K.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SOLIS.S5-GC50K.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG1000-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG10RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG10RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-P2-CN-12MPPT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG110CX-P2-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - SUNGROW.SG110CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setPowerFactorLimit']['unit']"]} | |
| - SUNGROW.SG125CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - SUNGROW.SG12RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG12RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG15RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG15RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG2000-MV.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG20RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG20RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG250HX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG30CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - SUNGROW.SG33CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setPowerFactorLimit']['unit']"]} | |
| - SUNGROW.SG350HX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG40CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - SUNGROW.SG40CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG500.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX-P2-CN.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50CX-P2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - SUNGROW.SG50CX.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setReactivePowerLimit']", "root[4]['writeOperations']['startReactivePowerControl']", "root[4]['writeOperations']['stopReactivePowerControl']", "root[4]['writeOperations']['setPowerFactorLimit']", "root[4]['writeOperations']['startPowerFactorControl']", "root[4]['writeOperations']['stopPowerFactorControl']"]} | |
| - SUNGROW.SG50KTL-M-20.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG50KTL-M.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG5RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG5RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG60KTL-M.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG60KTL.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG6RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG6RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG7RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG7RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG8RT-V2.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNGROW.SG8RT.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - SUNLITE.SL50K-C.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']", "root[4]['writeOperations']['setPowerFactorLimit']['unit']"]} | |
| - SUNLITE.SL5K-A.INVERTER | |
| {'dictionary_item_removed': ["root[4]['deviceCompose']['canEnableStringMeter']"]} | |
| - TAIHUA.TD-300.METERHEADER | |
| {'dictionary_item_removed': ["root[4]['registerOperation'][0]['registerNumber']", "root[4]['registerOperation'][1]['registerNumber']"]} | |
| - VENA.OPCUA-HVSCADA-UHV.POWERMETER | |
| {'values_changed': {"root[4]['registerOperation'][0]['registerList'][0]['type']": {'new_value': 'opcua', 'old_value': 'proprietary'}}} | |
| in phtn only: 0 | |
| in icms only: 1 | |
| - THINGNARIO.TEMPLATE.POWERMETER |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| [flake8] | |
| max_line_length = 100 | |
| [isort] | |
| line_length = 100 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment