1.4 Beta
-
@ServiceXp
The node will be transferring celsius data until it manage to receive settings from controller (this is done in the background) by setup().
Attach your failing sensor to the computer. Upload sketch with debug enabled. And look at the Serial monitor. Restart a sensor a few times .Thanks, I'll do that when I get home later. Just so I'm clear..
To enable debugging: I Remove the "//" before the #define DEBUG ** in and ONLY in** the /libraries/MySensors/Config.h file ? Then upload the sketch again to the sensors? (I don't have to upload the gateway sketch also do I?)
-
Thanks, I'll do that when I get home later. Just so I'm clear..
To enable debugging: I Remove the "//" before the #define DEBUG ** in and ONLY in** the /libraries/MySensors/Config.h file ? Then upload the sketch again to the sensors? (I don't have to upload the gateway sketch also do I?)
-
I can only find MyConfig.h file, and DEBUG was already without the "//".
So I noticed something VERY strange. It seems when I have the sensors connected to the computer, they start reading in Fahrenheit, and once I pull the USB cable it reverts back to Celsius with-in 30-60 seconds..
-
Yep, I have no idea how to debug this. The debug window reads in Fahrenheit, (and in Vera), but 30-60 seconds after I disconnect the usb cable from my computer (at which point I can't use the serial com window) it reverts back to Celsius.
I've deleted one of the sensor nodes and child from Vera, cleared the eEPROM and re-install sketch and re-incuded back into Vera...
I just don't understand why it works while connected to my computer...
-
Yep, I have no idea how to debug this. The debug window reads in Fahrenheit, (and in Vera), but 30-60 seconds after I disconnect the usb cable from my computer (at which point I can't use the serial com window) it reverts back to Celsius.
I've deleted one of the sensor nodes and child from Vera, cleared the eEPROM and re-install sketch and re-incuded back into Vera...
I just don't understand why it works while connected to my computer...
-
Do you think I can rule out my sensor hardware as it works with 1.3? Is there any way I can determine if it's being written to eEPROM while connected to the computer and then after it's disconnected (to see if it's getting overwritten)?
-
Do you think I can rule out my sensor hardware as it works with 1.3? Is there any way I can determine if it's being written to eEPROM while connected to the computer and then after it's disconnected (to see if it's getting overwritten)?
-
@ServiceXp
Do you call process() in loop()?
But, really.. Don't put too much effort into this. Just hardcode sensor to send fahrenheit until conversion is done by controller plugin.
@hek
I'm using the boiler plate sketch provided in the 1.4b1 files. The only modifications I've done is add battery code. (Copy and Paste).How to I hard code sensor to send in Fahrenheit?
Sorry you have to hold my hand through this, I'm very new at this.....
-
@hek
I'm using the boiler plate sketch provided in the 1.4b1 files. The only modifications I've done is add battery code. (Copy and Paste).How to I hard code sensor to send in Fahrenheit?
Sorry you have to hold my hand through this, I'm very new at this.....
@ServiceXp
Change
float temperature = static_cast<float>(static_cast<int>((gw.getConfig().isMetric?sensors.getTempCByIndex(i):sensors.getTempFByIndex(i)) * 10.)) / 10.;To
float temperature = static_cast<float>(static_cast<int>((sensors.getTempFByIndex(i)) * 10.)) / 10.;But I still wonder what goes wrong...
-
@ServiceXp
Change
float temperature = static_cast<float>(static_cast<int>((gw.getConfig().isMetric?sensors.getTempCByIndex(i):sensors.getTempFByIndex(i)) * 10.)) / 10.;To
float temperature = static_cast<float>(static_cast<int>((sensors.getTempFByIndex(i)) * 10.)) / 10.;But I still wonder what goes wrong...
-
Not very nice but I think this will work..
//float temperature = dht.getTemperature(); float temperature = dht.getTemperature()*9/5 + 32; if (isnan(temperature)) { Serial.println("Failed reading temperature from DHT"); } else if (temperature != lastTemp) { lastTemp = temperature; if (!metric) { temperature = dht.getTemperature()*9/5 + 32; //dht.toFahrenheit(temperature); }