Skip to main content
4 of 5
edited title
tlfong01
  • 4.8k
  • 3
  • 11
  • 24

Rpi3B+ Python I2C to 1-Wire Bridge DS2482 Detecting 10+ DS18B20 Temperature Sensors Problem

I'm about to build a heating control with DS18B20 1Wire-sensors and the Raspberry Pi 3 Model B+. For the 1Wire-interface I'm using the DS2482-800 multi-channel busmaster (more precisely this pre-assembled board: http://www.sheepwalkelectronics.co.uk/product_info.php?products_id=67).

The sensors are read over OWFS and a Node.js-script (using the owfs-module). I'm using Node.js as the Raspberry is hosting an express-webserver with all the current temperature-values.

Overall this works great, at least for the 11 sensors, which are connected to the first 4 channels of the DS2482. But as soon as I try to connect 2 additional sensors to the 5th channel, these sensors are NOT read by OWFS. Why that?

Moreover I noticed, that the virtual /mnt/1wire directory only shows 9 sensors on the first 2 channels, although I'm able to read 11 sensors (on 4 channels) with the Node.js-script without problems. How's that possible???

/mnt/1wire directory shows 9 sensors but with the Node.js-script I'm able to read 11

For test purposes I tried to connect the 2 "new" sensors to one of the first 4 channels -> reading them works perfectly fine, so no issues with the sensors.
Because of that, I think there's a problem with my configuration of OWFS.
My owfs.conf file looks like this:

# Sample configuration file for the OWFS suite for Debian GNU/Linux.
#
#
# This is the main OWFS configuration file. You should read the
# owfs.conf(5) manual page in order to understand the options listed
# here.

######################## SOURCES ########################
#
# With this setup, any client (but owserver) uses owserver on the
# local machine...
! server: server = localhost:4304
#
# ...and owserver uses the real hardware, by default fake devices
# This part must be changed on real installation
# server: FAKE = DS18S20,DS2405
#
# USB device: DS9490
#server: usb = all

server: device = /dev/i2c-1

# Serial port: DS9097
#server: device = /dev/ttyS1
#
# owserver tcp address
#server: server = 192.168.10.1:3131
#
# random simulated device
#server: FAKE = DS18S20,DS2405

######################### OWFS ##########################
#
mountpoint = /mnt/1wire
allow_other
#
####################### OWHTTPD #########################

!http: port = 2121

####################### OWFTPD ##########################

ftp: port = 2120

####################### OWSERVER ########################

server: port = 4304

I really appreciate your support, as I couldn't find anything helpful via Google and I'm preety stumped right now...

Thanks in advance