Milesight WTS: LoRaWAN-Solar-Wetterstation

Milesight WTS LoRaWAN-Wetterstation: eigener ChirpStack/ThingsBoard-Decoder, dekodiertes Beispiel, Wind, Regen, Druck und Temperatur für Smart City.

Milesight WTS
WTSSensor
LoRaWAN
Class A, OTAA
Band / Port
EU868 / Port 85
Stromversorgung
Solar mit Pufferakku
Schutzart
IP65
Temperatur
-40 bis +80 °C
Windgeschwindigkeit
0 bis 60 m/s
Konfiguration
NFC (Milesight ToolBox)
Messgrößen

Was misst der WTS?

Temperatur & Feuchte

Lufttemperatur und relative Luftfeuchtigkeit.

Windgeschwindigkeit & -richtung

Windgeschwindigkeit in m/s und Richtung in Grad.

Luftdruck

Barometrischer Druck in hPa für Prognosen und Trendalarme.

Niederschlag

Kumulierter Niederschlag in mm plus Wippen-Zähler.

Batteriestand

Wird als Prozentwert gemeldet, mit lokalem Speicher und erneuter Übertragung.

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 === 0x01 && type === 0x75) {          // battery (%)
      data.battery = bytes[i]; i += 1;
    } else if (channel === 0x03 && type === 0x67) {   // temperature (°C)
      data.temperature = readInt16LE(bytes, i) / 10; i += 2;
    } else if (channel === 0x04 && type === 0x68) {   // humidity (%RH)
      data.humidity = bytes[i] / 2; i += 1;
    } else if (channel === 0x05 && type === 0x84) {   // wind direction (°)
      data.wind_direction = readInt16LE(bytes, i) / 10; i += 2;
    } else if (channel === 0x06 && type === 0x73) {   // barometric pressure (hPa)
      data.pressure = readUInt16LE(bytes, i) / 10; i += 2;
    } else if (channel === 0x07 && type === 0x92) {   // wind speed (m/s)
      data.wind_speed = readUInt16LE(bytes, i) / 10; i += 2;
    } else if (channel === 0x08 && type === 0x77) {   // rainfall total (mm) + counter
      data.rainfall_total = readUInt16LE(bytes, i) / 100;
      data.rainfall_counter = bytes[i + 2]; i += 3;
    } else {
      break;
    }
  }
  return { data: data };
}

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

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

Kanalformat: 01 75 Batterie (%), 03 67 Temperatur (INT16 little-endian, /10), 04 68 Feuchte (/2), 05 84 Windrichtung (INT16, /10), 06 73 Druck (UINT16, /10), 07 92 Windgeschwindigkeit (UINT16, /10), 08 77 Niederschlag gesamt (UINT16, /100) plus 1-Byte-Wippen-Zähler. Alarmkanäle (0x83/0x86/0x87/0x88) wiederholen denselben Wert plus ein Alarmtyp-Byte. Für ThingsBoard kommt dieselbe Kanal-Logik in einen Uplink-Converter.

Uplink (hex)

01755A0367EA000468640584080706739427079223000877E20405

Decoded JSON

{ "battery": 90, "temperature": 23.4, "humidity": 50, "wind_direction": 180, "pressure": 1013.2, "wind_speed": 3.5, "rainfall_total": 12.5, "rainfall_counter": 5 }
Aus der Praxis

Konfiguration & Stolpersteine

NFC-Einrichtung

Keys, Meldeintervall und Schwellwert-Alarme werden vor der Montage am Mast per NFC mit der Milesight ToolBox gesetzt.

Solar-Energiebudget

Die Station lädt über ihr Solarpanel mit Pufferakku. Wähle ein Meldeintervall, das den Akku auch über mehrere trübe Tage geladen hält.

Niederschlag-Zähler-Überlauf

Niederschlag ist ein kumulierter Gesamtwert mit separatem Wippen-Zähler. Bilde im Dashboard die Differenz zwischen den Uplinks und behandle das Zurücksetzen des Zählers nach einem Clear-History-Befehl.

Bezug der Windrichtung

Die Windrichtung wird in Grad gemeldet. Montiere die Station mit der Orientierungsmarke nach geografisch Nord, damit die Werte aussagekräftig bleiben.

Dein Partner

So unterstützt dich merkaio beim WTS

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

Pre-Staging & Provisioning

Wir konfigurieren den WTS, 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, ohne Milesight-Gateway oder -Cloud. Du hinterlegst den Codec im Device-Profil und provisionierst es per OTAA.
Ja, für ChirpStack und ThingsBoard, umgesetzt nach der veröffentlichten Milesight-Byte-Spezifikation. Dieselbe Kanal-Logik kommt in einen ThingsBoard-Uplink-Converter.
Lufttemperatur, relative Feuchte, Luftdruck, Windgeschwindigkeit, Windrichtung und kumulierten Niederschlag, dazu den Batteriestand. Jeder Wert hat im Uplink einen eigenen IPSO-Kanal.
Es ist ein Class-A-Gerät auf LoRaWAN-Port 85. Uplinks tragen die Wetterkanäle, dedizierte Alarmkanäle werden sofort gesendet, wenn ein Schwellwert überschritten wird.
Sie läuft über ein Solarpanel mit wiederaufladbarem Pufferakku und eignet sich so für abgelegene Masten und Felder ohne Netzstrom. Der Batteriestand wird als Prozentwert gemeldet.
Niederschlag kommt als kumulierter Gesamtwert in Millimetern (UINT16, geteilt durch 100) plus einem 1-Byte-Wippen-Zähler. Dein Dashboard berechnet den Niederschlag pro Intervall aus der Differenz aufeinanderfolgender Gesamtwerte.
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.