Neu: Die KI-Firewall überwacht die gesamte Plattform und erklärt jeden Vorfall in einfachen Worten. So funktioniert es

Antwort: Zwanzig DS18B20-Sensoren an einem Pi: Ausfälle ab acht Sensoren und wie man die Keys benennt

Von English mit KI übersetzt ·

James hat die Verkabelung richtig gemacht. Zwei Busse, jeweils 2.2k, dann passt das. Wir betreiben so in einem Pumpenhaus 14 Sonden pro Bus.85.0 ist der Einschaltwert des DS18B20, das bedeutet, dass die Messung vor Abschluss einer Wandlung erfolgte, meist ein Brown-out am Bus. Im Code verwerfen, niemals senden.Bei den Keys jetzt ändern, bevor Historie entsteht. Keys zählen als eindeutige Namen über die gesamte Organisation (Starter begrenzt auf 250), daher verbrauchen ROM-IDs pro Sensor dieses Kontingent schnell, sobald Sie einen zweiten Keller aufbauen. Benennen Sie sie nach Position, führen Sie eine Zuordnung von ROM-ID zu Position in einer Datei auf dem Pi und senden Sie alle 20 in einer Nachricht. Eine Nachricht mit 20 Datenpunkten kostet dasselbe Kontingent wie eine mit einem.

import glob, json, paho.mqtt.client as mqtt
MAP = {"28-0316a2794bff": "rack1.top", "28-0316a27a11ff": "rack1.mid"}  # etc
vals = {}
for p in glob.glob("/sys/bus/w1/devices/28-*/temperature"):
    rom = p.split("/")[-2]
    t = int(open(p).read()) / 1000
    if rom in MAP and t != 85.0:
        vals["cellar." + MAP[rom]] = round(t, 2)
c.publish("v1/telemetry", json.dumps(vals), qos=1)

Die Regeln für Keys stehen unter Telemetry keys.

QoS 1 and a lot of patience.
Akzeptierte Lösung♥ 2