DS18B20 and 85° C temperature failures #5523
Replies: 1 comment
-
Posted at 2016-03-11 by Artyom Let's do it! I've just found arduino implementation you mentioned https://github.com/JChristensen/ds18b20/blob/master/ds18b20.cpp#L32-L63 Posted at 2016-03-11 by Artyom Hm, same code being invoked within callback works fine. Posted at 2016-03-14 by @gfwilliams Hi - the DS18B20 module was fixed a week or so go so you can use the callback Without the callback Espruino doesn't want to wait for the temperature reading (which can take almost a second!) so it returns the current value and kicks off a new reading. It should all be documented on the DS18B20 page: http://www.espruino.com/DS18B20 Posted at 2016-12-14 by LouisvanGeldrop I am using the WebIde for testing the example running at an Wemos D1 Wifi Uno and Espruino v1.89. After 53 getTemp() the board reloads. Also the boards reloads immediately when I enter: |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Posted at 2016-01-06 by heimi
I'd like to point out, that if you plan to use a DS18B20 (sic, might as well be true for a 1820 or 18S20) in a real two wire mode with a parasite power pullup, than the module won't work. You'll end up reading the power up values for the temperature bytes (0x50, 0x05) instead of real values. By looking in the Arduino code I found that the code simply waits if a parasite mode is detected. This has to be implemented. The time to wait depends on the resolution, so please refer to the data sheet.
As a workaround you may just want to delay up to one second (750ms is max conversion time if 12 bit resolution is used), after the CONVERT_T (0x44) command was issued. This usecase is also documented in the date sheet (convert t command)
Beta Was this translation helpful? Give feedback.
All reactions