I have a string of 12 DS18B20s connected with two of these. When I hook this up to my emonPi it returns 12 temperatures as expected. So far, so good.
When I try to connect them up to my emonTH2 using the multiple_ds18b20_external sketch from here, things don’t go so well. Most of the temperatures come back as 85 degrees, while a couple come back as 0. I gather that 85 degrees is what you get when you initialise a DS18B20 but haven’t told it to read a temperature.
I’m going to check the cabling between the emonTH2 and the breakout block, but is there anything inherently different about the connectivity on the two devices that could account for this?
One thing is that the emonTH2 is battery powered (for now), while the emonPi is mains powered. Could there be something there?
Here’s what comes back on the serial monitor. Note that the pulse count at the end is consistently garbled when the DS18B20s are connected… When I power it up without the DS18B20s the pulse value is returned correctly.
temp:251,tempex:850,tempex:850,tempex:850,tempex:850,tempex:0,tempex:0,tempex:0,tempex:850,tempex:850,tempex:850,tempex:850,tempex:850,humidity:425,batt:22,pulÿÿÿÿÿþÿ
Thanks,
David
[edit] technically, the breakout blocks are from Sheepwalk Electronics and not from the shop here. In addition, I’ve wired the emonTH2 directly in to a 3rd breakout block rather than wiring the emonTH2 into an RJ45 plug and connecting that way.