Milesight WS513: LoRaWAN Smart-Steckdose & Energiezähler

Milesight WS513 LoRaWAN Smart-Steckdose: eigener ChirpStack/ThingsBoard-Decoder, Spannungs-/Leistungs-Beispiel, Schalten per Downlink und Überlastschutz.

Milesight WS513
WS513Sensor
LoRaWAN
Class C, OTAA
Nennlast
16 A / 250 V AC
Messung
Spannung, Strom, Leistung, Leistungsfaktor, Energie
Schutz
Überlast-Abschaltung bei 130 % des Nennstroms
Lokale Bedienung
Taster, Kindersicherung, LED-Anzeige
Konfiguration
NFC (Milesight ToolBox)
Montage
Unterputz-Steckdose (länderspezifische Abdeckung)
Messgrößen

Was misst der WS513?

Wirkleistung

Momentane Last in Watt (UINT32), pro Sendezyklus aktualisiert.

Energieverbrauch

Kumulierte Energie in Wattstunden (UINT32), per Downlink rücksetzbar.

Spannung & Strom

Netzspannung (V, /10) und Laststrom (mA) des angeschlossenen Geräts.

Leistungsfaktor

Als Prozentwert gemeldet (0 bis 100 %).

Schaltzustand & Temperatur

Relais-Zustand ein/aus plus Innentemperatur zur Überhitzungserkennung.

Daten ins Dashboard

Integration

Sensor / Controller

Misst oder steuert vor Ort und sendet LoRaWAN-Uplinks.

LoRaWAN-Gateway

Empfängt die Funkpakete und reicht sie an den Server weiter.

ChirpStack

Network-Server: verwaltet Sessions und decodiert das Payload.

ThingsBoard / Grafana

Dashboards, Alarme, Regeln und Reports.

ChirpStack v4 · decodeUplink
function decodeUplink(input) {
  var bytes = input.bytes;
  var data = {};

  for (var i = 0; i < bytes.length; ) {
    var channel = bytes[i++];
    var type = bytes[i++];

    if (channel === 0x03 && type === 0x74) {          // voltage (V)
      data.voltage = readUInt16LE(bytes, i) / 10; i += 2;
    } else if (channel === 0x04 && type === 0x80) {   // active power (W)
      data.active_power = readUInt32LE(bytes, i); i += 4;
    } else if (channel === 0x05 && type === 0x81) {   // power factor (%)
      data.power_factor = bytes[i]; i += 1;
    } else if (channel === 0x06 && type === 0x83) {   // power consumption (Wh)
      data.power_consumption = readUInt32LE(bytes, i); i += 4;
    } else if (channel === 0x07 && type === 0xc9) {   // current (mA)
      data.current = readUInt16LE(bytes, i); i += 2;
    } else if (channel === 0x08 && type === 0x70) {   // socket state
      data.socket_status = bytes[i] === 1 ? "on" : "off"; i += 1;
    } else if (channel === 0x09 && type === 0x67) {   // temperature (°C)
      var t = readUInt16LE(bytes, i);
      if (t === 0xfffd) data.temperature_status = "over range";
      else if (t === 0xffff) data.temperature_status = "read failed";
      else data.temperature = readInt16LE(bytes, i) / 10;
      i += 2;
    } else {
      break;
    }
  }
  return { data: data };
}

function readUInt16LE(b, i) {
  return ((b[i + 1] << 8) | b[i]) & 0xffff;
}
function readInt16LE(b, i) {
  var v = readUInt16LE(b, i);
  return v > 0x7fff ? v - 0x10000 : v;
}
function readUInt32LE(b, i) {
  return ((b[i+3]<<24)|(b[i+2]<<16)|(b[i+1]<<8)|b[i]) >>> 0;
}

Implementiert nach der veröffentlichten Milesight-Byte-Spezifikation (Communication Protocol / User Guide).

Kanalformat: 03 74 Spannung (UINT16LE, /10), 04 80 Wirkleistung (UINT32LE, W), 05 81 Leistungsfaktor (%), 06 83 Energieverbrauch (UINT32LE, Wh), 07 C9 Strom (mA), 08 70 Schaltzustand (0 aus / 1 ein), 09 67 Temperatur (INT16LE, /10; 0xFFFD Bereichsüberschreitung, 0xFFFF Lesefehler). Der Kanal 0xFF trägt beim Join Geräteinfos, 0xFE/0xFF tragen Downlink-Quittungen (Sendeintervall, Alarme, Energie-Reset), die die Schleife überspringt. Dieser Decoder ist anhand der veröffentlichten Milesight-Byte-Spezifikation umgesetzt. Als Class-C-Gerät nimmt die WS513 Downlinks an, um die Steckdose zu schalten und den Energiezähler zurückzusetzen.

