TapHome
Comunitate Beta Energie și contorizare

HomeWizard Wi-Fi P1 Meter (HWE-P1)

HomeWizard Wi-Fi P1 Meter (HWE-P1) pe portul P1 al unui contor inteligent DSMR, în TapHome prin API-ul HTTP local v1 pe portul 80, fără cont în cloud. Puterea și energia importată și exportată din rețea, indexurile pe tarife, puterea, tensiunea și curentul pe fiecare fază, precum și indexul contorului de gaz.

Packet Parser → HTTP6 dispozitiveRevizia 1.0 Ultima actualizare: 12 noiembrie 2026

Trimis de Martin Keller

HomeWizard Wi-Fi P1 Meter (HWE-P1)

Import în aplicația TapHomeHardware › Packet Parser › Adăugați din șablon

Descărcați șablon
Pe această pagină

Adresa în rețea

TapHome comunică cu dispozitivul la adresa introdusă la import. Atribuiți dispozitivului o adresă fixă — o rezervare IP în router sau numele său mDNS, dacă îl acceptă —, altfel integrarea nu mai funcționează când routerul schimbă adresa.

Pregătirea rețelei

Ghid de integrare

HomeWizard Wi-Fi P1 Meter (HWE-P1) se conectează la portul P1 al unui contor electric inteligent DSMR și publică citirile în rețeaua locală. TapHome comunică cu acesta prin API-ul HTTP local (v1) al contorului, pe portul 80 — nu este necesar un cont în cloud, iar tot traficul rămâne în rețeaua locală (LAN). Șablonul interoghează endpointul /api/v1/data și pune la dispoziție puterea din rețea, energia importată și exportată, valorile pe fiecare fază și indexul contorului de gaz.

Acest șablon comunitar oferă șase dispozitive: Energy Import, Energy Export, Phase L1 Power, Phase L2 Power, Phase L3 Power și Gas Meter.

Conectarea hardware

P1 Meter se conectează la portul P1 (conector RJ12) al contorului inteligent al furnizorului și funcționează cu contoare monofazate și trifazate.

  • Alimentare — contoarele inteligente SMR 5.0 sau mai noi alimentează P1 Meter direct din portul P1. Contoarele inteligente mai vechi necesită o sursă de alimentare USB-C pentru P1 Meter. Consumul este sub 1 W.
  • Wi-Fi — contorul se conectează la o rețea Wi-Fi de 2,4 GHz (802.11 b/g/n).
  • Mediu — IP51, pentru utilizare în interior.

Contoarele inteligente cu port HAN în loc de port P1 necesită un convertor HomeWizard HAN.

Configurare

Conectarea P1 Meter la Wi-Fi

Prima configurare se face în aplicația HomeWizard Energy (iOS 13 sau Android 8 ori mai nou). Pentru configurare, contorul are nevoie de o rețea Wi-Fi securizată, cu acces la internet.

  1. Conectați P1 Meter la portul P1 al contorului inteligent (și la o sursă de alimentare USB-C, dacă contorul inteligent este mai vechi decât SMR 5.0).
  2. Țineți apăsat butonul de pe P1 Meter până când LED-ul devine albastru.
  3. În aplicația HomeWizard Energy, conectați telefonul la punctul de acces Wi-Fi propriu al contorului și introduceți parola rețelei Wi-Fi de acasă.
  4. Folosiți o rețea de 2,4 GHz care este aceeași rețea (LAN) ca cea a TapHome Core.

Activarea API-ului local

API-ul local este dezactivat implicit și trebuie activat o singură dată în aplicația HomeWizard Energy:

  1. În aplicație, accesați Settings → Meters → contorul dvs. și activați Local API.
  2. Notați adresa IP a contorului — este afișată în setările contorului din aplicație și poate fi găsită și în router.
  3. Verificați funcționarea API-ului deschizând http://<IP ADDRESS>/api/v1/data într-un browser din aceeași rețea — trebuie să apară un document JSON cu cea mai recentă măsurătoare.

API v1 nu are autentificare — se presupune că contorul și TapHome Core se află în aceeași rețea locală de încredere.

Adresa IP

Rezervați o adresă IP fixă pentru contor în setările DHCP ale routerului, astfel încât adresa să nu se schimbe după o repornire a routerului. La importul șablonului în TapHome, introduceți această adresă în parametrul IP address (adresa IP).

Frecvența de actualizare

