Chris
Reviewed in the United States on February 1, 2025
These are a good value for the price, but there's a catch: they're slightly out of spec. There's a roughly 1ms delay between initiating conversion, and the sensor transmitting 0 on the data line to indicate conversion is in progress. This is supposed to happen instantly.Why does this matter? If you're using the Arduino DallasTemperature library, with WaitForConversion and CheckForConversion both set to true, requestTemperatures will return instantly, instead of after conversion is complete. If you're calling getTempC or similar right after, the temperature you get will be whatever was already stored in the scratchpad and might be stale, especially if this is a sensor that is polled infrequently. The first reading after powering on may be nonsensical.Why does this happen? With WaitForConversion and CheckForConversion both set to true, requestTemperatures shouldn't return until the current temperature has been read, converted, and stored in the sensor's scratchpad memory. It accomplishes this by initiating the conversion, then immediately polling the sensor repeatedly to see if conversion is complete. Because a 0 is supposed to be transmitted immediately, the library doesn't expect to see a 1 until conversion is done. Unfortunately, it sees a 1 transmitted right away thanks to the delay, and as a result the function returns instantly, while conversion is still in progress. Because the scratchpad isn't updated until conversion is complete, if getTempC is called while conversion is still in progress, the value read will be stale, or worse, invalid.Fortunately, this is pretty easy to work around. Set CheckForConversion to false, and requestTemperatures will wait a fixed period before returning, instead of trying to poll the sensor. Alternatively, you could set WaitForConversion to false and manage the delay yourself using the various asynchronous techniques illustrated in the library's examples.I should also clarify that this is using version 4.0.3 of the DallasTemperature library. Future updates may or may not improve how the library handles out-of-spec sensors.Other than that, I have no complaints. They were packaged nicely. All eight sensors are functional. They agree with one another closely in terms of temperature. They read about 0.2C lower than a "genuine" DS18B20 at room temperature, which is well within spec.
Jim Wings
Reviewed in the United States on September 15, 2024
I monitor temperatures on various things with my Linux system, and these "1 wire" chips work great with the "digitemp" software. I monitor pond temp (to turn on heater), freezer temp (verify freezer is working), furnace temp (to see if a A/C recharge is needed), garage temp (garage heater working), etc with these simple devices. You just need 2 wires (I use Cat 5E) in a "star" topology to make these work.