Bitstream is consistent with the results returned, ie, 0000000011001011000000010000011011010010
The checksum the device is returning is consistent with the incorrect result.
I conclude that your device is defective. Those things have temperature correction algorithms built in - I suspect that this what is bad. They may well program these things individually (in a high speed automated test device) to set the coefficients to correct for individual variation between humidity sensors - it's thus not entirely implausible. I'll bet you could find an exact temperature (let me guess - 25.6C) at which it starts failing, and correct for it (ex, function (a) {var rh=a.temp>25.6?a.rh<<1:a.rh;console.log("Temp is "+a.temp.toString()+" and RH is "+rh.toString());})
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Bitstream is consistent with the results returned, ie, 0000000011001011000000010000011011010010
The checksum the device is returning is consistent with the incorrect result.
I conclude that your device is defective. Those things have temperature correction algorithms built in - I suspect that this what is bad. They may well program these things individually (in a high speed automated test device) to set the coefficients to correct for individual variation between humidity sensors - it's thus not entirely implausible. I'll bet you could find an exact temperature (let me guess - 25.6C) at which it starts failing, and correct for it (ex, function (a) {var rh=a.temp>25.6?a.rh<<1:a.rh;console.log("Temp is "+a.temp.toString()+" and RH is "+rh.toString());})