Contorul actualizează datele P1 în fiecare secundă cu un contor inteligent DSMR 5.0 sau la fiecare 10 secunde cu versiunile DSMR mai vechi. Indexul de gaz se actualizează la fiecare 5 minute (DSMR 5.0) sau la fiecare oră (contoare mai vechi). Șablonul interoghează valorile electrice la fiecare 5 secunde, iar indexul de gaz la fiecare 60 de secunde.

Funcțiile dispozitivului

Puterea și energia din rețea

Două dispozitive de tip contor electric împart măsurătoarea P1 bidirecțională în cele două direcții pe care TapHome le urmărește separat:

  • Energy Import — puterea instantanee preluată din rețea (kW) și indexul cumulat al energiei importate (kWh). Indexurile de import pe tariful 1 și tariful 2, frecvența rețelei, puterea semnalului Wi-Fi și modelul contorului inteligent sunt disponibile ca atribute de service.
  • Energy Export — puterea instantanee injectată în rețea (kW) și indexul cumulat al energiei exportate (kWh), cu tariful 1 și tariful 2 de export ca atribute de service.

Contorul inteligent raportează o singură valoare cu semn a puterii totale (negativă = export); fiecare dispozitiv afișează propria direcție și indică 0 cât timp puterea circulă în sens opus. Când contorul inteligent nu raportează un index total de import sau de export, șablonul adună tariful 1 și tariful 2.

Monitorizarea pe faze

Phase L1 Power, Phase L2 Power și Phase L3 Power sunt variabile doar pentru citire, cu puterea activă a fiecărei faze în wați. Tensiunea și curentul fazei sunt disponibile ca atribute de service pe fiecare dispozitiv de fază. Contoarele inteligente monofazate raportează doar L1 — dispozitivele L2 și L3 nu afișează atunci nicio valoare.

Contor de gaz

Gas Meter este o variabilă doar pentru citire, cu indexul cumulat de gaz (m³) raportat de contorul inteligent. Dacă la contorul inteligent nu este conectat niciun contor de gaz, dispozitivul nu afișează nicio valoare.

Rezolvarea problemelor

  • Nu există date / erori de conexiune — verificați dacă opțiunea Local API este în continuare activată în aplicația HomeWizard Energy și dacă http://<IP ADDRESS>/api/v1/data răspunde într-un browser din aceeași rețea cu TapHome Core.
  • Valorile nu se mai actualizează după schimbarea routerului — probabil s-a schimbat adresa IP a contorului; rezervați o adresă fixă în setările DHCP ale routerului și actualizați adresa IP a modulului.
  • Găsirea contorului în rețea — contorul se anunță prin mDNS ca _hwenergy._tcp, cu un nume de instanță de forma p1meter-<6 hex digits> (6 cifre hexazecimale); înregistrarea TXT api_enabled arată dacă API-ul local este activat (1) sau dezactivat (0).
  • Dispozitivele de fază sau de gaz nu afișează nicio valoare — contoarele monofazate nu raportează date L2/L3, iar indexul de gaz apare doar când la contorul inteligent este conectat un contor de gaz. Este un comportament normal, nu o defecțiune.
  • Unele valori lipsesc — API-ul trimite doar câmpurile furnizate de contorul inteligent conectat, așa că setul de valori vizibile depinde de modelul contorului inteligent, nu de P1 Meter în sine.

Dispozitive disponibile 6

Aceste dispozitive apar în TapHome după import.

HomeWizard Wi-Fi P1 Meter Modul
Variabile personalizate
P1Data (string) = 0

HomeWizard Wi-Fi P1 Meter

Citire (modul)
VAR response := SENDHTTPREQUEST("/api/v1/data");
IF response.IsSuccess
    P1Data := response.Content;
ELSE
    ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
END
Energy Import Contor electric
Atribute de service
Import tariff 1
Import tariff 2
Line frequency
Wi-Fi signal
Smart meter model

Energy Import

Citirea consumului total
var total := parsejson(P1Data, "total_power_import_kwh", true);
IF ISNULL(total)
    var t1 := parsejson(P1Data, "total_power_import_t1_kwh", true);
    var t2 := parsejson(P1Data, "total_power_import_t2_kwh", true);
    return(IF(ISNULL(t1), 0, todouble(t1)) + IF(ISNULL(t2), 0, todouble(t2)));
END
return(todouble(total));
Citirea cererii
var p := parsejson(P1Data, "active_power_w", true);
IF ISNULL(p)
    return(0);
