Long 1-wire cable, how to?

Hi to all, I'm not sure where to post....

I need to read temperature, I'm doing it with DS18B20 sensor with a 10m (and more) cable.
I can't change cable (it was made for analog temperature sensor), I can't add power cable to use remote board and wifi or serial line. I have to use 3 wire cable already installed.
I can't read DS18B20 due I get wrong and random values, I supposed it was due to cable length/quality.
I solved using PIC microcontroller: one pin only for reading DATA line, second pin driving an external NPN working as open collector pulling up DATA line through 1k resistor powered at 5V.
Now I would like to read 3 DS18B20 but without using 6 pins....
Any suggestion?
Thanks.

https://www.maximintegrated.com/en/design/technical-documents/tutorials/1/148.html

Each DS18B20 has an address. Put them all in parallel on the same 3 wires.

The strong pull-up you are using should solve the problem for such a short network. @johnwasser has the answer for saving pins.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.