On Thursday, October 08, 2015 at 5:09 AM, Jan Kandziora j...@gmx.de wrote: > Really JUMP? If they CRAWL back, I would check if the sensor is heated > through its DQ wire. Maybe the wire is for some mystical reason a bit > warmer in one setup than the other. I modified my Python to read the OWFS "files" more often.
I hope this is interesting enough to justify its length... I believe, and see on my scope, that OWFS only reads at 15-second intervals. But in the new logs I see changes that persist for less than two seconds. The occasional error readings also persist for less than two seconds: --- 2015-10-08 15:39:23.995754 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d8 01 4b 46 7f ff 08 10 6b : crc=6b YES d8 01 4b 46 7f ff 08 10 6b t=29500 2015-10-08 15:39:25.580574 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 ff ff ff ff ff ff ff ff ff : crc=c9 NO d8 01 4b 46 7f ff 08 10 6b t=-62 2015-10-08 15:39:27.170305 cf 01 4b 46 7f ff 01 10 5d : crc=5d YES cf 01 4b 46 7f ff 01 10 5d t=28937 d8 01 4b 46 7f ff 08 10 6b : crc=6b YES d8 01 4b 46 7f ff 08 10 6b t=29500 --- The "-62" errors always look like that - one line of all "ff" with a bad CRC, followed by the correct bits with a bad temperature. I wonder why OWFS doesn't retain the previous cached value when it sees a bad CRC? Why does it report the bits twice? They are different, so I guess they must be from different reads? Same error, other sensor: --- 2015-10-08 15:40:05.318827 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 2015-10-08 15:40:06.903952 ff ff ff ff ff ff ff ff ff : crc=c9 NO d0 01 4b 46 7f ff 10 10 db t=-62 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 2015-10-08 15:40:08.488068 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 --- And now, what I started out to capture - unclipping the "Make 1K" resistor: --- 2015-10-08 15:40:56.149173 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 <-- Stable at these temperatures d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 2015-10-08 15:40:57.755492 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 2b 02 4b 46 7f ff 05 10 47 : crc=47 YES 2b 02 4b 46 7f ff 05 10 47 t=34687 <-- Changed one sensor but not the other! 2015-10-08 15:40:59.358177 f0 01 4b 46 7f ff 10 10 73 : crc=73 YES f0 01 4b 46 7f ff 10 10 73 t=31000 31 02 4b 46 7f ff 0f 10 58 : crc=58 YES 31 02 4b 46 7f ff 0f 10 58 t=35062 <-- First reading was a bit lower, this one persists 2015-10-08 15:41:00.943024 f0 01 4b 46 7f ff 10 10 73 : crc=73 YES f0 01 4b 46 7f ff 10 10 73 t=31000 31 02 4b 46 7f ff 0f 10 58 : crc=58 YES 31 02 4b 46 7f ff 0f 10 58 t=35062 <-- Stable at these temperatures --- And returning to 1K: --- 2015-10-08 15:41:21.601210 ef 01 4b 46 7f ff 01 10 f5 : crc=f5 YES ef 01 4b 46 7f ff 01 10 f5 t=30937 <-- Stable at these temperatures 31 02 4b 46 7f ff 0f 10 58 : crc=58 YES 31 02 4b 46 7f ff 0f 10 58 t=35062 2015-10-08 15:41:23.196921 f0 01 4b 46 7f ff 10 10 73 : crc=73 YES f0 01 4b 46 7f ff 10 10 73 t=31000 f2 01 4b 46 7f ff 0e 10 c5 : crc=c5 YES f2 01 4b 46 7f ff 0e 10 c5 t=31125 <-- Again, one sensor but not the other! 2015-10-08 15:41:24.779037 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 <-- Again, first reading was partway to this target... 2015-10-08 15:41:26.361400 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 <-- Stable at these temperatures --- Caught an 85C reading, again for less than two seconds: --- 2015-10-08 15:41:40.644804 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 2015-10-08 15:41:42.228183 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 50 05 4b 46 7f ff 0c 10 1c : crc=1c YES 50 05 4b 46 7f ff 0c 10 1c t=85000 2015-10-08 15:41:43.812183 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 --- Another unclip of the resistor: --- 2015-10-08 15:41:51.732068 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 2015-10-08 15:41:53.356834 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 ff ff ff ff ff ff ff ff ff : crc=c9 NO d9 01 4b 46 7f ff 07 10 30 t=-62 <-- happened to get an error... 2015-10-08 15:41:54.943182 d5 01 4b 46 7f ff 0b 10 42 : crc=42 YES d5 01 4b 46 7f ff 0b 10 42 t=29312 <-- one sensor partway to new value 31 02 4b 46 7f ff 0f 10 58 : crc=58 YES 31 02 4b 46 7f ff 0f 10 58 t=35062 <-- other sensor within one step 2015-10-08 15:41:56.527608 f0 01 4b 46 7f ff 10 10 73 : crc=73 YES f0 01 4b 46 7f ff 10 10 73 t=31000 32 02 4b 46 7f ff 0e 10 59 : crc=59 YES 32 02 4b 46 7f ff 0e 10 59 t=35125 2015-10-08 15:41:58.113728 f0 01 4b 46 7f ff 10 10 73 : crc=73 YES f0 01 4b 46 7f ff 10 10 73 t=31000 31 02 4b 46 7f ff 0f 10 58 : crc=58 YES 31 02 4b 46 7f ff 0f 10 58 t=35062 <-- Stable at these temperatures --- Back to 1K: --- 2015-10-08 15:42:13.976775 ef 01 4b 46 7f ff 01 10 f5 : crc=f5 YES ef 01 4b 46 7f ff 01 10 f5 t=30937 <-- Stable at these temperatures 30 02 4b 46 7f ff 10 10 ef : crc=ef YES 30 02 4b 46 7f ff 10 10 ef t=35000 2015-10-08 15:42:15.562384 50 05 4b 46 7f ff 0c 10 1c : crc=1c YES 50 05 4b 46 7f ff 0c 10 1c t=85000 <-- 85C errors actually have 85C bits f8 01 4b 46 7f ff 08 10 c3 : crc=c3 YES f8 01 4b 46 7f ff 08 10 c3 t=31500 <-- Partway again 2015-10-08 15:42:17.150184 d0 01 4b 46 7f ff 10 10 db : crc=db YES d0 01 4b 46 7f ff 10 10 db t=29000 d9 01 4b 46 7f ff 07 10 30 : crc=30 YES d9 01 4b 46 7f ff 07 10 30 t=29562 <-- Stable at these temperatures --- I'm further mystified... How can the files change so frequently in-between actual reads? In case this might depend on my config, here's what I've found. The first one is the one I've edited, and since I'm getting readings from w1, it must be the active one: --- ubuntu@arm:~/Lpkg$ sudo find / -iname '*owfs.conf' /etc/owfs.conf /var/lib/ucf/cache/:etc:owfs.conf /usr/share/owfs/owfs.conf ubuntu@arm:~/Lpkg$ cat /etc/owfs.conf # 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 # LA140622 commented # # USB device: DS9490 #server: usb = all server: w1 # LA140622 added # # 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 = localhost:4304 ubuntu@arm:~/Lpkg$ --- The other two are identical, the original install version without my edits: === Compare: (<)C:\Users\Loren\Documents\1-Wire\etc_owfs_conf.txt (1201 bytes) with: (>)C:\Users\Loren\Documents\1-Wire\etc_owfs_conf (ucf cache).txt (1147 bytes) 16c16 < # server: FAKE = DS18S20,DS2405 # LA140622 commented --- > server: FAKE = DS18S20,DS2405 20d20 < server: w1 # LA140622 added === I don't see any clues there... As for the startup command line, I have never understood how that works. Instead of any of the forms shown in the OWFS documentation, I type: --> As root: echo w1 >/sys/devices/bone_capemgr.9/slots And everything starts running... ubuntu@arm:~/Lpkg$ dmesg | grep "w1" [ 163.085350] bone-capemgr bone_capemgr.9: part_number 'w1', version 'N/A' [ 163.085456] bone-capemgr bone_capemgr.9: slot #7: 'Override Board Name,00A0,Override Manuf,w1' [ 163.086507] bone-capemgr bone_capemgr.9: slot #7: Requesting part number/version based 'w1-00A0.dtbo [ 163.086532] bone-capemgr bone_capemgr.9: slot #7: Requesting firmware 'w1-00A0.dtbo' for board-name 'Override Board Name', version '00A0' [ 163.088181] bone-capemgr bone_capemgr.9: slot #7: dtbo 'w1-00A0.dtbo' loaded; converting to live tree Later at the end of the boot process: --- * Starting regular background program processing daemon [ OK ] * Stopping save kernel messages [ OK ] * CPU0... [ OK ] * Starting 1-Wire FTP server owftpd [ OK ] * Starting 1-Wire HTTP Daemon owhttpd [ OK ] * Starting 1-Wire TCP Server owserver [ OK ] --- I've never found what triggers those! Whatever it is must have been automatically installed by apt-get. As soon as I enable w1, it just works. Would love to hear your thoughts on any of this! Loren | Loren Amelang | lo...@pacific.net | ------------------------------------------------------------------------------ _______________________________________________ Owfs-developers mailing list Owfs-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/owfs-developers