END
return(MAX(0, todouble(p)) / 1000);
Atribute de service
Import tariff 1
IF(ISNULL(parsejson(P1Data, "total_power_import_t1_kwh", true)), "-", TOSTRING(todouble(parsejson(P1Data, "total_power_import_t1_kwh", true)), "F3") + " kWh")
Import tariff 2
IF(ISNULL(parsejson(P1Data, "total_power_import_t2_kwh", true)), "-", TOSTRING(todouble(parsejson(P1Data, "total_power_import_t2_kwh", true)), "F3") + " kWh")
Line frequency
IF(ISNULL(parsejson(P1Data, "active_frequency_hz", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_frequency_hz", true)), "F2") + " Hz")
Wi-Fi signal
IF(ISNULL(parsejson(P1Data, "wifi_strength", true)), "-", TOSTRING(todouble(parsejson(P1Data, "wifi_strength", true)), "F0") + " %")
Smart meter model
IF(ISNULL(parsejson(P1Data, "meter_model", true)), "-", parsejson(P1Data, "meter_model", true))
Energy Export Contor electric
Atribute de service
Export tariff 1
Export tariff 2

Energy Export

Citirea consumului total
var total := parsejson(P1Data, "total_power_export_kwh", true);
IF ISNULL(total)
    var t1 := parsejson(P1Data, "total_power_export_t1_kwh", true);
    var t2 := parsejson(P1Data, "total_power_export_t2_kwh", true);
    return(IF(ISNULL(t1), 0, todouble(t1)) + IF(ISNULL(t2), 0, todouble(t2)));
END
return(todouble(total));
Citirea cererii
var p := parsejson(P1Data, "active_power_w", true);
IF ISNULL(p)
    return(0);
END
return(MAX(0, 0 - todouble(p)) / 1000);
Atribute de service
Export tariff 1
IF(ISNULL(parsejson(P1Data, "total_power_export_t1_kwh", true)), "-", TOSTRING(todouble(parsejson(P1Data, "total_power_export_t1_kwh", true)), "F3") + " kWh")
Export tariff 2
IF(ISNULL(parsejson(P1Data, "total_power_export_t2_kwh", true)), "-", TOSTRING(todouble(parsejson(P1Data, "total_power_export_t2_kwh", true)), "F3") + " kWh")
Phase L1 Power Variabilă
Atribute de service
Voltage
Current

Phase L1 Power

Citire
var p := parsejson(P1Data, "active_power_l1_w", true);
IF ISNULL(p)
    return(NaN);
END
return(todouble(p));
Atribute de service
Voltage
IF(ISNULL(parsejson(P1Data, "active_voltage_l1_v", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_voltage_l1_v", true)), "F1") + " V")
Current
IF(ISNULL(parsejson(P1Data, "active_current_l1_a", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_current_l1_a", true)), "F2") + " A")
Phase L2 Power Variabilă
Atribute de service
Voltage
Current

Phase L2 Power

Citire
var p := parsejson(P1Data, "active_power_l2_w", true);
IF ISNULL(p)
    return(NaN);
END
return(todouble(p));
Atribute de service
Voltage
IF(ISNULL(parsejson(P1Data, "active_voltage_l2_v", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_voltage_l2_v", true)), "F1") + " V")
Current
IF(ISNULL(parsejson(P1Data, "active_current_l2_a", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_current_l2_a", true)), "F2") + " A")
Phase L3 Power Variabilă
Atribute de service
Voltage
Current

Phase L3 Power

Citire
var p := parsejson(P1Data, "active_power_l3_w", true);
IF ISNULL(p)
    return(NaN);
END
return(todouble(p));
Atribute de service
Voltage
IF(ISNULL(parsejson(P1Data, "active_voltage_l3_v", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_voltage_l3_v", true)), "F1") + " V")
Current
IF(ISNULL(parsejson(P1Data, "active_current_l3_a", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_current_l3_a", true)), "F2") + " A")
Gas Meter Variabilă

Gas Meter

Citire
var v := parsejson(P1Data, "total_gas_m3", true);
IF ISNULL(v)
    return(NaN);
END
return(todouble(v));
Conexiune: Packet Parser → HTTP

Parametri de import

Introduceți aceste valori când importați XML-ul.

Solicitat în aplicațieImplicit
IP addressSe introduce la import

Ați găsit o problemă la acest șablon de dispozitiv?

Spuneți-ne ce nu funcționează, ce lipsește sau cum ar trebui să se comporte șablonul. Feedbackul dvs. ne ajută să păstrăm catalogul corect.

Șablon · portalul TapHome HomeWizard Wi-Fi P1 Meter (HWE-P1) Deschideți acest șablon în Customer Portal pentru a-l aplica într-una dintre locuințele dvs. sau pentru a propune o îmbunătățire și a o trimite înapoi în catalog. Packet Parser → HTTP Vezi în portalul TapHome