Hello,
Here's a quick Cheat Sheet regarding the available commande on SHT Sensor to be able to manage it completely.
First to make command available you need to start the SHT Driver :
it will start by default a measurement every 10 seconds.
Once driver is avalaible you have access to all the command for the sensor :
- Status command :
"SHT_GetStatus" will return the status of the sensor once convert to binary you can apply this table :
"SHT_ClearStatus" you can clear the status for all the checksum, alert bit with the command "SHT_ClearStatus"
to gather Temp and Humidity measurement you have 2 method :
- Single Shot mode
"SHT_Measure" : Straight forward it mesure and update channel with value. (Default method when starting the driver)
- Periodical measurement.
this mode will ask sensor to capture data regularly without external command, then you juste add to read the buffer.
"SHT_LaunchPer" <msb> <lsb> : Launch the periodical capture with below parameter :
if you don't indicate argument 0x23 0x22 will be used by default so Medium 4 mps mesurement.
it will change the cycle measurement with SHT_MeasurePer
"SHT_MeasurePer" : Will read the buffer on SHT and update Channel with value
"SHT_StopPer" : Will stop the periodical capture (and change back the default measurement of driver to SHT_Measure)
- Measurement Cycle
"SHT_cycle" <second> : will change the cycle of measurement for the driver. default to 10
- Calibration.
by default the sensor doesn't need any calibration, but it's very sensitive so a small led near him can impact the measurement.
So you can use the command SHT_Calibrate to change the offset of temperature and humidity before measurement.
"SHT_Calibrate" -0.5 +10.00 will lower temperature measurement for 0.5 and upper the humidity to 10
- Alert Mode :
The SHT posses an internal alert mode who can send an high signal to pin of the Beken chip if some measurement reach limit.
So you can monitor Low and High Temperature and Low and High Humidity. it permit to wake a device from PinDeepSleep if you assign the alert pin to a dinput
There's a offset between value to avoid excessive flapping on the pin :
"SHT_ReadAlert" : Below command will read the current value of the alert and show them in OpenBeken Log
"SHT_SetAlert" temperatureHighSet temperatureLowSet humidityHighSet humidityLowSet : will set the limit on SHT Sensor.
The temperature clear value has an offset of 0,5 and the humidity an offset of 2
This mode will only work when Periodical measurement if activated. (if not SHT will not be able to compare limit to measurement).
Heater :
SHT Sensor have embeded heater who can be usefull to dissipate to much humidity but will impact measurement.
"SHT_Heater" Binary : will activate Heater if set to 1 and deactivate it if set to 0
Added after 3 [hours] 48 [minutes]:
Here's an example of script implementation :
it will put wake up the device is temperature is lower than 16°c or upper than 22°c or if any button is pushed on device
Here's a quick Cheat Sheet regarding the available commande on SHT Sensor to be able to manage it completely.
First to make command available you need to start the SHT Driver :
Quote:StartDriver SHT3X
it will start by default a measurement every 10 seconds.
Once driver is avalaible you have access to all the command for the sensor :
- Status command :
"SHT_GetStatus" will return the status of the sensor once convert to binary you can apply this table :
![[OpenBeken] SHT Sensor configuration, commands, and deep sleep usage with wake up on pin change [OpenBeken] SHT Sensor configuration, commands, and deep sleep usage with wake up on pin change](https://obrazki.elektroda.pl/6860569700_1676709095_thumb.jpg)
"SHT_ClearStatus" you can clear the status for all the checksum, alert bit with the command "SHT_ClearStatus"
to gather Temp and Humidity measurement you have 2 method :
- Single Shot mode
"SHT_Measure" : Straight forward it mesure and update channel with value. (Default method when starting the driver)
- Periodical measurement.
this mode will ask sensor to capture data regularly without external command, then you juste add to read the buffer.
"SHT_LaunchPer" <msb> <lsb> : Launch the periodical capture with below parameter :
![[OpenBeken] SHT Sensor configuration, commands, and deep sleep usage with wake up on pin change [OpenBeken] SHT Sensor configuration, commands, and deep sleep usage with wake up on pin change](https://obrazki.elektroda.pl/2216930100_1676709275_thumb.jpg)
if you don't indicate argument 0x23 0x22 will be used by default so Medium 4 mps mesurement.
it will change the cycle measurement with SHT_MeasurePer
"SHT_MeasurePer" : Will read the buffer on SHT and update Channel with value
"SHT_StopPer" : Will stop the periodical capture (and change back the default measurement of driver to SHT_Measure)
- Measurement Cycle
"SHT_cycle" <second> : will change the cycle of measurement for the driver. default to 10
- Calibration.
by default the sensor doesn't need any calibration, but it's very sensitive so a small led near him can impact the measurement.
So you can use the command SHT_Calibrate to change the offset of temperature and humidity before measurement.
"SHT_Calibrate" -0.5 +10.00 will lower temperature measurement for 0.5 and upper the humidity to 10
- Alert Mode :
The SHT posses an internal alert mode who can send an high signal to pin of the Beken chip if some measurement reach limit.
So you can monitor Low and High Temperature and Low and High Humidity. it permit to wake a device from PinDeepSleep if you assign the alert pin to a dinput
There's a offset between value to avoid excessive flapping on the pin :
![[OpenBeken] SHT Sensor configuration, commands, and deep sleep usage with wake up on pin change [OpenBeken] SHT Sensor configuration, commands, and deep sleep usage with wake up on pin change](https://obrazki.elektroda.pl/3467705000_1676710562_thumb.jpg)
"SHT_ReadAlert" : Below command will read the current value of the alert and show them in OpenBeken Log
"SHT_SetAlert" temperatureHighSet temperatureLowSet humidityHighSet humidityLowSet : will set the limit on SHT Sensor.
The temperature clear value has an offset of 0,5 and the humidity an offset of 2
This mode will only work when Periodical measurement if activated. (if not SHT will not be able to compare limit to measurement).
Heater :
SHT Sensor have embeded heater who can be usefull to dissipate to much humidity but will impact measurement.
"SHT_Heater" Binary : will activate Heater if set to 1 and deactivate it if set to 0
Added after 3 [hours] 48 [minutes]:
Here's an example of script implementation :
it will put wake up the device is temperature is lower than 16°c or upper than 22°c or if any button is pushed on device
Quote:
echo "PowerSaving mode"
PowerSave
echo "activate startDriver sht3x"
startDriver SHT3X
echo "Clearing Status as after reboot alert trigger is passed to 1"
SHT_ClearStatus
echo "Setting Alert parameter"
SHT_SetAlert 22 16 20 90
delay_s 1
echo "activate periodical measurement"
SHT_LaunchPer 0x23 0x22
delay_s 1
:loop_mes
SHT_MeasurePer
echo "keep up for 2 min"
delay_s 120
echo "DeepSleep with pin detection"
PinDeepSleep
goto loop_mes
Cool? Ranking DIY