Question
DS2482 I2C to 1-Wire module using python OWFS (One Wire File System) cannot detect all the connected DS18B20 temperature sensor devices. How to fix the problem?
Answer
Suggestions:
(1) Enable the DS2482's SPU (Strong Pull Up) MOSFET (Appendix G),
(2) Lower 1-Wire speed.
(3) Remove the two I2C pullups connected to the DS2482 module (Appendix D).
/ to continue, ...
Part 1
Configuring python owfs (Refs 29, 32)
Part 2 - Testing OWFS Server without any DS18B20 sensor connected.
Part 3 - Detecting One DS18B20 Temperature Sensor
Part 4 - Soldering second DS2482-100 chip to breakout board for testing.
Soldering the chip to the breakout board took me 7 minutes. The pins are 0.05" apart. So it is not that difficult to complete the soldering task. My trick is the following: (1) Separately tin only one pin and one pad, (2) Put the chip on top of breakout board and use the soldering tip to melt the only one pin to pad, with a couple of trial and errors to precisely position the chip. The duPoint male connector pin soldering job are easy. Final multi-meter open short testing is also straighforward.
Part 5 Testing two DS2482 and twoDS18B20 sensors
Reference - (37) Rpi 1-Wire Tutorial - Packt 2015
This tutorial by Packt is the most helpful one for newbies. Packet gives a good introduction on the general 1-Wire concepts and then use AB Electronics' DS2482-100 board as the example on setting up and testing the sensors. Unfortunately the illustration images are not readable, so I need to make guesses.
The testing procedure is a bit tricky, so I am making a summary of the steps below.
/ to continue, ...
References
(1) DS18B20 Temperature Sensor Setup and Programming Q&A
(2) Rpi4B buster I2C Speed Test 6.0 - tlfong01 2020mar04
(3) DS2482-100 1-Channel 1-Wire Master Datasheet - Maxim
(4) DS2482-800 8-Channel 1-Wire Master - Maxim
(5) AK-DS2482S-100 – 1-Channel 1-Wire Master Breakout Product Sheet - Artekit
(6) AK-DS2482S-100 – 1-Channel 1-Wire Master Breakout Schematic - Artekit
(7) AK-DS2482S-100 – 1-Channel 1-Wire Master Breakout User Manual - Artekit
(8) DS2482-800 8-Channel 1-Wire Master Module - SheepWalk
(9) OWFS 1-Wire File System - OWFS
(10) OWFS and OWHTTPD Project Docs - SourceForge
(11) How to enable DS2482 SPU - Ivan2 Artekit Product Comments 2018
(12) OWFS Node.js Client Library For 1-Wire Devices Using OwServer Protocol
(13) Application Note 3684 How to Use the DS2482 I2C 1-Wire Master - Maxim
(14) Kernel driver ds2482 Supported chips Maxim DS2482-100, Maxim DS2482-800
(15) Interface Driver for Maxim DS2482 1Wire-to-I2C bridge IC - Stefan Guenther
(16) OWFS Manual Page (I2C DS2482-100, DS2482-101 and DS2482-800)
(17) OWFS with i2c support on Raspberry Pi (English version)
(18) OW version 2.0p0RC-1.6
(19) Python OW Server Discussion
(20) 1 Wire with DS18S20 digital thermometer (Bash) - ABelectronis 02/02/2019
(21) DS2482-100 1-Wire to I2C host interface - ABelectronics
(22) OWFS with I2C support on Raspberry Pi (Python) - ABelectronics 2019mar09
(23) DS2482 Kernel driver for Maxim DS2482-100, Maxim DS2482-800
(24) DS2482 Kernal Driver - Stefan Guenther
(25) DS2482 Driver - torvalds
(26) Linux Kernel driver DS2482 for Maxim DS2482-100, Maxim DS2482-800
(27) Introduction to the 1-wire (w1) subsystem
(28) The Linux Kernel documentation 5.7.0-rc
(29) OWFS with I2C support on Raspberry Pi (for stretch) Tutorial - AB Electronics 2015
(30) OWFS with i2c support on Raspberry Pi - Wiki.m.nu
(31) OW (version 2.0p0RC-1.6)
(32) Rpi Python 1-Wire File System to read DS2482 I2C to 1-Wire bridge connected DS18B20 Temperature Sensors
(33) Kernel Driver DS2482 - Linux Kernel.Org
(34) How to build and use the kernel of the Rpi I2C to 1-Wire Bridge DS2482? - 2020
(35) How to use the DS2482 kernel module? - 2018
(36) Rpi Python 1-Wire File System to read DS2482 I2C to 1-Wire bridge connected DS18B20 Temperature Sensors (same as Ref 32, problem solved)
(37) Rpi 1-Wire Tutorial - Packt 2015
(38) RJ12 Plug and Cables - AB Electronics
(39) DS2482 Board Schematic - AB Electronics
(40) DS9503 ESD Protection Diode with Resistors - Maxim
Appendices
Appendix A - DS2482-800 Application Schematic
Appendix B - DS2482-800 Block Diagram
Appendix C - DS2482-x00 Modules
Appendix D - DS2482-100 Schematic and Block Diagram
Appendix E - Enabling SPU (Strong Pull Up) of the DS2482 1-Wire Host Module
Application Note 3684 How to Use the DS2482 I2C 1-Wire Master - Maxim
How to enable DS2482 SPU - Ivan2 Artekit Product Comments 2018
The SPU pad is for the strong pull-up, to be used with the PCTLZ pin to control the on-board MOSFET. Both APU (active pull-up) and SPU (strong pull-up) must be activated using the internal registers. - Ivan2
App Note 3684 describes how to use the internal registers to (1) enalbe SKU, (2) change 1-Wire speed. One easy way to access the DS2482 registers is to use python I2C functions - tlfong01
Appendix F - Testing DS2482-100 using Linux kernel drivers
I googled and found a couple of kernel drivers for DS2482-100/800. I found the following Linux driver has the most comprehensive documentation, and therefore should be most friendly to newbies like me.
(26) Linux Kernel driver DS2482 for Maxim DS2482-100, Maxim DS2482-800
(27) Introduction to the 1-wire (w1) subsystem
(28) The Linux Kernel documentation 5.7.0-rc
Appendix G - DS2482-100 Schematic