zigbee-herdsman-converters
Version:
Collection of device converters to be used with zigbee-herdsman
1,736 lines • 76.3 kB
JavaScript
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
var ownKeys = function(o) {
ownKeys = Object.getOwnPropertyNames || function (o) {
var ar = [];
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
return ar;
};
return ownKeys(o);
};
return function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
__setModuleDefault(result, mod);
return result;
};
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.definitions = void 0;
const node_buffer_1 = require("node:buffer");
const zigbee_herdsman_1 = require("zigbee-herdsman");
const fz = __importStar(require("../converters/fromZigbee"));
const constants_1 = require("../lib/constants");
const exposes = __importStar(require("../lib/exposes"));
const logger_1 = require("../lib/logger");
const reporting = __importStar(require("../lib/reporting"));
const globalStore = __importStar(require("../lib/store"));
const ea = exposes.access;
const e = exposes.presets;
const METER_ID_CLUSTER = "haMeterIdentification"; // 0x0B01
const CLUSTER_ELE = "haElectricalMeasurement"; // 0x0B04
const CLUSTER_MET = "seMetering"; // 0x0702
const CLUSTER_TIC = "manuSpecificGmmts"; // 0xFF42
const STRING = "string";
const NUMBER = "numeric";
const NUM_RW = "read/write numeric";
const ENUM = "enum";
const TIME = "date";
const TRANSLATION_EN = "ENGLISH";
const TRANSLATION_FR = "FRANCAIS";
const DEFAULT_POLL_INTERVAL = 120;
const C = {
ANY: "AUTO",
BASE: "BASE",
HCHP: "HCHP",
EJP: "EJP",
TEMPO: "TEMPO",
};
const E = {
ANY: "AUTO",
MONO: "MONOPHASE",
TRI: "TRIPHASE",
};
const T = {
ANY: "AUTO",
HIST: "HISTORIQUE",
STD: "STANDARD",
};
const modeTICEnum = ["HISTORIQUE", "STANDARD", "AUTO"];
const modeElecEnum = ["MONOPHASE", "TRIPHASE", "AUTO"];
const modeContractEnum = ["AUTO", "BASE", "HCHP", "EJP", "TEMPO", "PRODUCTEUR"];
const ticmeterOptionsFRTr = {
0: {
descEN: `Refresh rate for static values (those with refresh buttons). Default: ${DEFAULT_POLL_INTERVAL} s`,
descFR: `Temps d'actualisation des valeurs statiques (celles qui possèdent des boutons refresh). Par défaut: ${DEFAULT_POLL_INTERVAL} s`,
},
1: {
descEN: "Linky TIC communication mode. Defaults to AUTO mode. To be used in case of problem",
descFR: "Mode de communication TIC du Linky. Par défaut en mode AUTO. À utiliser en cas de problème",
},
2: {
descEN: "Current electricity contract on Linky. Defaults to AUTO mode. Displays the correct entities. To be used in case of problem",
descFR: "Contrat électrique actuel sur le Linky. Par défaut en mode AUTO. Permet d'afficher les bonnes entités. À utiliser en cas de problème",
},
3: {
descEN: "Linky electrical mode. Defaults to AUTO mode. To be used in case of problem",
descFR: "Mode électrique du Linky. Par défaut en mode AUTO. À utiliser en cas de problème",
},
4: {
descEN: "Producer mode: displays electricity production indexes. Default: OFF",
descFR: "Mode producteur: affiche les index de production électrique. Par défaut: OFF",
},
5: {
descEN: "Displays all meter data. For advanced use. Default: OFF",
descFR: "Affiche toutes les données du compteur. Pour un usage avancé. Par défaut: OFF",
},
6: { descEN: "Language: Default French", descFR: "Langue. Par défaut Francais" },
};
const ticmeterOptions = [
e.numeric("refresh_rate", ea.SET).withValueMin(60).withDescription(ticmeterOptionsFRTr[0].descEN).withValueMin(60).withValueMax(3600),
e.enum("tic_mode", ea.SET, modeTICEnum).withDescription(ticmeterOptionsFRTr[1].descEN),
e.enum("contract_type", ea.SET, modeContractEnum).withDescription(ticmeterOptionsFRTr[2].descEN),
e.enum("linky_elec", ea.SET, modeElecEnum).withDescription(ticmeterOptionsFRTr[3].descEN),
e.binary("producer", ea.SET, "ON", "OFF").withDescription(ticmeterOptionsFRTr[4].descEN),
e.binary("advanced", ea.SET, "ON", "OFF").withDescription(ticmeterOptionsFRTr[5].descEN),
e.enum("translation", ea.SET, [TRANSLATION_FR, TRANSLATION_EN]).withDescription(ticmeterOptionsFRTr[6].descEN),
];
const ticmeterDatasFRTranslation = {
0: { nameFR: "Mode_TIC", descFR: "Mode_de_communication_TIC" },
1: { nameFR: "Mode_electrique", descFR: "Mode_de_electrique_du_compteur" },
2: { nameFR: "Option_tarifaire", descFR: "Option_tarifaire" },
3: { nameFR: "Duree_de_fonctionnement", descFR: "Duree_depuis_le_dernier_redemarrage" },
4: { nameFR: "Duree_actualisation", descFR: "Duree_entre_les_actualisations" },
5: { nameFR: "Identifiant", descFR: "Numero_de_serie_du_compteur" },
6: { nameFR: "Puissance_Max_contrat", descFR: "Puissance_Max_contrat" },
7: { nameFR: "Index_total", descFR: "Somme_de_tous_les_index" },
8: { nameFR: "Index_BASE", descFR: "Index_Tarif_Base" },
9: { nameFR: "Index_HC", descFR: "Index_Tarif_Heures_Creuses" },
10: { nameFR: "Index_HP", descFR: "Index_Tarif_Heures_Pleines" },
11: { nameFR: "Index_EJP_HN", descFR: "Index_Tarif_EJP_Heures_Normales" },
12: { nameFR: "Index_EJP_HPM", descFR: "Index_Tarif_EJP_Heures_de_Pointe_Mobile" },
13: { nameFR: "Preavis_EJP", descFR: "Preavis_EJP" },
14: { nameFR: "Index_BBRHCJB", descFR: "Index_Tarif_Heures_Creuses_Jours_Bleus" },
15: { nameFR: "Index_BBRHPJB", descFR: "Index_Tarif_Heures_Pleines_Jours_Bleus" },
16: { nameFR: "Index_BBRHCJW", descFR: "Index_Tarif_Heures_Creuses_Jours_Blancs" },
17: { nameFR: "Index_BBRHPJW", descFR: "Index_Tarif_Heures_Pleines_Jours_Blancs" },
18: { nameFR: "Index_BBRHCJR", descFR: "Index_Tarif_Heures_Creuses_Jours_Rouges" },
19: { nameFR: "Index_BBRHPJR", descFR: "Index_Tarif_Heures_Pleines_Jours_Rouges" },
20: { nameFR: "Index_7", descFR: "Index_7" },
21: { nameFR: "Index_8", descFR: "Index_8" },
22: { nameFR: "Index_9", descFR: "Index_9" },
23: { nameFR: "Index_10", descFR: "Index_10" },
24: { nameFR: "Tarif_en_cours", descFR: "Option_tarifaire_en_cours" },
25: { nameFR: "Couleur_demain", descFR: "Couleur_demain" },
26: { nameFR: "Intensite_instantanee", descFR: "Intensite_instantanee" },
27: { nameFR: "Intensite_instantanee_Ph_A", descFR: "Intensite_instantanee_Phase_A" },
28: { nameFR: "Intensite_instantanee_Ph_B", descFR: "Intensite_instantanee_Phase_B" },
29: { nameFR: "Intensite_instantanee_Ph_C", descFR: "Intensite_instantanee_Phase_C" },
30: { nameFR: "Intensite_maximale", descFR: "Intensite_maximale" },
31: { nameFR: "Intensite_maximale_Ph_A", descFR: "Intensite_maximale_Phase_A" },
32: { nameFR: "Intensite_maximale_Ph_B", descFR: "Intensite_maximale_Phase_B" },
33: { nameFR: "Intensite_maximale_Ph_C", descFR: "Intensite_maximale_Phase_C" },
34: { nameFR: "Depassement_de_puissance", descFR: "Depassement_de_puissance" },
35: { nameFR: "Depassement_Itensite_Ph_A", descFR: "Depassement_de_puissance_Phase_A" },
36: { nameFR: "Depassement_Itensite_Ph_B", descFR: "Depassement_de_puissance_Phase_B" },
37: { nameFR: "Depassement_Itensite_Ph_C", descFR: "Depassement_de_puissance_Phase_C" },
38: { nameFR: "Puissance_Apparente", descFR: "Puissance_Apparente" },
39: { nameFR: "Puissance_Apparente_Ph_A", descFR: "Puissance_Apparente_Phase_A" },
40: { nameFR: "Puissance_Apparente_Ph_B", descFR: "Puissance_Apparente_Phase_B" },
41: { nameFR: "Puissance_Apparente_Ph_C", descFR: "Puissance_Apparente_Phase_C" },
42: { nameFR: "Index_energie_injectee", descFR: "Index_energie_injectee" },
43: { nameFR: "Puissance_injectee", descFR: "Puissance_injectee" },
44: { nameFR: "Puissance_max_injectee_Auj.", descFR: "Puissance_max_injectee_Aujourdhui" },
45: { nameFR: "Heure_PMAX_injectee_Auj.", descFR: "Date_et_Heure_puissance_max_injectee_aujourdhui" },
46: { nameFR: "Puissance_max_injectee_Hier", descFR: "Puissance_max_injectee_Hier" },
47: { nameFR: "Heure_PMAX_injectee_Hier", descFR: "Date_et_Heure_puissance_max_injectee_hier" },
48: { nameFR: "Presence_de_potentiels", descFR: "Presence_de_potentiels" },
49: { nameFR: "Horaire_Heures_Creuses", descFR: "Horaire_Heures_Creuses" },
50: { nameFR: "Registre_de_Status", descFR: "Registre_de_status_du_compteur" },
51: { nameFR: "Index_1_Distributeur", descFR: "Index_1_Energie_soutiree_Distributeur" },
52: { nameFR: "Index_2_Distributeur", descFR: "Index_2_Energie_soutiree_Distributeur" },
53: { nameFR: "Index_3_Distributeur", descFR: "Index_3_Energie_soutiree_Distributeur" },
54: { nameFR: "Index_4_Distributeur", descFR: "Index_4_Energie_soutiree_Distributeur" },
55: { nameFR: "Tension_instantanee", descFR: "Tension_instantanee_efficace" },
56: { nameFR: "Tension_instantanee_Ph_A", descFR: "Tension_instantanee_efficace_Phase_A" },
57: { nameFR: "Tension_instantanee_Ph_B", descFR: "Tension_instantanee_efficace_Phase_B" },
58: { nameFR: "Tension_instantanee_Ph_C", descFR: "Tension_instantanee_efficace_Phase_C" },
59: { nameFR: "Tension_moyenne", descFR: "Tension_moyenne" },
60: { nameFR: "Tension_moyenne_Ph_A", descFR: "Tension_moyenne_Phase_A" },
61: { nameFR: "Tension_moyenne_Ph_B", descFR: "Tension_moyenne_Phase_B" },
62: { nameFR: "Tension_moyenne_Ph_C", descFR: "Tension_moyenne_Phase_C" },
63: { nameFR: "Puissance_max_Auj", descFR: "Puissance_max_Aujourdhui" },
64: { nameFR: "Heure_Puissance_max_Auj", descFR: "Date_et_Heure_de_la_puissance_max_aujourdhui" },
65: { nameFR: "Puissance_max_Auj_Ph_A", descFR: "Puissance_max_Aujourdhui_Phase_A" },
66: { nameFR: "Heure_Puissance_max_Auj_Ph_A", descFR: "Date_et_Heure_de_la_puissance_max_aujourdhui_Ph_A" },
67: { nameFR: "Puissance_max_Auj_Ph_B", descFR: "Puissance_max_Aujourdhui_Phase_B" },
68: { nameFR: "Heure_Puissance_max_Auj_Ph_B", descFR: "Date_et_Heure_de_la_puissance_max_aujourdhui_Ph_B" },
69: { nameFR: "Puissance_max_Auj_Ph_C", descFR: "Puissance_max_Aujourdhui_Phase_C" },
70: { nameFR: "Heure_Puissance_max_Auj_Ph_C", descFR: "Date_et_Heure_de_la_puissance_max_aujourdhui_Ph_C" },
71: { nameFR: "Puissance_maximale_triphasee", descFR: "Puissance_maximale_triphasee" },
72: { nameFR: "Puissance_max_Hier", descFR: "Puissance_max_Hier" },
73: { nameFR: "Heure_Puissance_max_Hier", descFR: "Date_et_Heure_de_la_puissance_max_hier" },
74: { nameFR: "Puissance_max_Hier_Ph_A", descFR: "Puissance_max_Hier_Phase_A" },
75: { nameFR: "Heure_Puissance_max_Hier_Ph_A", descFR: "Date_et_Heure_de_la_puissance_max_hier_Ph_A" },
76: { nameFR: "Puissance_max_Hier_Ph_B", descFR: "Puissance_max_Hier_Phase_B" },
77: { nameFR: "Heure_Puissance_max_Hier_Ph_B", descFR: "Date_et_Heure_de_la_puissance_max_hier_Ph_B" },
78: { nameFR: "Puissance_max_Hier_Ph_C", descFR: "Puissance_max_Hier_Phase_C" },
79: { nameFR: "Heure_Puissance_max_Hier_Ph_C", descFR: "Date_et_Heure_de_la_puissance_max_hier_Ph_C" },
80: { nameFR: "Index_en_cours", descFR: "Numereo_de_lindex_tarifaire_en_cours" },
81: { nameFR: "N_jours_en_cours", descFR: "N_jours_en_cours_fournisseur" },
82: { nameFR: "N_prochain_jour", descFR: "N_prochain_jour_fournisseur" },
83: { nameFR: "Relais", descFR: "Relais_virtuel_du_compteur" },
84: { nameFR: "PMR", descFR: "Identifiant_Point_Reference_Mesure" },
85: { nameFR: "Message_court", descFR: "Message_court" },
86: { nameFR: "Message_ultra_court", descFR: "Message_ultra_court" },
87: { nameFR: "Version_de_la_TIC", descFR: "Version_de_la_TIC" },
88: { nameFR: "Date_et_heure_Compteur", descFR: "Date_et_heure_du_compteur" },
89: { nameFR: "Profil_prochain_jour", descFR: "Profil_du_prochain_jour" },
90: { nameFR: "Profil_prochain_jour_pointe", descFR: "Profil_du_prochain_jour_pointe" },
91: { nameFR: "Point_n_courbe_soutiree", descFR: "Point_n_de_la_courbe_de_charge_active_soutiree" },
92: { nameFR: "Point_n-1_courbe_soutiree", descFR: "Point_n-1_de_la_courbe_de_charge_active_soutiree" },
93: { nameFR: "Point_n_courbe_injectee", descFR: "Point_n_de_la_courbe_de_charge_active_injectee" },
94: { nameFR: "Point_n-1_courbe_injectee", descFR: "Point_n-1_de_la_courbe_de_charge_active_injectee" },
95: { nameFR: "Energie_reactive_Q1_totale", descFR: "Energie_reactive_Q1_totale" },
96: { nameFR: "Energie_reactive_Q2_totale", descFR: "Energie_reactive_Q2_totale" },
97: { nameFR: "Energie_reactive_Q3_totale", descFR: "Energie_reactive_Q3_totale" },
98: { nameFR: "Energie_reactive_Q4_totale", descFR: "Energie_reactive_Q4_totale" },
99: { nameFR: "Debut_Pointe_Mobile_1", descFR: "Debut_Pointe_Mobile_1" },
100: { nameFR: "Fin_Pointe_Mobile_1", descFR: "Fin_Pointe_Mobile_1" },
101: { nameFR: "Debut_Pointe_Mobile_2", descFR: "Debut_Pointe_Mobile_2" },
102: { nameFR: "Fin_Pointe_Mobile_2", descFR: "Fin_Pointe_Mobile_2" },
103: { nameFR: "Debut_Pointe_Mobile_3", descFR: "Debut_Pointe_Mobile_3" },
104: { nameFR: "Fin_Pointe_Mobile_3", descFR: "Fin_Pointe_Mobile_3" },
};
const ticmeterDatas = [
{
id: 0,
name: "TIC_Mode",
desc: "TIC_Communication_Mode",
clust: CLUSTER_TIC,
attr: "ticMode",
type: ENUM,
unit: "",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
values: modeTICEnum,
},
{
id: 1,
name: "Electric_Mode",
desc: "Meter_Electric_Mode",
clust: CLUSTER_TIC,
attr: "elecMode",
type: ENUM,
unit: "",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
values: modeElecEnum,
},
{
id: 2,
name: "Tariff_Option",
desc: "Tariff_Option",
clust: CLUSTER_TIC,
attr: "contractType",
type: STRING,
unit: "",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 3,
name: "Uptime",
desc: "Duration_since_last_restart",
clust: CLUSTER_TIC,
attr: "uptime",
type: NUMBER,
unit: "s",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 4,
name: "Refresh_Rate",
desc: "Time_between_refreshes",
clust: CLUSTER_TIC,
attr: "refreshRate",
type: NUM_RW,
unit: "s",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
min: 30,
max: 300,
},
{
id: 5,
name: "Identifier",
desc: "Meter_serial_number",
clust: CLUSTER_MET,
attr: "meterSerialNumber",
type: STRING,
unit: "",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 6,
name: "Max_Contract_Power",
desc: "Max_Contract_Power",
clust: CLUSTER_TIC,
attr: "maxContractPower",
type: NUMBER,
unit: "kVA",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 7,
name: "Total_Index",
desc: "Sum_of_all_Index",
clust: CLUSTER_MET,
attr: "currentSummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 8,
name: "BASE_Index",
desc: "Base_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier1SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.BASE,
elec: E.ANY,
prod: false,
},
{
id: 9,
name: "Off-Peak_Index",
desc: "Off-Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier1SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.HCHP,
elec: E.ANY,
prod: false,
},
{
id: 10,
name: "Peak_Index",
desc: "Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier2SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.HCHP,
elec: E.ANY,
prod: false,
},
{
id: 11,
name: "EJP_Normal_Hours_Index",
desc: "EJP_Normal_Hours_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier1SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 12,
name: "EJP_Mobile_Peak_Hours_Index",
desc: "EJP_Mobile_Peak_Hours_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier2SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 13,
name: "EJP_Notice",
desc: "EJP_Notice",
clust: CLUSTER_TIC,
attr: "startEJP",
type: STRING,
unit: "",
poll: false,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 14,
name: "BBRHCJB_Index",
desc: "Blue_Days_Off-Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier1SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 15,
name: "BBRHPJB_Index",
desc: "Blue_Days_Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier2SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 16,
name: "BBRHCJW_Index",
desc: "White_Days_Off-Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier3SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 17,
name: "BBRHPJW_Index",
desc: "White_Days_Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier4SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 18,
name: "BBRHCJR_Index",
desc: "Red_Days_Off-Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier5SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 19,
name: "BBRHPJR_Index",
desc: "Red_Days_Peak_Tariff_Index",
clust: CLUSTER_MET,
attr: "currentTier6SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 20,
name: "Index_7",
desc: "Index_7",
clust: CLUSTER_MET,
attr: "currentTier7SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 21,
name: "Index_8",
desc: "Index_8",
clust: CLUSTER_MET,
attr: "currentTier8SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 22,
name: "Index_9",
desc: "Index_9",
clust: CLUSTER_MET,
attr: "currentTier9SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 23,
name: "Index_10",
desc: "Index_10",
clust: CLUSTER_MET,
attr: "currentTier10SummDelivered",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 24,
name: "Current_Tariff",
desc: "Current_Tariff_Option",
clust: CLUSTER_TIC,
attr: "currentTarif",
type: STRING,
unit: "",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 25,
name: "Tomorrow_Color",
desc: "Tomorrow_Color",
clust: CLUSTER_TIC,
attr: "tomorowColor",
type: STRING,
unit: "",
poll: false,
tic: T.ANY,
contract: C.TEMPO,
elec: E.ANY,
prod: false,
},
{
id: 26,
name: "Instant_Intensity",
desc: "Instant_Intensity",
clust: CLUSTER_ELE,
attr: "rmsCurrent",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 27,
name: "Instant_Intensity_Phase_A",
desc: "Instant_Intensity_Phase_A",
clust: CLUSTER_ELE,
attr: "rmsCurrent",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 28,
name: "Instant_Intensity_Phase_B",
desc: "Instant_Intensity_Phase_B",
clust: CLUSTER_ELE,
attr: "rmsCurrentPhB",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 29,
name: "Instant_Intensity_Phase_C",
desc: "Instant_Intensity_Phase_C",
clust: CLUSTER_ELE,
attr: "rmsCurrentPhC",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 30,
name: "Max_Intensity",
desc: "Max_Intensity",
clust: CLUSTER_ELE,
attr: "rmsCurrentMax",
type: NUMBER,
unit: "A",
poll: true,
tic: T.HIST,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 31,
name: "Max_Intensity_Phase_A",
desc: "Max_Intensity_Phase_A",
clust: CLUSTER_ELE,
attr: "rmsCurrentMax",
type: NUMBER,
unit: "A",
poll: true,
tic: T.HIST,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 32,
name: "Max_Intensity_Phase_B",
desc: "Max_Intensity_Phase_B",
clust: CLUSTER_ELE,
attr: "rmsCurrentMaxPhB",
type: NUMBER,
unit: "A",
poll: true,
tic: T.HIST,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 33,
name: "Max_Intensity_Phase_C",
desc: "Max_Intensity_Phase_C",
clust: CLUSTER_ELE,
attr: "rmsCurrentMaxPhC",
type: NUMBER,
unit: "A",
poll: true,
tic: T.HIST,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 34,
name: "Power_Exceedance",
desc: "Power_Exceedance",
clust: CLUSTER_TIC,
attr: "powerOverrun",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 35,
name: "Power_Exceedance_Phase_A",
desc: "Power_Exceedance_Phase_A",
clust: CLUSTER_TIC,
attr: "powerOverrunA",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 36,
name: "Power_Exceedance_Phase_B",
desc: "Power_Exceedance_Phase_B",
clust: CLUSTER_TIC,
attr: "powerOverrunB",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 37,
name: "Power_Exceedance_Phase_C",
desc: "Power_Exceedance_Phase_C",
clust: CLUSTER_TIC,
attr: "powerOverrunC",
type: NUMBER,
unit: "A",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 38,
name: "Apparent_Power",
desc: "Apparent_Power",
clust: CLUSTER_ELE,
attr: "apparentPower",
type: NUMBER,
unit: "VA",
poll: false,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 39,
name: "Apparent_Power_Phase_A",
desc: "Apparent_Power_Phase_A",
clust: CLUSTER_ELE,
attr: "apparentPower",
type: NUMBER,
unit: "VA",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 40,
name: "Apparent_Power_Phase_B",
desc: "Apparent_Power_Phase_B",
clust: CLUSTER_ELE,
attr: "apparentPowerPhB",
type: NUMBER,
unit: "VA",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 41,
name: "Apparent_Power_Phase_C",
desc: "Apparent_Power_Phase_C",
clust: CLUSTER_ELE,
attr: "apparentPowerPhC",
type: NUMBER,
unit: "VA",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 42,
name: "Injected_Energy_Index",
desc: "Injected_Energy_Index",
clust: CLUSTER_MET,
attr: "currentSummReceived",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 43,
name: "Injected_Power",
desc: "Injected_Power",
clust: CLUSTER_TIC,
attr: "powerInjected",
type: NUMBER,
unit: "VA",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 44,
name: "Today_Max_Injected_Power",
desc: "Max_Injected_Power_Today",
clust: CLUSTER_TIC,
attr: "powerMaxInjected",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 45,
name: "Today_Time_Max_Injected_Power",
desc: "Date_and_Time_of_Today_Max_Injected",
clust: CLUSTER_TIC,
attr: "powerMaxInjectedTime",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 46,
name: "Yesterday_Max_Injected_Power",
desc: "Max_Injected_Power_Yesterday",
clust: CLUSTER_TIC,
attr: "powerMaxInjectedYesterday",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 47,
name: "Yesterday_Time_Max_Injected_Power",
desc: "Date_and_Time_of_Yesterday_Max_Injected",
clust: CLUSTER_TIC,
attr: "powerMaxInjectedYesterdayTime",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 48,
name: "Potential_Presence",
desc: "Potential_Presence",
clust: CLUSTER_TIC,
attr: "potentialPresence",
type: NUMBER,
unit: "",
poll: true,
tic: T.HIST,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 49,
name: "Off-Peak_Hours_Schedule",
desc: "Off-Peak_Hours_Schedule",
clust: CLUSTER_TIC,
attr: "hcHours",
type: STRING,
unit: "",
poll: false,
tic: T.ANY,
contract: C.HCHP,
elec: E.ANY,
prod: false,
},
{
id: 50,
name: "Status_Register",
desc: "Meter_Status_Register",
clust: CLUSTER_TIC,
attr: "motdetat",
type: STRING,
unit: "",
poll: true,
tic: T.ANY,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 51,
name: "Distributor_Index_1",
desc: "Distributor_Drawn_Energy_Index_1",
clust: CLUSTER_TIC,
attr: "index1Dist",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 52,
name: "Distributor_Index_2",
desc: "Distributor_Drawn_Energy_Index_2",
clust: CLUSTER_TIC,
attr: "index2Dist",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 53,
name: "Distributor_Index_3",
desc: "Distributor_Drawn_Energy_Index_3",
clust: CLUSTER_TIC,
attr: "index3Dist",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 54,
name: "Distributor_Index_4",
desc: "Distributor_Drawn_Energy_Index_4",
clust: CLUSTER_TIC,
attr: "index4Dist",
type: NUMBER,
unit: "Wh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 55,
name: "Instantaneous_Voltage",
desc: "Instantaneous_Effective_Voltage",
clust: CLUSTER_ELE,
attr: "rmsVoltage",
type: NUMBER,
unit: "V",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 56,
name: "Instantaneous_Voltage_Phase_A",
desc: "Instantaneous_Effective_Voltage_Phase_A",
clust: CLUSTER_ELE,
attr: "rmsVoltage",
type: NUMBER,
unit: "V",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 57,
name: "Instantaneous_Voltage_Phase_B",
desc: "Instantaneous_Effective_Voltage_Phase_B",
clust: CLUSTER_ELE,
attr: "rmsVoltagePhB",
type: NUMBER,
unit: "V",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 58,
name: "Instantaneous_Voltage_Phase_C",
desc: "Instantaneous_Effective_Voltage_Phase_C",
clust: CLUSTER_ELE,
attr: "rmsVoltagePhC",
type: NUMBER,
unit: "V",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 59,
name: "Average_Voltage",
desc: "Average_Voltage",
clust: CLUSTER_ELE,
attr: "averageRmsVoltageMeasPeriod",
type: NUMBER,
unit: "V",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 60,
name: "Average_Voltage_Phase_A",
desc: "Average_Voltage_Phase_A",
clust: CLUSTER_ELE,
attr: "averageRmsVoltageMeasPeriod",
type: NUMBER,
unit: "V",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 61,
name: "Average_Voltage_Phase_B",
desc: "Average_Voltage_Phase_B",
clust: CLUSTER_ELE,
attr: "averageRmsVoltageMeasurePeriodPhB",
type: NUMBER,
unit: "V",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 62,
name: "Average_Voltage_Phase_C",
desc: "Average_Voltage_Phase_C",
clust: CLUSTER_ELE,
attr: "averageRmsVoltageMeasPeriodPhC",
type: NUMBER,
unit: "V",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 63,
name: "Today_Max_Power",
desc: "Max_Power_Today",
clust: CLUSTER_ELE,
attr: "activePowerMax",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 64,
name: "Time_Today_Max_Power",
desc: "Date_and_Time_of_Max_Power_Today",
clust: CLUSTER_TIC,
attr: "powerMaxTodayTime",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 65,
name: "Today_Max_Power_Phase_A",
desc: "Max_Power_Today_Phase_A",
clust: CLUSTER_ELE,
attr: "activePowerMax",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 66,
name: "Time_Today_Max_Power_Phase_A",
desc: "Date_and_Time_of_Today_Max Power_Phase_A",
clust: CLUSTER_TIC,
attr: "powerMaxToday1Time",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 67,
name: "Today_Max_Power_Phase_B",
desc: "Max_Power_Today_Phase_B",
clust: CLUSTER_ELE,
attr: "activePowerMaxPhB",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 68,
name: "Time_Today_Max_Power_Phase_B",
desc: "Date_and_Time_of_Max_Power_Today_Phase_B",
clust: CLUSTER_TIC,
attr: "powerMaxToday2Time",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 69,
name: "Today_Max_Power_Phase_C",
desc: "Max_Power_Today_Phase_C",
clust: CLUSTER_ELE,
attr: "activePowerMaxPhC",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 70,
name: "Time_Today_Max_Power_Phase_C",
desc: "Date_and_Time_of_Max_Power_Today_Phase_C",
clust: CLUSTER_TIC,
attr: "powerMaxToday3Time",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 71,
name: "Three-Phase_Max_Power",
desc: "Three-Phase_Max_Power",
clust: CLUSTER_ELE,
attr: "activePowerMax",
type: NUMBER,
unit: "W",
poll: true,
tic: T.HIST,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 72,
name: "Yesterday_Max_Power",
desc: "Max_Power_Yesterday",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 73,
name: "Time_Yesterday_Max_Power",
desc: "Date_and_Time_of_Max_Power_Yesterday",
clust: CLUSTER_TIC,
attr: "powerMaxYesterdayTime",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.MONO,
prod: false,
},
{
id: 74,
name: "Max_Yesterday_Power_Phase_A",
desc: "Max_Power_Yesterday_Phase_A",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday1",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 75,
name: "Time_Yesterday_Max_Power_Phase_A",
desc: "DateTime_of_Max_Power_Yesterday_Phase_A",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday1Time",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 76,
name: "Max_Yesterday_Power_Phase_B",
desc: "Max_Power_Yesterday_Phase_B",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday2",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 77,
name: "Time_Yesterday_Max_Power_Phase_B",
desc: "DateTime_of_Max_Power_Yesterday_Phase_B",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday2Time",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 78,
name: "Max_Yesterday_Power_Phase_C",
desc: "Max_Power_Yesterday_Phase_C",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday3",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 79,
name: "Time_Yesterday_Max_Power_Phase_C",
desc: "DateTime_of_Max_Power_Yesterday_Phase_C",
clust: CLUSTER_TIC,
attr: "powerMaxYesterday3Time",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.TRI,
prod: false,
},
{
id: 80,
name: "Current_Index",
desc: "Current_Tariff_Index_Number",
clust: CLUSTER_TIC,
attr: "currentIndex",
type: NUMBER,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 81,
name: "Current_Days_Number",
desc: "Current_Supplier_Days_Number",
clust: CLUSTER_TIC,
attr: "calendarSupplierDay",
type: NUMBER,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 82,
name: "Next_Day_Number",
desc: "Next_Supplier_Day_Number",
clust: CLUSTER_TIC,
attr: "nextSupplierCalendarDay",
type: NUMBER,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 83,
name: "Relay",
desc: "Meter_Virtual_Relay",
clust: CLUSTER_TIC,
attr: "relays",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 84,
name: "PMR",
desc: "Measurement_Reference_Point_Identifier",
clust: CLUSTER_MET,
attr: "siteId",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 85,
name: "Short_Message",
desc: "Short_Message",
clust: CLUSTER_TIC,
attr: "shortMsg",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 86,
name: "Ultra-Short_Message",
desc: "Ultra-Short_Message",
clust: CLUSTER_TIC,
attr: "ultraShortMsg",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 87,
name: "TIC_Version",
desc: "TIC_Version",
clust: CLUSTER_TIC,
attr: "ticVersion",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 88,
name: "Meter_Date_and_Time",
desc: "Meter_Date_and_Time",
clust: CLUSTER_TIC,
attr: "date",
type: TIME,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 89,
name: "Next_Day_Profile",
desc: "Next_Day_Profile",
clust: CLUSTER_TIC,
attr: "calendarDay",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 90,
name: "Next_Day_Peak_Profile",
desc: "Next_Day_Peak_Profile",
clust: CLUSTER_TIC,
attr: "calendarDayPointe",
type: STRING,
unit: "",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 91,
name: "Current_Drawn_Curve_Point",
desc: "Current_Drawn_Active_Load_Curve_Point",
clust: CLUSTER_ELE,
attr: "activePower",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 92,
name: "Previous_Drawn_Curve_Point",
desc: "Previous_Drawn_Active_Load_Curve_Point",
clust: CLUSTER_ELE,
attr: "activePowerPhB",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 93,
name: "Current_Injected_Curve_Point",
desc: "Current_Injected_Active_Load_Curve_Point",
clust: CLUSTER_TIC,
attr: "injectedLoadN",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 94,
name: "Previous_Injected_Curve_Point",
desc: "Previous_Injected_Active_Load_Curve_Point",
clust: CLUSTER_TIC,
attr: "injectedLoadN_1",
type: NUMBER,
unit: "VA",
poll: true,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: true,
},
{
id: 95,
name: "Total_Reactive_Energy_Q1",
desc: "Total_Reactive_Energy_Q1",
clust: CLUSTER_ELE,
attr: "totalReactivePower",
type: NUMBER,
unit: "VARh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 96,
name: "Total_Reactive_Energy_Q2",
desc: "Total_Reactive_Energy_Q2",
clust: CLUSTER_ELE,
attr: "reactivePower",
type: NUMBER,
unit: "VARh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 97,
name: "Total_Reactive_Energy_Q3",
desc: "Total_Reactive_Energy_Q3",
clust: CLUSTER_ELE,
attr: "reactivePowerPhB",
type: NUMBER,
unit: "VARh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 98,
name: "Total_Reactive_Energy_Q4",
desc: "Total_Reactive_Energy_Q4",
clust: CLUSTER_ELE,
attr: "reactivePowerPhC",
type: NUMBER,
unit: "VARh",
poll: false,
tic: T.STD,
contract: C.ANY,
elec: E.ANY,
prod: false,
},
{
id: 99,
name: "Start_Mobile_Peak_1",
desc: "Start_Mobile_Peak_1",
clust: CLUSTER_TIC,
attr: "startEJP1",
type: TIME,
unit: "",
poll: true,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 100,
name: "End_Mobile_Peak_1",
desc: "End_Mobile_Peak_1",
clust: CLUSTER_TIC,
attr: "stopEJP1",
type: TIME,
unit: "",
poll: true,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 101,
name: "Start_Mobile_Peak_2",
desc: "Start_Mobile_Peak_2",
clust: CLUSTER_TIC,
attr: "startEJP2",
type: TIME,
unit: "",
poll: true,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 102,
name: "End_Mobile_Peak_2",
desc: "End_Mobile_Peak_2",
clust: CLUSTER_TIC,
attr: "stopEJP2",
type: TIME,
unit: "",
poll: true,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 103,
name: "Start_Mobile_Peak_3",
desc: "Start_Mobile_Peak_3",
clust: CLUSTER_TIC,
attr: "startEJP3",
type: TIME,
unit: "",
poll: true,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
{
id: 104,
name: "End_Mobile_Peak_3",
desc: "End_Mobile_Peak_3",
clust: CLUSTER_TIC,
attr: "stopEJP3",
type: TIME,
unit: "",
poll: true,
tic: T.ANY,
contract: C.EJP,
elec: E.ANY,
prod: false,
},
];
const ticmeterCustomCluster = {
ID: 0xff42,
attributes: {
contractType: { ID: 0x0000, type: zigbee_herdsman_1.Zcl.DataType.CHAR_STR },
startEJP: { ID: 0x0001, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
refreshRate: { ID: 0x0002, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
tomorowColor: { ID: 0x0003, type: zigbee_herdsman_1.Zcl.DataType.CHAR_STR },
//
powerOverrun: { ID: 0x0004, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
powerOverrunA: { ID: 0x0005, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
powerOverrunB: { ID: 0x0006, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
powerOverrunC: { ID: 0x0007, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
//
potentialPresence: { ID: 0x0008, type: zigbee_herdsman_1.Zcl.DataType.UINT32 },
//
hcHours: { ID: 0x0009, type: zigbee_herdsman_1.Zcl.DataType.CHAR_STR },
motdetat: { ID: 0x000a, type: zigbee_herdsman_1.Zcl.DataType.CHAR_STR },
//
date: { ID: 0x000b, type: zigbee_herdsman_1.Zcl.DataType.UINT64 },
//
index1Dist: { ID: 0x000e, type: zigbee_herdsman_1.Zcl.DataType.UINT48 },
index2Dist: { ID: 0x000f, type: zigbee_herdsman_1.Zcl.DataType.UINT48 },
index3Dist: { ID: 0x0010, type: zigbee_herdsman_1.Zcl.DataType.UINT48 },
index4Dist: { ID: 0x0011, type: zigbee_herdsman_1.Zcl.DataType.UINT48 },
//
powerMaxYesterday: { ID: 0x0012, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
powerMaxYesterday1: { ID: 0x0013, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
powerMaxYesterday2: { ID: 0x0014, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
powerMaxYesterday3: { ID: 0x0015, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
//
powerInjected: { ID: 0x0016, type: zigbee_herdsman_1.Zcl.DataType.UINT32 },
powerMaxInjected: { ID: 0x0017, type: zigbee_herdsman_1.Zcl.DataType.UINT32 },
powerMaxInjectedYesterday: { ID: 0x0018, type: zigbee_herdsman_1.Zcl.DataType.UINT32 },
//
injectedLoadN: { ID: 0x0019, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
// biome-ignore lint/style/useNamingConvention: ignored using `--suppress`
injectedLoadN_1: { ID: 0x001a, type: zigbee_herdsman_1.Zcl.DataType.UINT16 },
//
startEJP1: { ID: 0