---
title: "Shelly Plus 1PM"
description: "Shelly Plus 1PM relè Wi-Fi Gen2+ con misurazione potenza. Potenza in tempo reale (kW), energia (kWh), tensione, corrente e temperatura via HTTP o MQTT."
url: "https://taphome.com/it/compatibility/shelly-plus-1pm/"
language: it
lastmod: 2026-03-29
generator: hugo
ai:
  topics: ["http","mqtt","electric-meter","wifi","relay","power-metering","gen2plus"]
  questions: ["Come integrare Shelly Plus 1PM con TapHome?","Cosa misura il template Shelly Plus 1PM in TapHome?","Come collegare Shelly Plus 1PM tramite HTTP a TapHome?","Come collegare Shelly Plus 1PM tramite MQTT a TapHome?","Qual è la differenza tra Shelly Plus 1PM e Shelly 1PM in TapHome?","Perché Shelly Plus 1PM mostra letture di potenza a zero?","Quali diagnostiche sono disponibili per Shelly Plus 1PM in TapHome?","Posso usare MQTT invece di HTTP per Shelly Plus 1PM?"]
---

# Shelly Plus 1PM

Comunicazione: Packet Parser → HTTP

- [Shelly Plus 1PM pagina prodotto](https://www.shelly.com/en/products/shop/shelly-plus-1pm)
- [Shelly Plus 1PM documentazione API](https://shelly-api-docs.shelly.cloud/gen2/)

> 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 Plus 1PM è un interruttore relè Wi-Fi Gen2+ compatto con misurazione della potenza integrata. Si installa dietro un interruttore a parete standard e può controllare un circuito fino a 16 A (3500 W a 230 V AC) o 10 A (30 V DC). Il dispositivo supporta alimentazione 110-240 VAC o 24-30 VDC, rendendolo adatto sia per installazioni a tensione di rete che a bassa tensione. TapHome comunica con il dispositivo localmente tramite Wi-Fi — non è richiesta alcuna connessione cloud.

Sono disponibili due template TapHome: un **template HTTP** che interroga l'API RPC Gen2+ del dispositivo, e un **template MQTT** che riceve dati tramite un broker MQTT. Entrambi espongono gli stessi due dispositivi — un contatore di energia e un interruttore relè.

## Configurazione

### Template HTTP

Il template HTTP richiede solo l'indirizzo IP del dispositivo (valore predefinito `192.168.0.1`). TapHome interroga l'endpoint `/rpc/Switch.GetStatus?id=0` sia per lo stato del relè che per i dati di misurazione della potenza. Il modulo memorizza la risposta JSON in una variabile `status` così che i singoli script dei dispositivi possano analizzare i dati senza chiamate HTTP ridondanti.

### Template MQTT

Il template MQTT richiede tre parametri durante l'importazione:

- **IP del broker MQTT** — l'indirizzo IP del broker MQTT (non del dispositivo Shelly stesso)
- **Porta del broker MQTT** — predefinita `1883`
- **MQTT Client ID dello Shelly** — formato `shellyplus1pm-{deviceid}`, si trova nell'interfaccia web Shelly in **Settings** > **MQTT Settings** > **Client ID**

Dopo aver abilitato MQTT sullo Shelly Plus 1PM (Settings > MQTT), TapHome si iscrive a `shellyplus1pm-{deviceid}/status/switch:0` e pubblica comandi di controllo su `shellyplus1pm-{deviceid}/command/switch:0`.

## Funzionalità del dispositivo

### Controllo relè

Il template espone il relè come dispositivo interruttore. Lo stato del relè viene letto dal campo `output` (boolean) e controllato tramite `/rpc/Switch.Set?id=0` con `on=true` o `on=false` (HTTP) o pubblicando `on`/`off` sul topic di comando (MQTT).

Il template HTTP interroga il relè con un intervallo di 2,5 secondi, fornendo un feedback dello stato quasi in tempo reale. Il template MQTT riceve aggiornamenti in tempo reale tramite lo script listener.

### Misurazione della potenza

Il contatore di energia integrato legge due valori dalla risposta Switch.GetStatus:

- **Potenza istantanea** — `apower` in watt, convertita in kW dal template (divisione per 1000)
- **Energia cumulativa** — `aenergy.total` in wattora, convertita in kWh dal template (divisione per 1000)

Il contatore è di sola lettura — si aggiorna automaticamente a ogni ciclo di polling (HTTP) o con ogni messaggio di stato MQTT.

Il template HTTP espone anche tre attributi di servizio sul contatore di energia:

| Attributo | Unità | Descrizione |
|-----------|-------|-------------|
| Corrente | A | Corrente assorbita istantanea |
| Tensione | V | Tensione di rete RMS |
| Temperatura | °C | Temperatura interna del dispositivo |

Il template MQTT espone temperatura interna, tensione e corrente come attributi di servizio a livello di modulo con gli stessi dati, analizzati dal payload di stato MQTT.

### Funzionalità aggiuntive

Lo Shelly Plus 1PM espone tramite l'API RPC anche fattore di potenza, frequenza di rete, energia restituita (per misurazione bidirezionale), stato dell'ingresso fisico, intensità del segnale Wi-Fi, indirizzo MAC, tempo di attività, utilizzo RAM e ora del dispositivo. Sono disponibili anche aggiornamento firmware, riavvio dispositivo, timer di spegnimento automatico, reset contatore energia e configurazione protezione sovraccarico. Queste funzionalità potranno essere aggiunte in un futuro aggiornamento del template.

## Risoluzione dei problemi

### Il dispositivo non risponde (HTTP)

1. Verifica che lo Shelly sia connesso al Wi-Fi e abbia un indirizzo IP valido
2. Prova a utilizzare l'hostname mDNS (`shellyplus1pm-AABBCCDDEE.local`) invece dell'indirizzo IP — l'IP potrebbe essere cambiato dopo un rinnovo DHCP
3. Apri `http://{ip-dispositivo}/rpc/Shelly.GetDeviceInfo` nel browser — se risponde con JSON, il dispositivo è raggiungibile
4. Verifica che TapHome CCU e Shelly siano sulla stessa rete / VLAN
5. Assicurati che l'autenticazione HTTP Digest sia disabilitata nell'interfaccia web dello Shelly — TapHome non supporta richieste autenticate

### I messaggi MQTT non arrivano

1. Verifica che MQTT sia abilitato nell'interfaccia web dello Shelly (Settings > MQTT)
2. Conferma che indirizzo e porta del broker siano corretti sia nel dispositivo Shelly che nelle impostazioni del modulo TapHome
3. Verifica che la variabile personalizzata `plug1topic` corrisponda esattamente al MQTT Client ID del dispositivo Shelly (es. `shellyplus1pm-AABBCCDDEE`)
4. Usa un client MQTT (es. MQTT Explorer) per iscriverti a `shellyplus1pm-#` e verificare che il dispositivo pubblichi messaggi

### Le letture di potenza mostrano zero

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

### Risposta lenta o timeout

1. I dispositivi Gen2+ supportano fino a 6 connessioni HTTP simultanee (contro 2 su Gen1) — evita però il polling eccessivo da più sistemi
2. Disabilita la modalità ECO nell'interfaccia web dello Shelly se abilitata — mette il dispositivo in modalità sleep tra i polling e può causare timeout con intervalli di polling brevi
3. Utilizza un IP statico o una prenotazione DHCP per evitare cambi di indirizzo
4. Considera il passaggio al template MQTT in ambienti multi-sistema — MQTT evita completamente il problema del limite di 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 Plus 1PM Modulo

Variabili personalizzate

Contatore elettrico Contatore elettrico Solo lettura

Potenza istantanea (kW) ed energia cumulativa (kWh) con diagnostica corrente, tensione e temperatura

numeric Unità: kW / kWh

Attributi di servizio

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

Lettura consumo totale

```taphome
return(parsejson(parsejson(status,"aenergy"), "total")/1000);
```

Lettura domanda

```taphome
return(parsejson(status,"apower")/1000);
```

Lettura (modulo)

```taphome
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
status := x.Content;
```

Attributi di servizio

${current} \[a]

```taphome
return(parsejson(status,"current"));
```

${electric\_voltage} \[v]

```taphome
return(parsejson(status,"voltage"));
```

${temp} \[C]

```taphome
return(parsejson(parsejson(status,"temperature"), "tC"));
```

Interruttore Interruttore Lettura e scrittura

boolean

Valori / Stati: ON · OFF

Lettura stato interruttore

```taphome
var x := (sendhttprequest("/rpc/Switch.GetStatus?id=0"));
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
```

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

Possibili miglioramenti (16)

- 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
- WiFi SSID — Connected WiFi network name, available via /rpc/WiFi.GetStatus
- WiFi Signal Strength — WiFi RSSI in dBm, available via /rpc/WiFi.GetStatus
- IP Address — Device IP address, available via /rpc/WiFi.GetStatus
- MAC Address — Device MAC address, available via /rpc/Sys.GetStatus
- 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
- Firmware Update — Trigger firmware update to stable channel, available via Shelly.Update RPC method
- Reboot — Reboot the device, available via Shelly.Reboot RPC method
- 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-29
- Shelly Gen2+ Switch Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Switch/) 2026-03-29
- Shelly Gen2+ System (Sys) Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Sys/) 2026-03-29
- Shelly Gen2+ WiFi Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/WiFi/) 2026-03-29
- Shelly Gen2+ MQTT Component API
  
  [shelly-api-docs.shelly.cloud](https://shelly-api-docs.shelly.cloud/gen2/ComponentsAndServices/Mqtt/) 2026-03-29
- Home Assistant Shelly Integration
  
  [www.home-assistant.io](https://www.home-assistant.io/integrations/shelly/) 2026-03-29
- Shelly Plus 1PM Knowledge Base — specs & wiring
  
  [kb.shelly.cloud](https://kb.shelly.cloud/knowledge-base/shelly-plus-1pm) 2026-03-29

## 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/)

