That is: I swapped the power (the Enviro Urban is now USB powered, and the Enviro Indoor battery powered).
It seems the Enviro boards temperature and humidity sensors are very sensitive to heat generated by the Pi Pico W - i.e. when USB-powered, the always-on board heats up a little relative to the power-miser battery mode.
Perhaps the Enviro board software should also include the RP2040’s onboard temperature reading too? Maybe the hardware design could also be reworked to provide better insulation for the sensors?
For sure, it would be useful to have a clear indicator as to whether the board’s sensor readings have been impacted by the Pi Pico W.
Still puzzled as to why humidity is temperature sensitive.
May also be worth splitting them up a little; in that first picture the Indoor is tucked up fairly snuggly against and above the Urban, so any waste heat may be affecting it.
I’d probably have them in the same orientation / elevation with a hands width distance from each other to get a more even handed comparison (not to say your USB/battery theory isn’t potentially a factor, but there’s too many other variables in the way)
Yep, if you’ve got your board powered by USB it will never go to sleep and thus will warm up more. If it’s powered by battery the power to the RP2040 is completely cut, giving everything the chance to cool down between readings.
I found that my Urban reads a little warmer than my Weather too, which makes sense as Urban stays on for a few seconds to allow the particulate sensor to suck in enough air to take a reading.
I might be wrong here but I’m pretty sure the Pico can report it’s own onboard temperature. Perhaps you could use that to create an offset? (I’m sure I saw something similar on another product in the past).
Note: there is still work to do to stop Adafruit.io getting stroppy about the amount of work we’re throwing their way. Quite honestly, given how much I’m paying, I’d expected better from them.
And this is what I used: a nice new 6700mAh Lithium Ion battery pack with the LIPO AMIGO PRO …
I’ve given up on using remote services for monitoring - these days I just log stuff to MySQL (sometimes via a little “api” on a local Pi and use Grafana to create my own dashboards).