---
title: "NOUS A1"
description: "Relaissteuerung und Energiemonitoring via MQTT mit Tasmota-Firmware. Überwacht Spannung, Strom, Wirk-/Blind-/Scheinleistung und Energie."
url: "https://taphome.com/de/compatibility/nous-zasuvka/"
language: de
lastmod: 2026-03-30
generator: hugo
ai:
  topics: ["mqtt","smart-plug","wifi","energy-monitoring","tasmota"]
  questions: ["Wie integriert man die NOUS A1 Smartsteckdose mit TapHome?","Was misst die TapHome-Vorlage NOUS A1?","Wie verbindet man die NOUS A1 über MQTT mit TapHome?","Wie kalibriert man das Energiemonitoring der NOUS A1?","Wie findet man das Tasmota MQTT Topic der NOUS A1?"]
---

# NOUS A1

Kommunikation: Packet Parser → MQTT

- [Offizielle NOUS-Website](https://nous.technology/product/nous-smart-wi-fi-socket-a1.html)

> Netzwerkadresse
> 
> Beim in TapHome integrierten MQTT-Broker geben Sie in TapHome `127.0.0.1` als Broker-Adresse ein. Im Gerät geben Sie die IP-Adresse des TapHome Core ein und richten für den Core eine IP-Reservierung im Router ein.
> 
> [Netzwerkvorbereitung](https://taphome.com/de/docs/setup/network-preparation/)

## Integrationsanleitung

Die NOUS A1 ist eine WiFi-Smartsteckdose mit integriertem Energiemonitoring (BL0937-Chip). Mit Tasmota-Firmware kommuniziert sie über MQTT mit TapHome. Die Vorlage bietet Relaissteuerung und umfassende Energiemessung — Spannung, Strom, Wirk-/Blind-/Scheinleistung, Leistungsfaktor und kumulativen Energieverbrauch.

Die Steckdose verwendet einen ESP8266-Chipsatz und ist für 16A Spitzenlast / 15A Dauerlast (bis zu 3680W max., 3450W dauerhaft) ausgelegt. Sie benötigt einen externen MQTT-Broker (z. B. Mosquitto), der sowohl von der Steckdose als auch von TapHome Core erreichbar ist.

## Konfiguration

### Tasmota MQTT-Einrichtung

Vor dem Import der TapHome-Vorlage muss die NOUS A1 mit Tasmota-Firmware geflasht und die Verbindung zum MQTT-Broker konfiguriert werden:

1. Öffnen Sie die Tasmota-Weboberfläche (IP-Adresse des Geräts im Browser eingeben)
2. Navigieren Sie zu **Configuration** → **Configure MQTT**
3. Setzen Sie den **Host** auf die IP-Adresse des MQTT-Brokers
4. Setzen Sie den **Port** (Standard `1883`)
5. Setzen Sie **User** und **Password**, falls der Broker Authentifizierung erfordert
6. Notieren Sie den **Topic**-Wert (z. B. `tasmota_496D5A`) — dieser wird für die TapHome-Vorlage benötigt

### Vorlagenvariablen

Setzen Sie nach dem Import der Vorlage in TapHome die benutzerdefinierte Variable `plug1topic` entsprechend dem Tasmota MQTT Topic der Steckdose:

| Variable | Beschreibung | Ermittlung |
|----------|-------------|------------|
| `plug1topic` | Tasmota MQTT Topic der Smartsteckdose | Tasmota Web UI → Configuration → MQTT → Feld Topic |

Der Standardwert ist `tasmota_496D5A` — dieser muss auf das tatsächliche Topic jeder Steckdose geändert werden.

> [!WARNING]
> Das MQTT Topic ist gerätespezifisch. Bei Verwendung mehrerer NOUS A1 Steckdosen benötigt jede eine separate Vorlageninstanz mit einem eindeutigen `plug1topic`-Wert.

### Kalibrierung des Energiemonitorings

Der BL0937-Energiemonitoring-Chip erfordert eine Kalibrierung für genaue Messwerte. Zur Kalibrierung:

1. Schließen Sie eine bekannte ohmsche Last (z. B. 60W-Glühbirne) an die Steckdose an
2. Setzen Sie in der Tasmota-Konsole die Referenzspannung: `VoltageSet 230`
3. Setzen Sie die Referenzleistung: `PowerSet 60`
4. Überprüfen Sie, ob der Leistungsfaktor für die ohmsche Last nahe 1,00 anzeigt

> [!TIP]
> Die Kalibrierung ist ein einmaliger Vorgang — die Werte werden im Flash-Speicher gespeichert und bleiben nach Neustarts erhalten. Ohne sie können die Messwerte des BL0937-Chips ungenau sein.

## Gerätefunktionen

### Relaissteuerung

Die Vorlage stellt einen Relaisausgang für die 230V-AC-Steckdose bereit. Das Relais wird durch Publizieren auf `cmnd/{topic}/Power` mit Payload `1` (EIN) oder `0` (AUS) gesteuert. Beim Ausschalten des Relais fordert die Vorlage auch ein Energiestatus-Update an (`Status 8`), um die Energiewerte sofort zu aktualisieren.

### Energiemessung

Die Vorlage liest Energiedaten aus dem `tele/{topic}/SENSOR`-Payload, der periodisch publiziert wird (Standard alle 300 Sekunden). Folgende Messwerte sind verfügbar:

- **Voltage** — Netzspannung (V)
- **Current** — Laststrom (A)
- **Active Power** — Wirkleistung (W)
- **Apparent Power** — Scheinleistung einschließlich Blindanteil (VA)
- **Reactive Power** — Blindleistung (VAR)
- **Power Factor** — Verhältnis von Wirk- zu Scheinleistung (cos phi, 0–1)
- **Energy Today** — kumulativer Verbrauch seit Mitternacht (kWh)
- **Total Energy** — kumulativer Verbrauch seit Zählerstart, bleibt nach Neustarts erhalten (kWh)
- **Period Energy** — Verbrauch im aktuellen Telemetriezeitraum (Wh)

### WiFi-Diagnose

Die Vorlage liest den WiFi-Status aus dem `tele/{topic}/STATE`-Payload:

- **WiFi Channel** — die 2,4-GHz-Kanalnummer (1–13)
- **WiFi Signal Strength** — Signalpegel in dBm
- **WiFi RSSI** — Signalqualität in Prozent (0–100 %)
- **Uptime** — Betriebszeit des Geräts in Sekunden seit dem letzten Neustart

### Weitere Funktionen

Die NOUS A1 mit Tasmota-Firmware unterstützt auch die Überwachung des Verbindungsstatus über LWT-Topic (Last Will and Testament), den Energieverbrauch von gestern, eine konfigurierbare Telemetrieperiode (10–3600 Sekunden) und Befehle zum Zurücksetzen des Energiezählers. Der BL0937-Chip kann auch per MQTT-Befehle fernkalibriert werden. Diese Funktionen können in einem zukünftigen Vorlagenupdate hinzugefügt werden.

## Fehlerbehebung

### Keine Daten in TapHome

1. Überprüfen Sie, ob die Steckdose mit WiFi verbunden ist — die Tasmota-Weboberfläche sollte unter der Geräte-IP erreichbar sein
2. Prüfen Sie, ob MQTT konfiguriert und verbunden ist — die Tasmota-Hauptseite zeigt den MQTT-Verbindungsstatus
3. Bestätigen Sie, dass die Variable `plug1topic` in TapHome exakt dem Topic-Wert in der Tasmota MQTT-Konfiguration entspricht
4. Verwenden Sie einen MQTT-Client (z. B. MQTT Explorer), abonnieren Sie `tele/#` und überprüfen Sie, ob die Steckdose STATE- und SENSOR-Nachrichten publiziert

### Ungenaue Energiemesswerte

1. Der BL0937-Chip erfordert eine Kalibrierung mit einer bekannten ohmschen Last — siehe Abschnitt Kalibrierung oben
2. Induktive Lasten (Motoren, LED-Treiber) haben natürlicherweise einen Leistungsfaktor unter 1,0 — dies ist erwartetes Verhalten, kein Messfehler
3. Überprüfen Sie die Telemetrieperiode — das Standardintervall von 300 Sekunden bedeutet, dass Energiewerte alle 5 Minuten aktualisiert werden

> [!WARNING]
> Neuere Produktionsserien der NOUS A1 können Nicht-ESP-Chipsätze verwenden, die mit Tasmota-Firmware inkompatibel sind. Überprüfen Sie den Chipsatz vor dem Kauf, wenn eine Tasmota/MQTT-Integration erforderlich ist.

## Verfügbare Geräte 14

Diese Geräte erscheinen nach dem Import in TapHome.

NOUS A1 Modul

Benutzerdefinierte Variablen

`plug1topic` (string) = tasmota\_496D5A Tasmota MQTT Topic der Smartsteckdose — verwendet in Abonnementfiltern und Relaissteuerungsbefehlen

Open Tasmota web UI → Configuration → MQTT → copy Topic value (e.g., tasmota\_496D5A)

Listener

```taphome
#var tmp := RECEIVEDMSG.Payload;
```

WiFi-Kanal Variable Nur lesen

numeric json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "STATE") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID1 + ".Channel", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Scheinleistung Variable Nur lesen

numeric Einheit: VA json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".ApparentPower", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Leistungsfaktor Variable Nur lesen

Verhältnis von Wirk- zu Scheinleistung (cos phi) — Bereich 0 bis 1, wobei 1,0 eine rein ohmsche Last anzeigt

numeric json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Factor", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Strom Variable Nur lesen

numeric Einheit: A json\_path

Schreiben

```taphome
# Simple HTTP Request:
# VAR response := SENDHTTPREQUEST("/example/set/value=" + Va);
# IF response.IsSuccess = false
#  ADDERROR(response.StatusCode);
# END
#
# Set Http request method, body and headers
# VAR response := SENDHTTPREQUEST("/example/setValue", "GET", "value=" + Va, "header1:value1", "header2:value2", ...);\r
# Or VAR request := HTTPREQUEST("/example/setValue");
# request.Method := "PUT";
# VAR response := SENDHTTPREQUEST(request);
#r
#
# Send TCP, UDP data:
# VAR data1 := "{\"name\":\"John\", \"age\":" + Va + "}";
# SENDDATA(data1);
# VAR data2 := TOBYTES("{\"name\":\"John\", \"age\":" + Va + "}", "iso-8859-1");
# SENDDATA(data2);
# You can process received TCP or UDP data in the Listener script
#
#
# Upload data to FTP:
# FTPUPLOAD("filePath", "somedata=" + Va, "write"); # use "append" mode to append data to existing file
```

Lesen (Modul)

```taphome
# Simple HTTP Request:
# VAR response := SENDHTTPREQUEST("/example/getValue");
# IF response.IsSuccess
#  VAR content := response.Content;
#  VAR responseHeaders := response.Headers;
#  RETURN(PARSEXML(content, "//element1/value1"));
# ELSE
#  ADDERROR(response.StatusCode + " (" + response.ReasonPhrase + ")");
#  RETURN(NaN);
# END
#
# Set Http request method, body and headers
# VAR response := SENDHTTPREQUEST("/example/getValue", "GET", "some data", "header1:value1", "header2:value2", ...);
# OR
# VAR request := HTTPREQUEST("/example/getValue", "POST", "some data");
# request.headers := { "header1:value1", "header2:value2", ...};
# request.method := "GET";
# request.data := null;
# VAR response := SENDHTTPREQUEST(request);
#
#
# Send TCP, UDP data:
# VAR data1 := BYTECOLLECTION("0a bb ea df 01");
# SENDDATA(data1);
# VAR data2 := "{\"name\":\"John\", \"age\":32}";
# SENDDATA(data2);
# VAR data3 := TOBYTES("{\"name\":\"John\", \"age\":32}", "iso-8859-1");
# SENDDATA(data3);
# Process received TCP or UDP data and set device values in the Listener script
#
#
# Download data from FTP:
# FTPDOWNLOAD("filePath");
```

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Current", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Relaisausgang Schalter Lesen und Schreiben

Haupt-230V-AC-Relais — fordert beim Ausschalten auch eine Energiestatus-Aktualisierung an

boolean

Werte / Zustände: ON-ACCESO · OFF-SPENTO

Schaltzustand schreiben

```taphome
var value1 := IF(St = 1, "1", "0");
MQTTPUBLISH("cmnd/" +  plug1topic + "/Power", value1);

var value2 := IF(St = 0, MQTTPUBLISH("cmnd/" +  plug1topic + "/Status", "8"));
```

Periodenenergie Variable Nur lesen

Verbrauch im aktuellen Telemetriezeitraum

numeric Einheit: Wh json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Period", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Wirkleistung Variable Nur lesen

numeric Einheit: W json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Power", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Energie heute Variable Nur lesen

Kumulativer Energieverbrauch seit Mitternacht

numeric Einheit: kWh json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Today", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Blindleistung Variable Nur lesen

numeric Einheit: VAR json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".ReactivePower", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Gesamtenergie Variable Nur lesen

Kumulativer Verbrauch seit Zählerstart — bleibt nach Neustarts erhalten

numeric Einheit: kWh json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Total", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

Betriebszeit Variable Nur lesen

Betriebszeit des Geräts in Sekunden seit dem letzten Neustart

numeric Einheit: s json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "STATE") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, "UptimeSec", true);
    if (!ISNULL(temp4), Va := temp4);
