One important thing to note: the temperature sensor on the Nano 33 seems off by many degrees - as much as 7 deg Celsius.
NOTE: to get reliable readings for temperature and humidity, the sensor should not be influenced by thermal sources in the surrounding. The sensor readings will be influenced by board self heating, caused mainly by the processor and secondarily by the on board DC-DC.To offset the board self heating we suggest to either take into account the temperature rise, which depends on the software, is independent from ambient temperature, but may depend from ventilation and other external factors, so it will be difficult to assess and take as an offset or to reduce the board self heating itself making the temperature offset negligible. In order to minimise self heating it's recommended to use the lowest possible power modes and reduce to a minimum the processor activity. In addition to this, it is also possible to power the board bypassing the DC-DC regulator cutting the link between the 3.3V pads:After this mod, the board shall be powered from its 3.3V and GND input pins.When you cut the link between the two 3.3V pads, you isolate the DC/DC 5V->3.3 V circuit and the board can't be programmed using the USB standard procedure. To recover this functionality you need to restore the connection between the two pads with a drop of solder. We therefore suggest that you cut the connection when you have finalised your sketch and the board has been programmed with the final version.
Great project. Thanks so much for sharing!The temperature sensor is fine. The problem is that it's sensing the temperature at the Nano 33 BLE Sense's PCB, which is higher than ambient temperature due to heating from the electronics on the board. Some documentation has recently been added about this here:https://www.arduino.cc/en/Guide/NANO33BLESense#toc10