Am 15.02.2017 um 08:25 schrieb Sven Giermann: > > I have several temperature sensors and 1 DS2423 counter in one room. All > are connected with a Cat.5 network cable (about 30 meters) in a single bus > that ends in another room with a small embedded Debian ARM (armel) server > that runs OWFS 2.8p15-1. > Please update to 3.1p5. No one wants to hunt bugs fixed for years.
> Everything fine up to here. Let's call this branch "A". > > I then started to connect some software programmed ATTiny85 custom 1-wire > slaves, drawing another branch (branch "B") from my server. That way, the > first star-alike topology was built, currently a single bus, but with the > master in the middle. > This also worked for the first 2 devices, about 7 meters distance to the > master (remember the additional 30 m to the other sensors). I used simple > electric cable (NYM-J 3x1.5mm²) for this second branch, because I needed > the third wire for some higher currents. > I would suspect the ATtiny slaves are a more picky about the timing then the Dallas/Maxim ones. > Well... some months later I added 2 more custom slaves on a third branch > ("C"), having a typical star topology now with the master in the middle. > Again, those are connected with NYM-J as well, with about 4 meters distance > and..... yes, it worked! > > My problems started when I expanded the last branch by another 4 meters > trying to connect a third slave on that branch! > Suddenly all 3 slaves on that branch disappeared from the bus. > Yes. That could happen and it is likely to happen. The star topology is bad. > I could not get them back, whatever I tried: removing the 4 meters > extension, disconnecting the other 2 branches, only connect a single slave > - nothing helped. > (But they showed up and worked for weeks before I added the extension!) > > I then finished my setup first - having a total of 3 slaves on branch "B" > and 7 slaves on branch "C". Branch "B" has a total length of 12 meters, > branch "C" about 30 meters: > > Master (DS9490R) > |--()--()--...--() "A", 30 meters Cat.5, 8 slaves > |--()--()--() "B", 12 meters NYM-J1.5, 3 slaves > |--()--()--...--() "C", 30 meters NYM-J1.5, 7 slaves > > Still, only all slaves of branch "A" and the the first two of branch "B" > show up on the bus. For testing purpose I went and connected my laptop > running a virtualized Debian installation and OWFS to that bus - and: ALL > devices showed up and responded to read and write commands. It took some > seconds and maybe 3-4 runs of 'owdir /uncached' to see all devices, but > finally it worked. > No, it didn't. What you have is an extremely brittle setup which may or may not work, depending on moon phase and other non-insightful parameters. This is impossible to debug. > > Now... does anyone have any advice what to change/try next? > Should I try to compile OWFS 3.1? > You should install the Rasbian package from the testing repository. Testing(Stretch) has owfs-3.1p5. You can use the owfs packages from the Raspbian testing repository. Edit (or create) your /etc/apt/preferences to contain: -------------------------------------------------------------------------- Package: * Pin: release o=Raspbian,a=stable Pin-Priority: 500 Package: * Pin: release o=Raspbian,a=testing Pin-Priority: 300 -------------------------------------------------------------------------- This is important so you keep stable (Jessie) for all packages but the ones explicitly taken from testing (Stretch). Then, add a line -------------------------------------------------------------------------- deb http://mirrordirector.raspbian.org/raspbian/ testing main contrib non-free rpi -------------------------------------------------------------------------- to your /etc/apt/sources.list to get access to the Raspbian testing repository. Do an $ sudo apt-get update to read the package metadata, then check $ sudo apt-cache policy whether the testing repo is there with priority 300. Then $ sudo apt-get update -t testing owserver ow-shell That should install all you need, including the startup files and systemd units. Note you have to edit /etc/owfs.conf again to contain (this and only this) -------------------------------------------------------------------------- !server: server = localhost:4304 server: w1 -------------------------------------------------------------------------- Restart the owserver service after that. > Is there any configuration (defines?) that can cause different timing on > the bus - making it work on i386 and fail on armel? > Do you use the DS9490 on both? > Any advise to change the bus? Different cable? Different master (I have > another LinkUSB)? > Again: I already disconnected branches "A" and "B" resulting in no slaves > at all - with a single bus/branch. > > Hope somebody can help me out... > First, get rid of the star topology. Make a lobe with the help of the additional wires in the Cat.5 cable. Replace the 12m NYM-J1.5 stub by another lobe cable with at least 4 wires. Connect your 30m NYM-J1.5 stub to the far end of that lobe. If you can't do that or don't want to do that, use multiple host adaptors or a host adaptor with built-in switch e.g. the DS2482-800. Or try to get two DS2409 switches. Kind regards Jan ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, SlashDot.org! http://sdm.link/slashdot _______________________________________________ Owfs-developers mailing list Owfs-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/owfs-developers