lynchlab
@aoife_l22 · Joined April 2025
Engineering student · university
- Topics
- 15
- Replies
- 79
- Points
- 0
Forum Replies Created
Switched the humidifier to absolute humidity with a 60 s minimum on/off and it’s been flat for 3 hours: temp within 0.3 C, RH within 2 %. With everything on one chart I could also see the mist hit the temperature about 20 s after humid_on went to 1, which went straight into the report. My supervisor wants the dew point version next, of course.
Good to know the dongle way works, much less risky than my 0402 idea.
Found an AX88772 adapter in the lab drawer, eth0 came up on first boot, readings arriving every minute. The HEC idea is officially dead, thanks for saving me the afternoon.
I tried that, the temperature sags every time the heater waits and it’s worse.
so with gadget mode the Zero looks like a network card to the laptop and the laptop routes for it? that means the laptop has to stay on all the time
There are guides for some boards where you move a tiny 0402 part to route the radio to an external connector. Not sure the Pi 3 even has that pad though, I’d check before heating anything.
Or keep them out of the binary and write them to NVS at the bench? Then it’s one image for all 60 too.
why S type rather than K at that temperature? is it just drift?
I ran into nearly the same thing on a lab Pi 4 with two thermocouple boards. I never got to the bottom of the kernel side, so I can’t tell you whether it’s a driver bug. But spi5 sits on GPIO12 to 15, and GPIO14/15 are also the UART pins your console is using, so with enable_uart=1 two overlays are fighting over the same pins. That alone is enough for me not to trust the setup.
What I did, and I’d do it again: you don’t need two buses for two MAX31865s. They are SPI devices with their own chip select, so both sit on SPI0 with CE0 and CE1:
# /boot/firmware/config.txt
dtparam=spi=on
# remove the spi4-1cs and spi5-1cs lines
Wiring: SCLK GPIO11, MOSI GPIO10, MISO GPIO9 shared by both boards. CS of board 1 to CE0 (GPIO8), board 2 to CE1 (GPIO7). In CircuitPython / Blinka that’s digitalio.DigitalInOut(board.CE0) and board.CE1 as the CS pins. The MAX31865 is happy at 1 MHz, the shared bus is nowhere near busy reading two temperatures every few seconds.
Keep the PT100 config (2/3/4 wire) the same as it was per board, otherwise your readings shift by a few degrees and someone will open a ticket about the boiler.
Why is training so much worse than running it? Isn’t it the same maths?
Ordered a 2.4 A af splitter and it’s been up 9 days. Throttled was 0x50005 on the first day with a 15 m flat patch cable, swapped it for proper Cat6 and it’s 0x0 since. Added the undervolt key and the gateway/children offline delays like you said.
yep that was it 🤦 moved two wires and both addresses popped up (0x10 and 0x77). Script ran first try and the four keys are on my board now. lesson learned: physical pin numbers and GPIO numbers are not the same thing
…I went by the numbers printed on my breakout cable, which I think are GPIO numbers. So GPIO3 and GPIO5?
I did the same pump setup for a uni project, both issues bit me.
Relay: move it to GPIO 26 or 27, they stay quiet through boot. Most of these blue modules are active LOW, so set the level before switching the pin to output, otherwise you get a short pulse anyway:
digitalWrite(26, HIGH); // relay off for an active-low module
pinMode(26, OUTPUT);
Also take the JD-VCC jumper off and feed the relay coil from its own 5 V, keep only VCC/IN/GND from the ESP. A coil on the ESP’s USB 5 V can brown it out when it pulls in.
Board: the switch shows what you bind as its current state. Have the firmware report {"pump_state": 1} after it actually switched, and bind the Switch card’s Current state slot to pump_state. The card then shows the device’s reported state once it arrives, not what was clicked. Leave “Disable the control when The reading is old” on (it’s the default), and also tick “The state is unknown”, so nobody can flip it while the ESP is offline. Keep “Ask before running” on for a pump, that’s the default too. Card settings: Control cards
That’s a much better answer for my supervisor than “redesign it”. The gateway model they’re looking at counts pulses, so the pump goes straight in and the level and float go through an I/O module. Also going to quote this in my BEAM essay, analog reflex plus a box that talks.

