Sensebender Micro
-
@mvader said:
question about the default sketch for this board.
if i read correctly// How many milli seconds between each measurement #define MEASURE_INTERVAL 60000 // How many milli seconds should we wait for OTA? #define OTA_WAIT_PERIOD 300 // FORCE_TRANSMIT_INTERVAL, this number of times of wakeup, the sensor is forced to report all values to the controller #define FORCE_TRANSMIT_INTERVAL 30 // When MEASURE_INTERVAL is 60000 and FORCE_TRANSMIT_INTERVAL is 30, we force a transmission every 30 minutes. // Between the forced transmissions a tranmission will only occur if the measured value differs from the previous measurement // HUMI_TRANSMIT_THRESHOLD tells how much the humidity should have changed since last time it was transmitted. Likewise with // TEMP_TRANSMIT_THRESHOLD for temperature threshold. #define HUMI_TRANSMIT_THRESHOLD 0.5 #define TEMP_TRANSMIT_THRESHOLD 0.5if temps don't change more than .5 i shouldn't see a transmit but once every 30 minutes
i have 2 running right now
and both send temp and humidity every 1-2 minutes and the numbers are the same or in some cases only different by .1
i have it set to .5 so the question is- why does it transmit every minutes when the temp and humidity are the same
- why is it transmitting even with as little as .1 change
1 board is running 1.2 and the other is running the 1.3 sketch from git
Battery however does transmit every 60 minutes as it's supposed to.,
thx
-
Have you tried to hook up a serial connection to your sensebender? It writes the difference from the last transmitted measurement, everytime a new measurement is taken (every minute).
@tbowmo said:
Have you tried to hook up a serial connection to your sensebender? It writes the difference from the last transmitted measurement, everytime a new measurement is taken (every minute).
so if i want it to transmit less frequently (save battery?) i would increase the measure interval. correct?
I have some situations where i want frequent measuring (1 minute), and some where 15 minutes or 30 minutes would do fine. -
Hello
I found an error in the sensebender micro sketch in the latest release.
The calculation of the temperature change is wrong.
float diffTemp = abs(lastTemperature - (isMetric ? data.celsiusHundredths : data.fahrenheitHundredths) / 100);needs to be replaced with
float diffTemp = abs(lastTemperature - (isMetric ? data.celsiusHundredths : data.fahrenheitHundredths) / 100.0);The division with 100 needs to be 100.0 otherwise the result will be an integer instead of a float value and the difference will be the decimal places of the last temperature.
There is an explanation to the problem further up in the thread:
@gloob said:
Hello
I found an error in the sensebender micro sketch in the latest release.
The calculation of the temperature change is wrong.
float diffTemp = abs(lastTemperature - (isMetric ? data.celsiusHundredths : data.fahrenheitHundredths) / 100);needs to be replaced with
float diffTemp = abs(lastTemperature - (isMetric ? data.celsiusHundredths : data.fahrenheitHundredths) / 100.0);The division with 100 needs to be 100.0 otherwise the result will be an integer instead of a float value and the difference will be the decimal places of the last temperature.
-
There is an explanation to the problem further up in the thread:
@gloob said:
Hello
I found an error in the sensebender micro sketch in the latest release.
The calculation of the temperature change is wrong.
float diffTemp = abs(lastTemperature - (isMetric ? data.celsiusHundredths : data.fahrenheitHundredths) / 100);needs to be replaced with
float diffTemp = abs(lastTemperature - (isMetric ? data.celsiusHundredths : data.fahrenheitHundredths) / 100.0);The division with 100 needs to be 100.0 otherwise the result will be an integer instead of a float value and the difference will be the decimal places of the last temperature.
-
@korttoma i did see that. but your saying that is what is causing it to transmit every 1 minute?
-
@hek I've soldered a second unit to compare, same error, I flashed back the sensebender version from the examples and on both I am stuck here: "Sensebender Micro FW 1.2radio init fail"
Gateway is 1.5 BTW, one radio is from itead the other not.