Uplink (hex)

0374FC0804809600000005816206830C00000007C98C0208700109670F00

Decoded JSON

{ "voltage": 230, "active_power": 150, "power_factor": 98, "power_consumption": 12, "current": 652, "socket_status": "on", "temperature": 1.5 }
Wofür

Einsatzszenarien

Aus der Praxis

Konfiguration & Stolpersteine

Class-C-Strombudget

Die WS513 ist netzbetrieben und läuft als Class C, hält also ein Empfangsfenster für nahezu sofortige Ein-/Aus-Downlinks offen. Keine Batterieplanung nötig.

Überlastschutz

Die Steckdose schaltet bei rund 130 % des Nennstroms ab. Die Überstromschwelle wird per NFC gesetzt; Auslösungen sollten im Dashboard sichtbar sein.

Energiezähler-Reset

Der kumulierte Verbrauch wird nur per Downlink zurückgesetzt (Kanal 0xFE, Typ 0x27). Resets dokumentieren, damit Abrechnung oder Submetering nachvollziehbar bleiben.

Kindersicherung & LED

Kindersicherung und LED-Anzeige werden per Downlink oder NFC geschaltet. Den Zustand im Dashboard führen, damit eine gesperrte Steckdose niemanden überrascht.

Dein Partner

So unterstützt dich merkaio beim WS513

Von der Beschaffung bis zum laufenden Betrieb, alles aus einer Hand und auf eigener europäischer Infrastruktur.

Pre-Staging & Provisioning

Wir konfigurieren den WS513, setzen Keys, Intervalle und Alarme und liefern einsatzbereit aus.

Eigener Decoder

Payload-Codec für ChirpStack v4 und ThingsBoard, nach der Milesight-Spezifikation implementiert.

Integration ins Dashboard

Die Daten landen in deinem ThingsBoard oder Grafana, inklusive Alarmen und Reports.

Betrieb & Monitoring

Wir betreiben LoRaWAN-Stack und Dashboards auf europäischer Infrastruktur, du nutzt nur die Daten.

Häufige Fragen

Ja. Es ist ein Standard-LoRaWAN-Gerät der Class C, kein Milesight-Gateway oder Cloud nötig. Sie hinterlegen den Codec im Device-Profil und provisionieren per OTAA.
Ja, für ChirpStack und ThingsBoard, umgesetzt anhand der veröffentlichten Milesight-Byte-Spezifikation. Dieselbe Kanal-Logik kommt in einen ThingsBoard-Uplink-Converter.
Netzspannung, Laststrom, Wirkleistung, Leistungsfaktor, kumulierten Energieverbrauch, den Ein-/Aus-Zustand der Steckdose und die Innentemperatur zur Überhitzungserkennung.
Ja. Als Class-C-Gerät hört die WS513 durchgehend und nimmt nahezu sofortige Downlinks an, um die Steckdose ein- oder auszuschalten, Verzögerungsaufgaben zu setzen und den Energiezähler zurückzusetzen.
Ja. Sie schaltet bei rund 130 % des Nennstroms automatisch ab; die Überstromschwelle und Temperaturalarme sind per NFC konfigurierbar.
Per NFC mit der Milesight-ToolBox-App: LoRaWAN-Schlüssel, Sendeintervall, Überstromschwelle, Kindersicherung und LED-Verhalten. Laufende Einstellungen lassen sich auch per Downlink ändern.
Aus derselben Serie

Verwandte Geräte

Sprechen wir über Ihre Infrastruktur. Digital und vor Ort.

Ob IoT-Plattformentwicklung, Hardwareauswahl, Managed Hosting für ChirpStack, ThingsBoard, Grafana oder NetBird VPN, oder Migration von einem Self-Hosted-Setup - wir finden die passende Lösung für Ihren Anwendungsfall. Buchen Sie ein kostenloses 30-Minuten-Gespräch, unverbindlich.

Timo Wevelsiep

Ihr Ansprechpartner

Timo Wevelsiep

Gründer, merkaio

15 Minuten, unverbindlich, direkt mit Timo.

Mit dem Absenden stimmen Sie unserer Datenschutzerklärung zu.

Decoder für ChirpStack v4. merkaio ist unabhängiger Integrator und nicht mit Milesight affiliiert.