Milesight AM308: 8-in-1 LoRaWAN Raumluftsensor

Milesight AM308 8-in-1 LoRaWAN Raumluftsensor: eigener ChirpStack/ThingsBoard Decoder, dekodiertes Beispiel, CO2, PM2.5, TVOC und Smart-Office-Integration.

Milesight AM308
AM308Sensor
LoRaWAN
Class A, OTAA
Band / Port
EU868 / Port 85
Display
4,2 Zoll E-Ink, heller/dunkler Modus
CO2-Sensor
NDIR, 400 bis 5000 ppm
Feinstaub
PM2.5 und PM10 (Laser)
Batterie
Wechselbar, bis zu 1 Jahr
Konfiguration
NFC (Milesight ToolBox)
Messgrößen

Was misst der AM308?

CO2

NDIR-Sensor, 400 bis 5000 ppm, Leitindikator für die Belüftung.

PM2.5 und PM10

Laser-Feinstaubsensor, Werte in Mikrogramm pro Kubikmeter.

TVOC

Flüchtige organische Verbindungen, als IAQ-Index oder in Mikrogramm pro Kubikmeter.

Temperatur und Feuchte

Komfortbasis zusammen mit dem Luftdruck.

PIR und Licht

Belegung und Helligkeit für eine bedarfsgesteuerte Lüftung.

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 === 0x00) {   // PIR occupancy
      data.pir = bytes[i] === 1 ? "trigger" : "idle"; i += 1;
    } else if (channel === 0x06 && type === 0xcb) {   // light level (raw)
      data.light_level = bytes[i]; i += 1;
    } else if (channel === 0x07 && type === 0x7d) {   // CO2 (ppm)
      data.co2 = readUInt16LE(bytes, i); i += 2;
    } else if (channel === 0x08 && type === 0x7d) {   // TVOC (IAQ index)
      data.tvoc = readUInt16LE(bytes, i) / 100; i += 2;
    } else if (channel === 0x08 && type === 0xe6) {   // TVOC (µg/m³)
      data.tvoc = readUInt16LE(bytes, i); i += 2;
    } else if (channel === 0x09 && type === 0x73) {   // pressure (hPa)
      data.pressure = readUInt16LE(bytes, i) / 10; i += 2;
    } else if (channel === 0x0b && type === 0x7d) {   // PM2.5 (µg/m³)
      data.pm2_5 = readUInt16LE(bytes, i); i += 2;
    } else if (channel === 0x0c && type === 0x7d) {   // PM10 (µg/m³)
      data.pm10 = readUInt16LE(bytes, i); i += 2;
    } else {
      break;
    }
  }
  return { data: data };
}

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

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

Kanalformat: 01 75 Batterie (%), 03 67 Temperatur (INT16 LE, /10), 04 68 Feuchte (/2), 05 00 PIR, 06 cb Helligkeit, 07 7d CO2 (ppm), 08 7d TVOC als IAQ-Index (/100) oder 08 e6 TVOC in µg/m³, 09 73 Luftdruck (/10), 0b 7d PM2.5, 0c 7d PM10. Der TVOC-Kanaltyp hängt von der per NFC gewählten Einheit ab. History-Uplinks (Kanal 0x20/0x21) bündeln einen Zeitstempel plus alle Werte, die Schleife oben bricht bei ihnen ab und sie lassen sich je Deployment ergänzen. Für ThingsBoard kommt dieselbe Logik in einen Uplink-Converter.

Uplink (hex)

0367E40004685B077DF401087D2C01097377270B7D0F000C7D1400

Decoded JSON

{ "temperature": 22.8, "humidity": 45.5, "co2": 500, "tvoc": 3, "pressure": 1010.3, "pm2_5": 15, "pm10": 20 }
Aus der Praxis

Konfiguration & Stolpersteine

NFC-Einrichtung

Keys, Sendeintervall, TVOC-Einheit und Schwellwertalarme werden vor dem Rollout per NFC mit der Milesight ToolBox gesetzt.

CO2-Kalibrierung (ABC)

Der NDIR-Sensor nutzt eine automatische Baseline-Kalibrierung, die regelmäßigen Frischluftkontakt voraussetzt. In nie gelüfteten Räumen auf manuelle Kalibrierung wechseln, damit die Werte stimmen.

TVOC-Einheit

TVOC wird entweder als IAQ-Index (Kanaltyp 0x7d, /100) oder in µg/m³ (Typ 0xe6) gemeldet. Eine Einheit in der ToolBox wählen und den Decoder-Zweig passend halten, damit das Dashboard-Label stimmt.

Montage und Feinstaub-Ansaugung

An der Wand auf Atemhöhe montieren und die Feinstaub-Ansaugung freihalten. Zugluft oder Wärmequellen verfälschen PM- und Temperaturwerte.

Dein Partner

So unterstützt dich merkaio beim AM308

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

Pre-Staging & Provisioning

Wir konfigurieren den AM308, 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-Class-A-Gerät, 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 Kanallogik kommt in einen ThingsBoard-Uplink-Converter.
Temperatur, Feuchte, CO2, TVOC, Luftdruck, PM2.5, PM10 und Helligkeit sowie PIR-Belegung. Die acht Luftqualitätswerte zeigt zusätzlich das integrierte E-Ink-Display an.
Entweder als IAQ-Index oder direkt in Mikrogramm pro Kubikmeter, je nach per NFC gewählter Einheit. Die beiden Formate nutzen unterschiedliche Kanaltypen, der Decoder-Zweig muss also zur Einheit passen.
Der AM308 läuft je nach Sendeintervall bis zu rund einem Jahr mit der wechselbaren Batterie. Für hochfrequente Meldungen lässt er sich auch dauerhaft per USB versorgen.
Ja. Schwellwerte, etwa eine CO2-Obergrenze, werden per NFC mit der Milesight ToolBox gesetzt und lösen sofort einen Uplink außerhalb des regulären Intervalls aus. Dashboard-Regeln sollten Alarm-Uplinks als Prioritätsereignisse behandeln.
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.