Code: Select all
sensor_temp = machine.ADC(4) # Pico internal temperature sensor conversion_factor = 3.3 / (65535) # ADC scaling reading = sensor_temp.read_u16() * conversion_factor degC = 27 - (reading - 0.706)/0.001721 # RP2040 internal temp
I just got two Adafruit Feather RP2040 boards, and using this same code at the same ambient temperature, they read 34.5 and 32.7 C.
I know Raspberry Pi has no control over 3rd party boards, but I had the impression the temperature sensor was internal to the RP2040 chip.
It doesn't seem just chance that the different boards would be so far apart, when each pair of boards of the same type is that close.
Maybe the Adafruit layout is not connecting the chip's bottom thermal pad to a ground plane (?)