This is a P8X32A/Propeller, P2X8C4M64P/Propeller 2 driver object for the HTU21D Temperature/RH sensor.
IMPORTANT: This software is meant to be used with the spin-standard-library (P8X32A) or p2-spin-standard-library (P2X8C4M64P). Please install the applicable library first before attempting to use this code, otherwise you will be missing several files required to build the project.
- I2C connection at up to ~30kHz (P1: SPIN I2C), 400kHz (P1: PASM I2C, P2)
- Read temperature (hundredths of a degree), humidity (hundredths of a percent)
- Enable optional CRC checking of data - read flags indicating last acquired data was valid
- Set sensor resolution
- Enable on-chip heater (intended for diagnosis only - 0.5-1.5C temperature increase)
- Read low-battery status
P1/SPIN1:
- spin-standard-library
- 1 extra core/cog for the PASM I2C engine (none if SPIN I2C engine is used)
sensor.temp_rh.common.spinh
(source: spin-standard-library)
P2/SPIN2:
- p2-spin-standard-library
sensor.temp_rh.common.spin2h
(source: p2-spin-standard-library)
Processor | Language | Compiler | Backend | Status |
---|---|---|---|---|
P1 | SPIN1 | FlexSpin (6.9.4) | Bytecode | OK |
P1 | SPIN1 | FlexSpin (6.9.4) | Native/PASM | OK |
P2 | SPIN2 | FlexSpin (6.9.4) | NuCode | Untested |
P2 | SPIN2 | FlexSpin (6.9.4) | Native/PASM2 | OK |
(other versions or toolchains not listed are not supported, and may or may not work)
- Low battery status flag unverified
- P2 demo has incorrect output when built with FlexSpin 5.9.13-beta or older: see FlexSpin issue #289.