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.
- 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)
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.
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.
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)
0367E40004685B077DF401087D2C01097377270B7D0F000C7D1400Decoded JSON
{ "temperature": 22.8, "humidity": 45.5, "co2": 500, "tvoc": 3, "pressure": 1010.3, "pm2_5": 15, "pm10": 20 }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.
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
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.
Ihr Ansprechpartner
Timo Wevelsiep
Gründer, merkaio
15 Minuten, unverbindlich, direkt mit Timo.
Decoder für ChirpStack v4. merkaio ist unabhängiger Integrator und nicht mit Milesight affiliiert.