tyler22
@walker-t · Mitglied seit Juni 2025
Data analyst · manufacturing
- Themen
- 3
- Antworten
- 15
- Punkte
- 0
Erstellte Forenantworten
Von English mit KI übersetzt ·
Diese feature.access.checked-Zeilen würden in unserer Organisation alles verdecken. Kann ich sie aus der Liste ausblenden?
Those feature.access.checked rows would bury everything on our org. Can I hide them from the list?
Fair, I mixed up two different setups. Bias it is.
Von English mit KI übersetzt ·
Wo sehe ich unterdrückte für Alarmbenachrichtigungen? Wir senden diese nicht aus einem Flow.
Where do I see suppressed ones for alarm notifications? We don’t send those from a flow.
Always terminate, put 120 ohm at every meter.
Von English mit KI übersetzt ·
Bekommt das GPS einen Fix? In Gebäuden kann der NEO-6M minutenlang mit 0 Satelliten verharren, und TinyGPS liefert dann 0.0.
Is the GPS getting a fix? Indoors the NEO-6M can sit for minutes with 0 sats and TinyGPS will give you 0.0.
What Carlos said, here’s the version I use for our line counters (an Uno doing the counting, a bigger board doing the network). Send binary, fixed size, in one struct, and use onReceive for commands.
Shared struct, in both sketches:
struct Reading {
int16_t moisture; // raw ADC
int16_t temp_x10; // 21.5 C -> 215
int16_t flow_x10; // L/min x10
};
Uno (slave):
volatile Reading r;
volatile bool openValve = false;
void requestEvent() { Wire.write((const uint8_t*)&r, sizeof(r)); } // one write
void receiveEvent(int n) { if (Wire.available()) openValve = Wire.read() == 1; }
void setup() { Wire.begin(8); Wire.onRequest(requestEvent); Wire.onReceive(receiveEvent); }
void loop() {
Reading tmp = { readMoisture(), (int16_t)(readTemp() * 10), (int16_t)(readFlow() * 10) };
noInterrupts(); r = tmp; interrupts();
digitalWrite(VALVE_PIN, openValve);
}
Mega (master):
Reading r;
if (Wire.requestFrom(8, (int)sizeof(r)) == sizeof(r)) Wire.readBytes((uint8_t*)&r, sizeof(r));
float tempC = r.temp_x10 / 10.0;
Wire.beginTransmission(8); Wire.write(1); Wire.endTransmission(); // open valve
Both are AVR, so byte order and int sizes match and the struct goes across as-is. The ÿ you saw is 0xFF, what the master reads when the slave has nothing left to send. Asking for exactly sizeof(r) fixes that too.
Welcome. Will remember the screenshot rule, I usually just say „the chart is weird“.
Von English mit KI übersetzt ·
Falls du noch die alte Adafruit_DHT-Bibliothek verwendest: Sie ist veraltet. Die CircuitPython-Version funktioniert unter aktuellem Pi OS: adafruit-circuitpython-dht plus board.D4.
Also if you’re on the old Adafruit_DHT library, it’s deprecated. The circuitpython one works on current Pi OS: adafruit-circuitpython-dht plus board.D4.
Before picking, which ones can have a power supply? That decides more than the radio does.
Von English mit KI übersetzt ·
Funktioniert. Mein einziges Problem: Der Katalog enthält kein light.set, unser Integrator hat es relay.set genannt, mit einem Parameter state (0 oder 1). Der rpc-commands-Aufruf hat es sofort angezeigt. Die erste Belegung war Super+L, was natürlich den Bildschirm sperrt; jetzt liegt sie auf Super+F9.
Works. My only snag: the catalogue doesn’t have light.set, our integrator called it relay.set with a param called state (0 or 1). The rpc-commands call showed it straight away. First binding was Super+L which of course locks the screen, it’s on Super+F9 now.
Von English mit KI übersetzt ·
Richtig, das erklärt, warum die Karte zurückspringt. Ist es also /api/v1/rpc? Die HTTP-Seite des Geräts listet genau diesen auf
right, that explains the card flipping back. so is it /api/v1/rpc? the device HTTP page lists that one
Driver fixed it, COM7 appeared straight away. Going with the wide ones because the photo-eye interface runs on 5 V and the VU pin saves me a buck converter. Already counting on an interrupt and sending count once a minute.
Von English mit KI übersetzt ·
Funktioniert. Der erste Aufruf lieferte 403, weil ich nur die Sendeberechtigung aktiviert und iot_rpc.read nicht gesetzt hatte. Nach dem Hinzufügen klickt die Lampe, und der Aufruf liefert in etwa 300 ms 200 / SUCCESSFUL zurück. Außerdem habe ich auf dem Bedienerboard eine Switch-Karte angelegt, die an relay gebunden ist, damit die Bediener den Zustand sehen. Danke euch beiden.
Works. First call came back 403 because I had only ticked the send permission and not iot_rpc.read. After adding it the lamp clicks and the call returns 200 / SUCCESSFUL in about 300 ms. I also put a Switch card on the operators‘ board bound to relay, so they see the state. Thanks both.
Von English mit KI übersetzt ·
Ich habe es mit einem geliehenen FTDI-Adapter geflasht, bis ich es nach drei Versuchen in den Boot-Modus bekommen habe (Taste beim Einstecken gedrückt halten). Es verbindet sich jetzt mit Hermetry über ein eigenes Zugriffstoken und sendet jede Minute {"relay": 0}. Der Sendeteil ist also erledigt. Und wie schalte ich es?
Flashed it with a borrowed FTDI adapter, took me three tries to get it into boot mode (hold the button while plugging in). It now connects to Hermetry with its own access token and sends {"relay": 0} every minute. So the sending part is done. What about switching it?
Von English mit KI übersetzt ·
Vorsicht, ich glaube nicht, dass es ein Download-and-run-Image gibt. Auf der Preisseite steht, dass On-Premises-Installationen mit dem Vertrieb vereinbart werden, genau wie bei Enterprise-Tarifen. Das ist also ein Gespräch, kein Knopfdruck.Die anderen beiden Fragen kannst du ihm heute beantworten. Ich habe genau das für unsere Compliance-Leute gemacht:Wo die Daten liegen: Jede Organisation hat eine Heimatregion, EU, USA oder Türkei, die bei der Erstellung gewählt wird. Geräte, Telemetrie, Alarme, Boards, Flows und das Audit-Log liegen alle dort. Als Owner oder Admin öffnest du die Settings und dann Residency (zu finden unter /admin/settings/residency). Dort siehst du die Heimatregion, eventuelle Anforderungen an die Datenhaltung, die Fakten zur Region, die Unterauftragsverarbeiter und wo Backups gespeichert werden. Ich habe diese Seite als Screenshot gesichert, und das war schon der größte Teil der Antwort.Die Datenausleitung besteht aus zwei Teilen. Ein Owner kann einen JSON-Export der Organisation abrufen (Geräte, Boards, Mitglieder, Einstellungen, Webhooks, Teile des Audit-Logs). Die Telemetriehistorie wird separat geholt, über die History-API oder den Download auf einer Diagrammkarte, und Board-Dateien lädst du jeweils einzeln pro Board herunter. Ich habe ein kleines Skript geschrieben, das jeden Monat stündliche Mittelwerte pro Gerät als CSV abruft, damit wir immer eine eigene Kopie haben.Seite, die ich unserer IT geschickt habe: Regions and data residency, dazu die Seite „Export your data and close your organisation“.
Careful, I don’t think there’s a download-and-run image. The plans page says on-premises installs are agreed with their sales team, same as Enterprise plans, so that’s a conversation, not a button.
For the other two questions you can answer him today, I did exactly this for our compliance people:
Where the data is: every organisation has one home region, EU, US or Turkiye, picked when it was created. Devices, telemetry, alarms, boards, flows, audit log all live there. As owner or admin open Settings, then Residency (it’s at /admin/settings/residency). It shows the home region, any residency requirement, the region facts, the sub-processors and where backups are kept. I screenshotted that page and that was most of the answer.
Getting it out is two parts. An owner can pull a JSON export of the organisation (devices, boards, members, settings, webhooks, part of the audit log). Telemetry history goes separately, with the history API or the download on a chart card, and board files you download one board at a time. I wrote a little script that pulls hourly averages per device into CSV every month, so we always have our own copy.
Page I sent our IT: Regions and data residency, plus the „Export your data and close your organisation“ one.

