1-Wire Pro? Can't read OneWire Sensors with Arduino through OneWire Hub.

Hi There :slight_smile:

I'm trying to find a solution for days now and I have googled and googled, but did not come up with anything.

My basic problem is, that I can't read OneWire sensors, which are behind two OneWire hubs.
Hubs like this (just MkII instead of MkIII): 1-Wire Hub III DC, zentrale Stromversorgung | 1-Wire Hub, 1-Wire Stromversorgung, 1-Wire Repeater | 1-Wire Smart Home und Gewerbe | Produkte | IoT und Smart Home ESERA
The manual of the hub mkIII basically says, that the internal data lines are just tied together. The manual of the mkII, which I have, is much shorter and does not mention this. But I believe it is true for it too, the resistance from data input to output and between the outputs shows bellow 10 Ohms when I measure on the output panel screws.

That is not all...
Well the strange thing is, that my arduino CAN read the sensors (from before and after the hubs), when another Busmaster is present before the hubs. The device is a linux based homeserver which uses an DS9490R USB Busmaster.

Weirdly enough, if I lower the refresh rate of the other Busmaster to once in 10 Minutes, the arduino gets nothing. If I have a refresh rate of 20 seconds, the arduino reads as it should (it has itself refresh rates of 30 seconds and 1 minute for some devices.

I have tried the arduino with and without pullup resistors (2kOhm, 4.7kOhm, 10kOhm).
Except for the case where the Arduino reads a single string without a hub, the 5V from the arduino is not connected, since the hubs provide the 5V power.

The input for the hubs is connected to GND and Data from the DS9490R. I also tried connecting 5V and GND from the input of the hubs, which doesn't change anything. Neither with our without Arduino.

I'm completely stuck.
The other Busmaster should not stay in the network. The arduino is supposed to replace it, because the linux based homeserver (EibPort) crashes OneWire every couple of days. Also, I think the other Busmaster really has nothing to do with it all. I just mention it here, because it might hint at whats the problem with the arduino and the hubs on their own.

If anyone outthere has an idea, I'm very grateful.
Thank you for your time, even reading this. I have such a headache now...

Raphael303:
I have tried the arduino with and without pullup resistors (2kOhm, 4.7kOhm, 10kOhm).
Except for the case where the Arduino reads a single string without a hub, the 5V from the arduino is not connected, since the hubs provide the 5V power.

Is the ground connected from the Arduino to the sensor? (All grounds should be connected together).
With the hub powered and the Arduino disconnected, do you measure a voltage, likely 5V, on the data pin? If yes, you probably don't need a pullup resistor. If no, you absolutely need the pull up.

A drawing would help a lot since I, and likely many others here have never heard of a one-wire hub. Just what are you trying to do?

(Of course the hub maker sells a DS18B20, temperature sensor for >$100).

Thank you!

Ground was of course connected.

I had two problems.

1: PullUp was to high. Data Line fell to 4.3V. 1kOhm from Hub Data to Hub 5V did the trick to get readings.
2: Forgot one line of code: sensors.requestTemperatures();

Without that line, the arduino would read temperatures ONLY if another Busmaster was present and did that for him....

scratching my head now...

So has your problem been solved?

Tom.. :slight_smile: