Milesight AM104: 4-in-1 LoRaWAN Raumklima-Sensor
Milesight AM104 4-in-1 LoRaWAN-Sensor: Temperatur, Feuchte, Bewegung und Licht mit eigenem ChirpStack/ThingsBoard-Decoder und dekodiertem Beispiel.
- LoRaWAN
- Class A, OTAA
- Band / Port
- EU868 / Port 85
- Messgrößen
- 4-in-1: Temperatur, Feuchte, Bewegung, Licht
- Temperatur
- 0 bis +50 °C Innenraum
- Feuchte
- 0 bis 100 % rF
- Stromversorgung
- 2x AA-Batterien, mehr als ein Jahr
- Konfiguration
- NFC (Milesight ToolBox)
Was misst der AM104?
Temperatur
Raumlufttemperatur, INT16 Little-Endian, Faktor 10.
Feuchte
Relative Luftfeuchte 0 bis 100 % rF, in 0,5-%-Schritten.
Bewegung (PIR)
Passiv-Infrarot-Belegungszähler je Meldeintervall.
Licht
Beleuchtungsstärke in Lux plus sichtbare und infrarote Rohwerte.
Batteriestand
Wird als Prozentwert gemeldet, damit der AA-Wechsel planbar bleibt.
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 === 0x6a) { // PIR activity counter
data.activity = readUInt16LE(bytes, i); i += 2;
} else if (channel === 0x06 && type === 0x65) { // light: lux + visible/IR + IR
data.illumination = readUInt16LE(bytes, i);
data.infrared_and_visible = readUInt16LE(bytes, i + 2);
data.infrared = readUInt16LE(bytes, i + 4);
i += 6;
} 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 6A Bewegung (UINT16 Little-Endian), 06 65 Licht (Beleuchtungsstärke Lux, sichtbar+infrarot, infrarot als drei UINT16 Little-Endian). Geräteinfo- und Downlink-Antwort-Frames auf Kanal 0xFF/0xFE enthalten keine Messwerte und können ignoriert werden. Für ThingsBoard wandert dieselbe Kanal-Logik in einen Uplink-Converter. Umgesetzt nach der veröffentlichten Milesight-Byte-Spezifikation.
Uplink (hex)
0175640367EB00046E056A0C0006656801A0011400Decoded JSON
{ "battery": 100, "temperature": 23.5, "humidity": 55, "activity": 12, "illumination": 360, "infrared_and_visible": 416, "infrared": 20 }Einsatzszenarien
Konfiguration & Stolpersteine
NFC-Einrichtung
Schlüssel, Meldeintervall sowie PIR- und Licht-Schwellen werden vor dem Rollout per NFC mit der Milesight-ToolBox-App gesetzt.
AA-Batteriebetrieb
Der AM104 läuft mit zwei wechselbaren AA-Zellen. Smart-Hibernate-Zeitplan und Meldeintervall bestimmen die Laufzeit direkt, also realistisch einstellen.
PIR-Platzierung
Passiv-Infrarot braucht Sichtlinie und reagiert auf Montagehöhe und HVAC-Luftströmung. Den Sensor so ausrichten, dass der Erfassungskegel den belegten Bereich abdeckt.
Variante ohne Display
Der AM104 hat kein E-Ink-Display (anders als AM107/AM300). Alle Werte werden über LoRaWAN ausgelesen, also auf ein Dashboard statt auf eine lokale Anzeige setzen.
So unterstützt dich merkaio beim AM104
Von der Beschaffung bis zum laufenden Betrieb, alles aus einer Hand und auf eigener europäischer Infrastruktur.
Pre-Staging & Provisioning
Wir konfigurieren den AM104, 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.