Am 16.04.2014 18:04, schrieb Ors Tiszay: > > I understand that search ROM is costly, but: > > 1. on reading uncached, owfs should, like you say, update its view on the > bus. Nevertheless, this does not seem to happen: > > # ls -la /mnt/owfs/uncached/1F.F96B08000000/aux/30.4CF9B8120000/ > > # ls -la /mnt/owfs/1F.F96B08000000/aux/30.4CF9B8120000/ > Both times you don't trigger Search ROM. That happens only when you read the /uncached directory itself, or /bus.N/uncached or .../aux/uncached.
When you address a single device, you have to check the "present" node in the uncached tree to trigger a bus action. Or read some node with is actually connected with IO. Reading the device directory does nothing. It doesn't even need the cache, as the layout of the device directory is built into the driver code. > > 2. Even the cache has a limited lifetime, as shown here: > The following is only if I remember correct, Paul can sure give a more exact answer: > Cache timing [default] (in seconds) > --timeout_volatile [ 15] Expiration time for changing data (e.g. > temperature) > That means: When not reading through the "uncached" tree, the minimum time between bus actions on a device is limited to 15s. If you poll more often, you get a cached value in the meantime. It *doesn't* mean the cached value will be deleted after 15s, it's still there after hours, just invalidated if the device isn't there anymore. Check the uncached "present" node of the device to tell the difference, or read the uncached directory node (costly) to sort out gone devices. > --timeout_stable [300] Expiration time for stable data (e.g. > temperature limit) > Same here, just tuned differently in the device handler. > --timeout_directory [ 60] Expiration of directory lists > This is the same for directory listings in / , bus.0/, .../aux, etc. When you poll these often, you get a cached value for 60s and only after 60s another poll will do a "Search ROM" and update the cache. (But only for the listing, not for the devices itself!) > --timeout_presence [120] Expiration of known 1-wire device location > This is when you poll the "present" node of a device node without prefixing it with "uncached". 120s of boredom while you get a "1" reading present before an actual check on the bus is made. If you don't read "present" or an IO on the device (e.g. only the device directory, see above), the device is considered still being there. IIRC. > > this DS2762, but this one seems to persist even across reboots, > This shouldn't be of course. OWFS had to include the actual device id to create such a behaviour, which isn't feasible. Please re-check this. Kind regards Jan ------------------------------------------------------------------------------ Learn Graph Databases - Download FREE O'Reilly Book "Graph Databases" is the definitive new guide to graph databases and their applications. Written by three acclaimed leaders in the field, this first edition is now available. Download your free book today! http://p.sf.net/sfu/NeoTech _______________________________________________ Owfs-developers mailing list Owfs-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/owfs-developers