johnsonsec
@brian-johnson · Mitglied seit April 2026
IT and security admin · software · 20 years in the field
- Themen
- 1
- Antworten
- 24
- Punkte
- 0
Erstellte Forenantworten
Ordered an S type in an alumina tube and a MAX31856. Rule is in, the attribute trick works nicely, set max_c to 1240 tonight and the firing peaked at 1224 with no alarm. A hardware over-temp relay is going in next weekend, fair point. @Aoife mostly drift and the probe’s life, from what I’ve read since.
On the data side: a device profile allows 10 telemetry messages a second by default. At 200 a second you blow through it and a device that keeps doing that gets its session closed.
Von English mit KI übersetzt ·
Er liegt beim Hermetry-Teil falsch. Hermetry kann Befehle und Änderungen gemeinsamer Attribute an Geräte hinter einem Gateway senden: Das Gateway empfängt sie über v1/gw/rpc oder v1/gw/attributes und muss sie anwenden. Es hängt also davon ab, ob die Gateway-Software des Auftragnehmers diese Topics verarbeitet. Ein Befehl an das Gateway-Gerät selbst funktioniert ebenfalls, sodass die Box in Ihrem Elektroraum „Validierungsabtastung starten“ über einen Dashboard-Button oder eine Regel erhalten und lokal weiterverteilen kann. Das ist ein Befehl statt 30. Der Funkteil ist Erics Revier.
He’s wrong about the Hermetry half. Hermetry can send commands and shared attribute changes to devices behind a gateway: the gateway gets them on v1/gw/rpc or v1/gw/attributes and has to apply them, so it depends on whether the contractor’s gateway software handles those topics. A command to the gateway device itself works too, so the box in your electrical room can get „start validation sampling“ from a dashboard button or a rule and fan it out locally. That’s one command instead of 30. The radio half is Eric’s territory.
Von English mit KI übersetzt ·
Das ist eine Gerätezugangsdaten. Damit meldet sich ein Gerät an, es liest aber nichts für Sie aus. Die Management-API benötigt einen API-Schlüssel. Außerdem ist alle 5 Sekunden für einen Buzzer sehr oft.
That’s a device credential. It logs a device in, it doesn’t read anything for you. The management API wants an API key. Also every 5 seconds is a lot for a buzzer.
Von English mit KI übersetzt ·
Text wird nur als letzter Wert angezeigt, er wird nicht grafisch dargestellt. Mit 0/1 erhältst du die Belegung pro Stunde kostenlos über den stündlichen Durchschnitt.
Text only shows as the latest value, it isn’t charted. With 0/1 you get occupancy per hour for free with the hourly average.
Von English mit KI übersetzt ·
Wir haben letztes Jahr 60 Stellplätze auf einem Parkplatz eines Einkaufszentrums mit schlichtem LoRaWAN ausgestattet, und es läuft problemlos. Für einen Pilotversuch braucht man nichts Besonderes. Das haben wir aufgebaut:
Das Gateway ist ein Basics-Station-Gateway an einem Laternenmast (der alte UDP-Packet-Forwarder wird nicht unterstützt, also prüfen Sie, ob Ihrer Basics Station spricht). Sensoren wurden als OTAA-Geräte hinzugefügt. Wenn Sie 40 anlegen müssen, spart der Kopplungsmodus viel Tipparbeit, benötigt aber einen gemeinsamen AppKey im Profil, den unser Hersteller der Sensor-Pucks nicht herausgeben wollte. Deshalb haben wir alle 60 von Hand als OTAA-Geräte angelegt. Kein Vergnügen, planen Sie einen Nachmittag ein.
Der Hersteller hat nur einen JavaScript-Decoder mitgeliefert. Hermetry führt überhaupt keine Decoder-Skripte aus, Codecs sind JSON-Tabellen. Unserer war ein Layout-Frame auf FPort 2 und dauerte 15 Minuten:
{
"id": "t.bay-puck",
"title": "In-ground parking puck",
"vendor": "Example maker",
"fports": [2],
"kind": "layout",
"frames": [{ "fport": 2, "min_length": 3, "fields": [
{ "at": 0, "field": "occupied", "fmt": "u8" },
{ "at": 1, "field": "battery_mv", "fmt": "u16be" }
]}],
"tests": [{ "name": "car present", "fport": 2, "hex": "010E74", "expect": { "occupied": 1, "battery_mv": 3700 } }]
}
Senden Sie occupied als 0/1, dann können Diagramme es darstellen. Für die Karte haben wir jeden Stellplatz als Asset mit seinen Koordinaten unter einem Standort „Main Street“ angelegt und den Sensor darunter platziert. Danach eine Kartenkachel auf Status unter einem Asset. Die Farbe frei/belegt stammt vom Standortstatus.
Noch eine Sache: eine Regel „Device offline“ im Profil. Bei einem 6-Stunden-Heartbeat verwenden Sie Recent message mit Intervall 21600 und Faktor 2, sonst verstecken sich tote Pucks tagelang.
We did 60 bays for a shopping centre car park last year with plain LoRaWAN and it’s been fine. You don’t need anything special for a pilot. What we built:
Gateway is a Basics Station gateway on a lamp post (the old UDP packet forwarder is not supported, so check yours speaks Basics Station). Sensors added as OTAA devices. If you have 40 to do, pairing mode saves a lot of typing, but it needs a shared AppKey on the profile, which our puck vendor wouldn’t give us, so we added all 60 as OTAA devices by hand. Not fun, budget an afternoon.
The vendor only shipped a JavaScript decoder. Hermetry doesn’t run decoder scripts at all, codecs are JSON tables. Ours was a layout frame on FPort 2 and took 15 minutes:
{
"id": "t.bay-puck",
"title": "In-ground parking puck",
"vendor": "Example maker",
"fports": [2],
"kind": "layout",
"frames": [{ "fport": 2, "min_length": 3, "fields": [
{ "at": 0, "field": "occupied", "fmt": "u8" },
{ "at": 1, "field": "battery_mv", "fmt": "u16be" }
]}],
"tests": [{ "name": "car present", "fport": 2, "hex": "010E74", "expect": { "occupied": 1, "battery_mv": 3700 } }]
}
Send occupied as 0/1, then charts can draw it. For the map we made each bay an asset with its coordinates under a „Main Street“ site and placed the sensor under it, then a map card on Status under an asset. Free/occupied colour comes from the site status.
Last thing: a Device offline rule on the profile. With a 6 hour heartbeat, use Recent message with interval 21600 and factor 2, otherwise dead pucks hide for days.
Strings over I2C waste bytes and you only get 32 per transfer. Show the master side, I bet that’s where it breaks.
Von English mit KI übersetzt ·
Wenn Sie diesen Export skripten, geben Sie dem API-Schlüssel die Voreinstellung Nur Lesen und beschränken Sie ihn auf das Netzwerk Ihres Laptops. Ich habe schon zu viele Vollzugriffs-Schlüssel in Python-Notebooks gesehen.
If you script that export, give the API key the Read-only preset and restrict it to your laptop’s network. Seen too many full-admin keys in Python notebooks.
UWB anchors give you decimetres but cost a lot per room and need calibration. For room-level, BLE is plenty.

