Just wanted to put this out there, because I spent a while troubleshooting it.
I'm running a Pi 3b+ in a Greenhouse to regulate an exhaust fan (among other things). It's powered by solar+battery, so I had tried to reduce power consumption as much as possible. I had USB/HDMI disabled, and reduced the clock speed in /boot/config.txt with arm_freq_min=100. My assumption was that the clock speed would ramp back up on demand anyway.
I kept having issues with 1wire, specifically a DS18B20, including CRC errors and the device disappearing. I also had reliability issues with an AM2302 (a wired DHT22), and was relying on both sensors together to make some kind of sense, but it was frustrating me. I just remembered this morning that I had made that clock speed change, and commented it out, and suddenly everything seems flawless.
Maybe this is something people already know about, but while searching for CRC errors on 1wire, I never came across it.
Here's my setup:
The Pi talks over RS-485 to the solar charger. It also controls the motor controller with PWM to regulate the exhaust fan speed. The board on the top right steps up 12->24v so the fan has a higher top-speed.
I'm not super-happy about the wires sticking out on the pi-ezconnect hat, but it's better than a breadboard.