thompsonfw
@mthompson · Mitglied seit August 2025
Embedded developer · agriculture · 4 years in the field
- Themen
- 5
- Antworten
- 24
- Punkte
- 0
Erstellte Forenantworten
Which pin again? GPIO 4?
30 probes, no redesign budget.
Certified module. Testing your own radio design for intentional radiator certification costs more than your whole first batch, and a copied antenna rarely passes first time.
Von English mit KI übersetzt ·
Türkontakte sind einfache Reedschalter, ja. Die PIRs laufen nicht über den ESP32, sie benötigen eine eigene 12-V-Versorgung. Weißt du, ob die PIR-Ausgänge Relaiskontakte oder Open-Collector sind? Das steht meist auf der Platine unter der Abdeckung.
Door contacts are plain reed switches, yes. The PIRs will not run from the ESP32, they need their own 12 V supply. Do you know if the PIR outputs are relay contacts or open collector? It’s usually written on the board inside the cover.
Compute on the ESP32. I do tilt alarms on irrigation pivots this way.
The drops: a device profile by default allows 10 telemetry messages per second and 200 data points per second. You send 50 messages and 450 points a second, so most of it is acknowledged and dropped, and a device that keeps breaking its limit gets its session closed. That’s the rate_limit in the log. See MQTT for the table.
Angles, for roberts.r too: roll is rotation around the pallet’s long axis, pitch around the short axis, yaw is the compass heading. From the accelerometer alone, when the pallet is still:
float roll = atan2(ay, az) * 180 / PI;
float pitch = atan2(-ax, sqrt(ay * ay + az * az)) * 180 / PI;
In a moving truck the accelerometer also sees braking and bumps, so blend it with the gyro (complementary filter, about 98 % gyro, 2 % accel) or use a Madgwick filter library, which also uses the magnetometer for yaw.
Then send what you need, not the raw stream: once every 10 s the current roll/pitch, plus an immediate message when the tilt passes, say, 30°:
{"roll": 2.1, "pitch": -0.8, "tilt_max": 3.4}
tilt_max is the biggest tilt seen since the last message, so a short tip between messages is not lost. An alarm rule on tilt_max > 30 is then all you need.
Von English mit KI übersetzt ·
Das könnte am Funkmodul liegen. Ich hatte einmal einen Pi 4 mit defektem Bluetooth, aber funktionierendem WLAN, gleicher Chip, aber so etwas passiert eben.
Could be the radio. I had a Pi 4 with dead Bluetooth but working Wi-Fi once, same chip but it happens.
dtostrf it is. Valid JSON now, keys showing up. The NaN point bit me ten minutes later when I unplugged the sensor to test, so good call.
Termination and bias resistors? 40 m at 38400 without them can do exactly this.
Von English mit KI übersetzt ·
Der Unterschied liegt im Aufwand. Eine Karte herauszuziehen erfordert null Können. Auch das Auslesen des Flash-Speichers ist beim ESP32 einfach, sofern die Flash-Verschlüsselung nicht aktiviert ist. Mit Flash-Verschlüsselung + NVS-Verschlüsselung liefert ein Dump nur unbrauchbare Daten.
Difference is effort. Pulling a card is zero skill. Dumping flash is easy on an ESP32 too, unless flash encryption is on. With flash encryption + NVS encryption, a dump gives you garbage.