end
```

Spannung Variable Nur lesen

numeric Einheit: V json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "SENSOR") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID12 + ".Voltage", true);
    if (!ISNULL(temp4), Va := temp4/1);
end
```

WiFi-Signalstärke Variable Nur lesen

WiFi-Signalpegel in dBm — in der Vorlage durch 100 geteilt (Rekalibrierung möglicherweise erforderlich)

numeric Einheit: dBm json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "STATE") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp4 := PARSEJSON(RECEIVEDMSG.Payload, ID1 + ".Signal", true);
    if (!ISNULL(temp4), Va := temp4/100);
end
```

WiFi RSSI Analogeingang Nur lesen

WiFi-Signalqualität in Prozent, normalisiert auf den Bereich 0–1 für TapHome AnalogInput

numeric Einheit: % json\_path

Listener

```taphome
if INDEXOF(RECEIVEDMSG.Topic, "STATE") > 0
	var tmp := RECEIVEDMSG.Payload;
    var temp2 := PARSEJSON(RECEIVEDMSG.Payload, ID1 + ".RSSI", true);
    if (!ISNULL(temp2), An := temp2/100);
end
```

**Verbindung:** Packet Parser → MQTT

Mögliche Verbesserungen (5)

- Connection Status (LWT) — Last Will and Testament — Online/Offline payload. Could detect device connectivity.
- Energy Yesterday — Yesterday's energy consumption in kWh. Available in SENSOR payload but not parsed by template.
- Telemetry Period — Set telemetry interval (10–3600s, default 300). Could be exposed as service action.
- Energy Counter Reset — Reset energy counters (Today, Yesterday, Total). Could be exposed as service action.
- Energy Calibration Commands — BL0937 energy monitoring chip calibration — important for accurate readings but requires physical known load.

## Quellen

- NOUS A1 — Product Page & Specifications
  
  [nous.technology](https://nous.technology/product/nous-smart-wi-fi-socket-a1.html) 2026-03-30
- NOUS A1 — Tasmota Template (Blakadder)
  
  [templates.blakadder.com](https://templates.blakadder.com/nous_A1.html) 2026-03-30
- Tasmota MQTT Protocol Reference
  
  [tasmota.github.io](https://tasmota.github.io/docs/MQTT/) 2026-03-30

## Verwandte Dokumentation

- [MQTT Integration](https://taphome.com/de/compatibility/mqtt-guide/)
- [Packet Parser (HTTP, TCP, UDP, FTP, MQTT)](https://taphome.com/de/docs/integration/packet-parser/)
- [Packet-Parser-Funktionen](https://taphome.com/de/docs/script/packet-parser/)
- [Parsing-Funktionen](https://taphome.com/de/docs/script/parsing-functions/)
- [MQTT-Broker](https://taphome.com/de/docs/integration/packet-parser/mqtt-broker/)
- [Listener-Skripte](https://taphome.com/de/docs/script/listener-scripts/)

