Hi Paul,

Thanks for the detailed response.

Yes, the concern is power draw. We find that converting groups of 
sensors simultaneously by ROM actually scales quite well. Using the TMEX 
API, you can easily issue a Skip ROM (xCC) followed by a Convert Temp 
(x44) to convert all devices simultaneously, but in the case that the 
user wants to manage both how many devices are converted (and which are 
currently being converted), it is nice to be able to send a list. Here 
is some raw data in a plot here (sorry if this appears spammy): 
http://interfaceinnovations.org/onewireoptimization.html

In principle, I think you are right that threading is the way to go. 
I've not written code structured this way, so I'd have to learn myself 
how to. I assume you are describing a process where the calling code 
creates a thread for each owfs read operation, carries the reads out and 
returns them to the calling function (or puts them where they go).

Thanks,
Colin


On 7/11/2014 05:14, Paul Alfille wrote:
> Hi Colin,
>
> I wonder if OWFS can already do what you want. If not, I have some ideas.
>
> OWFS has a "simultaneous" command to trigger temperature conversion.
>
> 1. It works on all the sensors on a bus, using the trick that there is a
> command to select the single slave on a 1-slave bus (for efficiency) but
> that will actually select them all.
> 2. The sensors do need external power because temperature conversion is
> power hungry and running many simultaneously can tax the data bus,
> especially if other communication is being done.
> 3. OWFS remembers the time of the "simultaneous" and will wait "long
> enough" before returning a temperature reading when temperature reading
> is attempted. (A "blocking read" in other words).
> 4. Not all temperature sensors are involved. Many read temperature
> continuously (Like DS2438, and 3rd party sensors) and all this fuss is
> irrelevant.
>
> You wanted to specify a list of sensors to do "conversion" on, rather
> than all of them I guess. Is there a mix of passive and active sensors?
> Are you worried about the total power budget or self-heating?
>
> 1. The command will be slower that the current "simultaneous" since each
> sensor must be addressed independently.
> 2. I don't see an elegant way of implementing the interface to such a
> command.
>      A. We could have a separate "start" temperature reading. We'd need
> a separate timer for each and still "block" if read too early (or
> restart if read too late).
>      B. We could write a list of slave addresses to a "convert" file,
> then read the sorted results from another linked file, but this really
> bends our syntax. (Variable-length fields). Doable, though.
>
> Have you considered another approach? Use the threaded nature of OWFS
> and just issue reads for each of your sensors in separate threads. Each
> will return when done. They can run concurrently if the sensor is powered.
>
> Paul Alfille
>
>
>
> On Thu, Jul 10, 2014 at 2:09 PM, Colin Reese <colin.re...@gmail.com
> <mailto:colin.re...@gmail.com>> wrote:
>
>     Hello,
>
>     After talking with iButtonLink, it was brought to my attention that
>     without
>     additional power, it is possible to have unsuccessful simultaneous
>     read if
>     too many sensors are on the network, due to current draw during the
>     conversion.
>
>     Using the TMEX API, I can perform a match ROM and then issue a
>     conversion
>     command, and then come back later to read the converted value. This
>     way I
>     can issue conversion commands for, say, 20 ROMs without waiting for
>     conversion more than once.
>
>     Is there an analogous feature in owfs, e.g. a 'simultaneous' with a
>     specified group of ROMs?
>
>     Thanks,
>     Colin
>
>     
> ------------------------------------------------------------------------------
>     Open source business process management suite built on Java and Eclipse
>     Turn processes into business applications with Bonita BPM Community
>     Edition
>     Quickly connect people, data, and systems into organized workflows
>     Winner of BOSSIE, CODIE, OW2 and Gartner awards
>     http://p.sf.net/sfu/Bonitasoft
>     _______________________________________________
>     Owfs-developers mailing list
>     Owfs-developers@lists.sourceforge.net
>     <mailto:Owfs-developers@lists.sourceforge.net>
>     https://lists.sourceforge.net/lists/listinfo/owfs-developers
>
>
>
>
> ------------------------------------------------------------------------------
> Open source business process management suite built on Java and Eclipse
> Turn processes into business applications with Bonita BPM Community Edition
> Quickly connect people, data, and systems into organized workflows
> Winner of BOSSIE, CODIE, OW2 and Gartner awards
> http://p.sf.net/sfu/Bonitasoft
>
>
>
> _______________________________________________
> Owfs-developers mailing list
> Owfs-developers@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/owfs-developers
>

------------------------------------------------------------------------------
_______________________________________________
Owfs-developers mailing list
Owfs-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/owfs-developers

Reply via email to