---
title: "Shelly 1PM Gen3"
description: "Shelly 1PM Gen3 relè Wi-Fi con misurazione della potenza. Controlla un circuito e monitora il consumo energetico in tempo reale tramite HTTP RPC API da."
url: "https://taphome.com/it/compatibility/shelly-1pm-gen3/"
language: it
lastmod: 2026-03-27
generator: hugo
ai:
  topics: ["http","electric-meter","wifi","relay","power-metering","mdns"]
  questions: ["Come integrare Shelly 1PM Gen3 con TapHome?","Cosa misura il template Shelly 1PM Gen3 in TapHome?","Come collegare Shelly 1PM Gen3 tramite HTTP a TapHome?","Qual è la differenza tra Shelly 1PM Gen1 e Gen3 in TapHome?","Perché Shelly 1PM Gen3 mostra valori di potenza pari a zero?","Come usare il nome host mDNS al posto dell'indirizzo IP per Shelly Gen3?"]
---

# Shelly 1PM Gen3

Comunicazione: Packet Parser → HTTP

- [Pagina prodotto Shelly 1PM Gen3](https://www.shelly.com/en/products/shop/shelly-1-pm-gen3)

> Indirizzo di rete
> 
> TapHome raggiunge il dispositivo all'indirizzo inserito durante l'importazione. Assegna al dispositivo un indirizzo fisso — una prenotazione IP nel router, oppure il suo nome mDNS se lo supporta —, altrimenti l'integrazione smette di funzionare quando il router cambia l'indirizzo.
> 
> [Preparazione della rete](https://taphome.com/it/docs/setup/network-preparation/)

## Guida all'integrazione

Lo Shelly 1PM Gen3 è un relè Wi-Fi compatto con misurazione della potenza integrata. Si inserisce dietro un interruttore a parete standard e può controllare un circuito fino a 16 A (3500 W a 230 V AC) o 10 A (a 24–30 V DC). TapHome comunica con il dispositivo via HTTP utilizzando l'API Gen2+/Gen3 JSON-RPC 2.0 sulla rete locale — non è necessaria alcuna connessione cloud.

A differenza dello Shelly 1PM originale (Gen1), che utilizza un'API REST con l'endpoint `/status`, la versione Gen3 usa l'API RPC con chiamate di metodo come `/rpc/Switch.GetStatus`. L'hardware Gen3 dispone di un processore ESP più veloce con 8 MB di memoria flash, supporta fino a 6 connessioni HTTP simultanee (contro 2 del Gen1) ed è predisposto per Matter.

Il template fornisce il controllo del relè e un contatore elettrico che rileva il consumo energetico in tempo reale e il consumo cumulativo.

## Configurazione

Lo Shelly 1PM Gen3 si connette tramite Wi-Fi. Durante l'importazione del template in TapHome, inserire l'indirizzo IP del dispositivo (segnaposto predefinito `192.168.0.1`).

> [!WARNING]
> L'autenticazione deve essere **disabilitata** sul dispositivo Shelly per l'integrazione con TapHome. TapHome non supporta l'HTTP Digest Auth utilizzata dai dispositivi Gen2+/Gen3. Aprire l'interfaccia web Shelly (`http://{device-ip}`) → Impostazioni → Autenticazione e assicurarsi che sia disattivata.

> [!NOTE]
> Se la modalità ECO è abilitata sul dispositivo Shelly, può causare timeout di comunicazione a causa degli intervalli di polling rapidi utilizzati dal template (2,5–3 secondi). Disabilitare la modalità ECO nell'interfaccia web Shelly se si riscontrano problemi di connettività intermittenti.

## Funzionalità del dispositivo

### Controllo relè

Il template espone il relè come interruttore. Lo stato del relè viene letto dalla risposta di `/rpc/Switch.GetStatus?id=0` (campo `output`, booleano) e controllato tramite `/rpc/Switch.Set?id=0&on=true` o `on=false`.

### Misurazione della potenza

Il contatore elettrico integrato legge due valori dalla risposta di `/rpc/Switch.GetStatus?id=0`:

- **Potenza istantanea** — `apower` in watt, convertita in kW dal template
- **Consumo totale** — `aenergy.total` in wattora, convertito in kWh dal template

Il contatore espone anche tre attributi di servizio:

- **Corrente elettrica** — corrente di carico in ampere (campo `current`)
- **Tensione elettrica** — tensione di alimentazione in volt (campo `voltage`)
- **Temperatura** — temperatura interna del dispositivo in °C (campo `temperature.tC`)

Il contatore è in sola lettura — si aggiorna automaticamente ad ogni ciclo di polling (intervallo di 15 secondi).

### Diagnostica di servizio

Il template espone attributi di servizio a livello di modulo per il monitoraggio del dispositivo:

- **WiFi** — nome SSID della rete connessa
- **Indirizzo IP** — IP attuale della stazione
- **Potenza del segnale** — WiFi RSSI in dB
- **MAC** — indirizzo MAC del dispositivo

Lo script di lettura del modulo verifica anche la disponibilità di aggiornamenti firmware e la necessità di riavvio, mostrandoli come avvisi nell'interfaccia TapHome.

### Azioni di servizio

A livello di modulo sono disponibili due azioni di servizio:

- **Aggiornamento firmware** — avvia un aggiornamento firmware all'ultima versione stabile tramite `/rpc/Shelly.Update`
- **Riavvio** — avvia un riavvio del dispositivo tramite `/rpc/Shelly.Reboot`

### Funzionalità aggiuntive

Lo Shelly 1PM Gen3 espone nelle sue risposte RPC anche il fattore di potenza, la frequenza di rete (Hz), i contatori di energia restituita/esportata, lo stato dell'ingresso fisico (`input:0`), il tempo di attività, l'utilizzo della RAM e l'ora del dispositivo. È disponibile un timer di spegnimento automatico tramite il parametro `toggle_after`, e la protezione da sovraccarico può essere configurata tramite `Switch.SetConfig → power_limit`. I contatori di energia possono essere azzerati tramite `/rpc/Switch.ResetCounters`. Queste funzionalità potranno essere aggiunte in un futuro aggiornamento del template.

## Risoluzione dei problemi

### Il dispositivo non risponde

1. Verificare che lo Shelly sia connesso al Wi-Fi e abbia un indirizzo IP valido
2. Provare a utilizzare il nome host mDNS (`shelly1pmg3-AABBCCDDEE.local`) al posto dell'indirizzo IP — l'IP potrebbe essere cambiato dopo un rinnovo DHCP
3. Aprire `http://{device-ip}/rpc/Shelly.GetDeviceInfo` nel browser — se risponde con JSON, il dispositivo è raggiungibile
4. Verificare che TapHome Core e Shelly siano sulla stessa rete / VLAN
5. Confermare che l'autenticazione è disabilitata sul dispositivo Shelly

### I valori di potenza mostrano zero

1. Confermare che il carico è collegato attraverso il relè Shelly (non bypassato)
2. Verificare che il relè sia acceso — il contatore rileva solo quando la corrente scorre attraverso il relè
3. Interrogare manualmente `/rpc/Switch.GetStatus?id=0` e verificare che `apower` restituisca un valore diverso da zero

### Avviso di sovratemperatura

Lo Shelly 1PM Gen3 dispone di protezione termica interna. Se la temperatura del dispositivo supera i limiti di sicurezza, il valore `temperature` negli attributi di servizio del contatore aumenterà. Assicurare una ventilazione adeguata attorno al dispositivo, specialmente durante la commutazione continua di carichi elevati.

> [!WARNING]
> I dispositivi Shelly Gen2+/Gen3 supportano fino a **6 connessioni HTTP simultanee**. Sebbene questo sia un miglioramento significativo rispetto al Gen1 (2 connessioni), evitare il polling simultaneo da troppi sistemi (TapHome, Home Assistant, script personalizzati) per prevenire l'esaurimento delle connessioni.

## Come installare in TapHome

### Prerequisiti

- Dispositivo Shelly installato e acceso
- Rete Wi-Fi locale (2,4 GHz)
- TapHome CCU sulla stessa rete

### Passaggio 1 — Collegare Shelly al Wi-Fi

**Opzione A — App Shelly (consigliata):**

1. Scarica l'[app Shelly](https://www.shelly.com/en/support/shelly-app) (iOS / Android)
2. Tocca **+** → **Add Device** e segui la procedura guidata di associazione Bluetooth
3. Inserisci le credenziali Wi-Fi quando richiesto

**Opzione B — Modalità AP (senza app):**

1. Al primo avvio il dispositivo crea un hotspot: `ShellyXXX-AABBCCDDEE`
2. Collega il tuo telefono/PC a questo hotspot
3. Apri `http://192.168.33.1` → **Internet & Security** → **Wi-Fi Mode - Client**
4. Inserisci SSID e password → **Save**

> [!NOTE]
> Shelly supporta solo reti a **2,4 GHz**. Le reti a 5 GHz non appariranno nella scansione.

### Passaggio 2 — Trovare l'indirizzo IP

Dopo la connessione al Wi-Fi, trova l'indirizzo IP assegnato tramite uno di questi metodi:

- **App Shelly:** Dettaglio dispositivo → **Device info** → Indirizzo IP
- **Interfaccia web Shelly:** Connettiti all'AP del dispositivo prima della configurazione Wi-Fi — l'IP viene mostrato dopo il salvataggio
- **Tabella DHCP del router:** Cerca un hostname come `shelly1pm-AABBCCDDEE`
- **mDNS:** Esegui il ping di `shelly<model>-<mac>.local` (es. `shelly1pm-AABBCCDDEE.local`) dalla stessa rete

> [!TIP]
> Assegna un **IP statico** (prenotazione DHCP) nel tuo router per il dispositivo Shelly per evitare che l'indirizzo cambi dopo un riavvio del router.

### Passaggio 3 — Configurazione in TapHome

1. In TapHome, aggiungi un nuovo modulo **Packet Parser (HTTP)**
2. **IP Address:** inserisci l'IP dal passaggio 2 (es. `192.168.1.50`)
3. **Port:** `80` (predefinito, nessuna modifica necessaria)
4. Importa il template — TapHome interrogherà periodicamente `/status` per leggere lo stato del dispositivo

> [!NOTE]
> L'autenticazione HTTP è disabilitata per impostazione predefinita sui dispositivi Shelly. Se hai abilitato la protezione con accesso, TapHome attualmente non supporta HTTP Basic Auth — mantieni l'autenticazione disabilitata per l'integrazione con TapHome.

## Dispositivi disponibili 2

Questi dispositivi compaiono in TapHome dopo l'importazione.

Shelly 1PM Gen3 Modulo

Attributi di servizio

|                     |
|---------------------|
| WiFi                |
| Indirizzo IP        |
| Potenza del segnale |
| MAC                 |

Azioni di servizio

|                        |
|------------------------|
| Aggiornamento firmware |
| Riavvio                |

Variabili personalizzate

Lettura (modulo)

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Sys.GetStatus");
IF response.IsSuccess
    Sys.GetStatus := response.Content;
END

response := SENDHTTPREQUEST("/rpc/Sys.GetConfig");
IF response.IsSuccess
    Sys.GetConfig := response.Content;
END

response := SENDHTTPREQUEST("/rpc/WiFi.GetStatus");
IF response.IsSuccess
    WiFi.GetStatus := response.Content;
END

if ! ISNULL(parsejson(Sys.GetStatus, "available_updates.stable", true))
    addwarning("New firmware update is available");
end

if parsejson(Sys.GetStatus, "restart_required", true)
    addwarning("Restart required");
end
```

Attributi di servizio

Wifi

```taphome
PARSEJSON(WiFi.GetStatus, "ssid")
```

${ipAddress}

```taphome
PARSEJSON(WiFi.GetStatus, "sta_ip")
```

${xml\_signal\_strength} \[dB]

```taphome
PARSEJSON(WiFi.GetStatus, "rssi")
```

MAC

```taphome
PARSEJSON(Sys.GetStatus, "mac")
```

Azioni di servizio

${xml\_update\_fw}

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Update?stage=\"stable\"");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END

```

Reboot

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Shelly.Reboot");
IF response.IsSuccess
    return("OK");
else
    return("Error");
END
```

Interruttore Interruttore Lettura e scrittura

boolean

Valori / Stati: ON · OFF

Lettura stato interruttore

```taphome
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
var status := x.Content;
return(PARSEJSON(status, "$.output", true));
```

Scrittura stato interruttore

```taphome
VAR response := SENDHTTPREQUEST("rpc/Switch.Set?id=0&on=" + if(St,"true","false"));
IF response.IsSuccess = false
  ADDERROR(response.StatusCode);
END
```

Contatore elettrico Contatore elettrico Solo lettura

Misurazione consumo energetico — potenza istantanea (kW) ed energia cumulativa (kWh) con letture di corrente, tensione e temperatura

numeric Unità: kW / kWh

Attributi di servizio

|                    |
|--------------------|
| Corrente elettrica |
| Tensione elettrica |
| Temperatura        |

Lettura consumo totale

```taphome
return(parsejson(parsejson(Switch.GetStatus,"aenergy"), "total")/1000);
```

Lettura domanda

```taphome
return(parsejson(Switch.GetStatus,"apower")/1000);
```

Lettura (modulo)

```taphome
VAR response := SENDHTTPREQUEST("/rpc/Switch.GetStatus?id=0");
IF response.IsSuccess
    Switch.GetStatus := response.Content;
END
```

Attributi di servizio

${electric\_current} \[A]

```taphome
return(parsejson(Switch.GetStatus,"current"));
```

${electric\_voltage} \[V]

```taphome
return(parsejson(Switch.GetStatus,"voltage"));
```

${temperature} \[°C]

```taphome
return(parsejson(parsejson(Switch.GetStatus,"temperature"), "tC"));
```

**Connessione:** Packet Parser → HTTP • Hostname: `shelly1pmg3-{MAC}.local`

Possibili miglioramenti (10)

- Power Factor — Power factor value, available in Switch.GetStatus response for metered devices
- Network Frequency — AC network frequency in Hz, available in Switch.GetStatus response
- Returned Energy — Returned/exported energy in Wh, for bi-directional metering scenarios
- Input State — Physical switch/button input state, available via /rpc/Input.GetStatus?id=0
- Uptime — Seconds since last reboot, available in Sys.GetStatus response
- RAM Usage — Total and free RAM in bytes, available in Sys.GetStatus response
- Device Time — Current device time in HH:MM format, available in Sys.GetStatus response
- Auto-off Timer — Auto-reset timer in seconds via toggle\_after parameter, could be added as switch parameter
- Reset Energy Counters — Resets energy measurement counters (aenergy, ret\_aenergy)
- Overpower Protection — Configurable power limit threshold in Watts, relay turns off when exceeded

## Parametri di importazione

Inserisci questi valori quando importi l'XML.

| Richiesto nell'app | Predefinito   |
|--------------------|---------------|
| Indirizzo IP       | `192.168.0.1` |

## Fonti

- Shelly Gen2+/Gen3 RPC API Reference
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/) 2026-03-27
- Shelly Gen2+ Switch Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch/) 2026-03-27
- Shelly Gen2+ System (Sys) Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Sys/) 2026-03-27
- Shelly Gen2+ WiFi Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/WiFi/) 2026-03-27
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-27
- Shelly 1PM Gen3 Knowledge Base
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-1pm-gen3) 2026-03-27

## Documentazione correlata

- [Integrazione Packet Parser](https://taphome.com/it/compatibility/packet-parser-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/it/docs/integration/packet-parser/)
- [Funzioni Packet parser](https://taphome.com/it/docs/script/packet-parser/)
- [Funzioni di parsing](https://taphome.com/it/docs/script/parsing-functions/)

