Just a quick comment: Not sure why you wanted to cut is so close regarding the 2146 seconds; you could make this 2000 seconds and it will have no effect on anything.
Will > On Mar 31, 2017, at 6:30 PM, Vipul Rahane <[email protected]> wrote: > > Hello, > > Since a few days I have been working on adding cputime to sensor samples. > This would help in doing interpolation of data coming from different sensors > in a sensor network with sensors connected to different nodes. > > If multiple sensors are connected to the same device, this would help in > implementing sensor fusion algorithms. > > After going back and forth on various designs this is the one I have > finalized and implemented and works great IMO. > > Design: > > sensor timestamp update os_callout fires every 2146 seconds and avoids > multiple overflows of the os_timeval.tv_usec fields filling up global > os_timeval structure which gets updated every time a sensor is read. > > There is also a timestamp which is part of the sensor structure which gets > filled up every time a sensor is read. > > The seconds, micro seconds and cputime field gets updated accordingly. > > Following is an output of the timestamped samples: > >> sensor read color0 0x20000000 -n 10 -i 100 >> 864:ts: [ secs: 6 usecs: 777617 cputime: 7212189 ] >> 865:r = 101, g = 111, b = 118, c = 243, >> 866:lux = 21, cct = 6317K, ir = 43, >> 867:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176954736, max lux >> = 11029, >> >> 877:ts: [ secs: 6 usecs: 877631 cputime: 7312203 ] >> 878:r = 101, g = 111, b = 118, c = 243, >> 879:lux = 21, cct = 6317K, ir = 43, >> 880:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176954736, max lux >> = 11029, >> >> 889:ts: [ secs: 6 usecs: 977645 cputime: 7412217 ] >> 890:r = 101, g = 111, b = 118, c = 243, >> 891:lux = 21, cct = 6317K, ir = 43, >> 892:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176954736, max lux >> = 11029, >> >> 902:ts: [ secs: 7 usecs: 77659 cputime: 7512231 ] >> 903:r = 101, g = 111, b = 118, c = 243, >> 904:lux = 21, cct = 6317K, ir = 43, >> 905:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176954736, max lux >> = 11029, >> >> 915:ts: [ secs: 7 usecs: 177673 cputime: 7612245 ] >> 916:r = 101, g = 112, b = 118, c = 243, >> 917:lux = 21, cct = 6337K, ir = 44, >> 918:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.181069952, max lux >> = 11029, >> >> 927:ts: [ secs: 7 usecs: 277687 cputime: 7712259 ] >> 928:r = 101, g = 112, b = 118, c = 243, >> 929:lux = 21, cct = 6337K, ir = 44, >> 930:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.181069952, max lux >> = 11029, >> >> 940:ts: [ secs: 7 usecs: 377701 cputime: 7812273 ] >> 941:r = 101, g = 111, b = 118, c = 243, >> 942:lux = 21, cct = 6317K, ir = 43, >> 943:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176954736, max lux >> = 11029, >> >> 953:ts: [ secs: 7 usecs: 477715 cputime: 7912287 ] >> 954:r = 101, g = 111, b = 118, c = 243, >> 955:lux = 21, cct = 6317K, ir = 43, >> 956:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176954736, max lux >> = 11029, >> >> 965:ts: [ secs: 7 usecs: 577729 cputime: 8012301 ] >> 966:r = 101, g = 112, b = 118, c = 244, >> 967:lux = 22, cct = 6317K, ir = 43, >> 968:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176229504, max lux >> = 11029, >> >> 978:ts: [ secs: 7 usecs: 677743 cputime: 8112315 ] >> 979:r = 101, g = 112, b = 118, c = 244, >> 980:lux = 22, cct = 6317K, ir = 43, >> 981:sat = 65535, sat75 = 65535, not saturated, cRatio = 0.176229504, max lux >> = 11029, > > > I have created a ticket to track this: > MYNEWT-703 <https://issues.apache.org/jira/browse/MYNEWT-703>SensorAPI: Add > cputime timestamps and timeofday to SensorAPI samples > > Suggestions are welcome. > > Regards, > Vipul Rahane
