---
title: "HomeWizard Wi-Fi P1 Meter (HWE-P1)"
description: "Puterea și energia importată/exportată, valorile pe fazele L1–L3 și gazul unui contor DSMR, prin API-ul HTTP local HomeWizard P1 Meter, în TapHome."
url: "https://taphome.com/ro/compatibility/homewizard-p1-meter-http/"
language: ro
lastmod: 2026-11-12
generator: hugo
ai:
  topics: ["http","electric-meter","smart-meter","p1-port","dsmr","3-phase","wifi","gas-meter","local-api"]
  questions: ["Cum se integrează HomeWizard Wi-Fi P1 Meter cu TapHome?","Ce măsoară șablonul TapHome pentru HomeWizard Wi-Fi P1 Meter?","Cum se activează Local API pe HomeWizard P1 Meter în aplicația HomeWizard Energy?","Cum se conectează HomeWizard P1 Meter la TapHome prin HTTP?","Are nevoie HomeWizard P1 Meter de o sursă de alimentare USB-C?","De ce dispozitivele Phase L2 Power, Phase L3 Power sau Gas Meter nu afișează nicio valoare?","Cât de des actualizează HomeWizard P1 Meter valorile de putere și de gaz?"]
---

# HomeWizard Wi-Fi P1 Meter (HWE-P1)

Comunicație: Packet Parser → HTTP

> 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](https://taphome.com/ro/docs/setup/network-preparation/)

## 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.

> [!NOTE]
> 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.

> [!NOTE]
> 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 |

Citire (modul)

```taphome
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 |

Citirea consumului total

```taphome
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

```taphome
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

```taphome
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

```taphome
IF(ISNULL(parsejson(P1Data, "total_power_import_t2_kwh", true)), "-", TOSTRING(todouble(parsejson(P1Data, "total_power_import_t2_kwh", true)), "F3") + " kWh")
```

Line frequency

```taphome
IF(ISNULL(parsejson(P1Data, "active_frequency_hz", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_frequency_hz", true)), "F2") + " Hz")
```

Wi-Fi signal

```taphome
IF(ISNULL(parsejson(P1Data, "wifi_strength", true)), "-", TOSTRING(todouble(parsejson(P1Data, "wifi_strength", true)), "F0") + " %")
```

Smart meter model

```taphome
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 |

Citirea consumului total

```taphome
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

```taphome
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

```taphome
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

```taphome
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 |

Citire

```taphome
var p := parsejson(P1Data, "active_power_l1_w", true);
IF ISNULL(p)
    return(NaN);
END
return(todouble(p));
```

Atribute de service

Voltage

```taphome
IF(ISNULL(parsejson(P1Data, "active_voltage_l1_v", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_voltage_l1_v", true)), "F1") + " V")
```

Current

```taphome
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 |

Citire

```taphome
var p := parsejson(P1Data, "active_power_l2_w", true);
IF ISNULL(p)
    return(NaN);
END
return(todouble(p));
```

Atribute de service

Voltage

```taphome
IF(ISNULL(parsejson(P1Data, "active_voltage_l2_v", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_voltage_l2_v", true)), "F1") + " V")
```

Current

```taphome
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 |

Citire

```taphome
var p := parsejson(P1Data, "active_power_l3_w", true);
IF ISNULL(p)
    return(NaN);
END
return(todouble(p));
```

Atribute de service

Voltage

```taphome
IF(ISNULL(parsejson(P1Data, "active_voltage_l3_v", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_voltage_l3_v", true)), "F1") + " V")
```

Current

```taphome
IF(ISNULL(parsejson(P1Data, "active_current_l3_a", true)), "-", TOSTRING(todouble(parsejson(P1Data, "active_current_l3_a", true)), "F2") + " A")
```

Gas Meter Variabilă

Citire

```taphome
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ție | Implicit               |
|------------------------|------------------------|
| IP address             | Se introduce la import |

## Documentație asociată

- [Packet Parser Integration](https://taphome.com/ro/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/ro/docs/integration/packet-parser/)
- [Funcții Packet parser](https://taphome.com/ro/docs/script/packet-parser/)
- [Funcții de parsare](https://taphome.com/ro/docs/script/parsing-functions/)

