On 12/11/06, Ben Griffith <[EMAIL PROTECTED]> wrote:

Hi,

There was some talk about simultaneous a while back, and I'm wondering if
I could benefit from using it.  I'm using MisterHouse, which is basically a
big perl loop.  I use owperl to read a different temperature sensor every 15
seconds.  There is, of course, a short pause when reading a sensor.  Could I
use simultaneous to reduce the number of pauses, and would the pauses I'd
still see be of the same duration or longer than what I'm seeing while
reading one sensor at a time?  How would I use owperl with the simultaneous
feature.  All of the examples I saw were from the command line.


Just call the simultaneous conversion at the start of the loop. All the
values (except perhaps the first) will be waiting for you.
OW::put("/simultaneous",1) ;

Secondly, but with essentially the same goal...
Would it be possible to load the cache prior to MisterHouse requesting the
temperature?  So MH would write to something like 10.2342BE45/pre-read
which would cause owfs to read the temperature into the cache.  Then a
second or two later MH would read the temperature as normal, but there would
be no delay because the temperature would already be loaded in the cache.

Shouldn't be needed if "simultaneous" is used.

I know that the delay is due to the A/D conversion on the chip.  During that
conversion, can other 1wire operations be going on?  So, could you send the
command for the conversion, then go poll a few 1wire switches, then come
back and read the converted temperature?  I know owfs can't do this, but I
just wondered if the 1wire protocol allows it.

owfs can certainly do this (if powered rather than parasytic). You need a
multithreaded application to take advantage of it, however.


I realize I could have an external (to MH) process reading temperatures.
Since I do have some switches that I'm polling I think I would get no
benefit because MH would still have to wait for the 1wire bus to be free.
The same would be true of my "pre-reading" idea above I suppose.

Perhaps the real solution would be to have two separate 1wire networks:
one for the slow temp sensors and another for more time-critical things.
Then read the temp sensors externally to MH and access everything else
internally.

Possible. Use "simultaneous" instead.


Thoughts on my ramblings?

-Ben

Not rambling. The design goal is to allow simple access to the 1-wire bus.
Elaborate timing should be done with a multithreaded application. The
"simultaneous" function should solve all your problems.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Owfs-developers mailing list
Owfs-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/owfs-developers

Reply via email to