... actually I checked my current code and I saw, that I do not read /latesttemp, but read from /uncached/id/temperature so reading from /uncached does not trigger a new conversion. Only when you read a second time without triggering /simultaneous I also saw that I increased the wait after issuing /simulataneous command to 2 seconds, so I must have had issues at the time...
On 05.08.20 09:23, Martin Patzak wrote: > Hi Mick, > > by reading the /uncached value, you are causing a new conversion. > Read only /latesttemp and it should work fine. > > here is my test program, when I first tested simultaneous and pyownet: > >> import time >> from pyownet import protocol >> >> op = protocol.proxy("razmaban",port=4304) >> error = 0 >> error_old = None >> >> >> while True: >> >> op.write('/simultaneous/temperature', '1') >> >> time.sleep(1) # give the sensors time to convert their temps >> >> print '...' >> >> sensed = op.read('/28.676A20060000/latesttemp') >> print sensed >> >> sensed = op.read('/28.DD5915020000/latesttemp') >> print sensed > > > Marty > > On 05.08.20 00:39, Mick Sulley wrote: >> Running v3.2p3 on Raspberry Pi, I have set up some DS18B20 sensors >> on a test system, all of them are powered, but simultaneous does not >> seem to be working >> >> The code is below, when I run it the first loop takes 16 seconds then >> it loops at 3 seconds for a while, then a 16 second etc. so it looks >> like it does slow individual conversions, then uses cached values >> until they expire, then another slow individual conversion, etc. >> Have I got something wrong here? >> >> Thanks >> >> Mick >> >> #!/usr/bin/python3 >> >> # sensor_read.py >> >> import pyownet >> import time >> >> def main(): >> owp = pyownet.protocol.proxy() >> while True: >> start = time.time() >> owp.write('/simultaneous/temperature', b'1') >> time.sleep(1) >> print('start of sensor_read.py') >> sen_lst = ['Solar_Pnl_1A', 'Solar_Pnl_2A','Solar_Pnl_1B', >> 'Pool_Sol_X', 'Pool_CH_X', 'DHW_Mid_Top', 'DHW_Mid_Btm', >> 'DHW_Top','Temp5', 'Temp19', 'Temp20','Temp21', 'Temp22', 'Temp23', >> 'Temp25', 'Temp26', 'Temp27', 'Temp29', 'Temp30'] >> prop_lst = ['/type', '/power', '/latesttemp'] >> for p in prop_lst: >> print('%s ' %p, end = '') >> print('') >> for sen in sen_lst: >> print('\n%s ' %sen, end = '') >> for prop in prop_lst: >> try: >> print('%s ' %(owp.read('/uncached/' + sen + >> prop).decode()), end = '') >> except: >> print('failed! ', end = '') >> endt = time.time() - start >> print('\nTime = %f' %endt) >> >> if __name__ == "__main__": >> main() >> >> >> >> _______________________________________________ >> 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
_______________________________________________ Owfs-developers mailing list Owfs-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/owfs-developers