I can make some wild guesses, but can't give you a solution. - The 7.3mhz crystal has a precision of 50ppm. The beaconing rate of FTSP is 10 seconds by default (can be set with PFLAGS+=-DTIMESYNC_RATE=<value> in the Makefile), which can result in an 500 us error per hop. However, FTSP's linear regression should take care of this. Also, 500 us is really the worst case scenario. You can try decreasing TIMESYNC_RATE and see how the results change.
- I am not sure if the packet-level time synchronization implementation of the IRIS is calibrated. There's a chance that it's not, which can result in a constant one-hop synchronization error. Miklos could clarify this. Janos On Thu, Oct 21, 2010 at 11:17 AM, Sinan Yildirim <[email protected]> wrote: > Hi Janos, > > I have done the modifications as you have said and also used the NoSleepC > component of your implementation in tinyos-2.x-contrib repository. But I > don't get tight skew values on a line of 5 iris sensor nodes. > > Here are the results after a 15 minute run: > > 1287678021203: [nodeid=0x1] [clock=0x1f3fc724] > 1287678021250: [nodeid=0x2] [clock=0x1f3fc76a] > 1287678021294: [nodeid=0x3] [clock=0x1f3fc75d] > 1287678021350: [nodeid=0x4] [clock=0x1f3fc6ae] > 1287678021398: [nodeid=0x5] [clock=0x1f3fc47d] > > Why am I measuring such big clock skew in this small network?? Any > suggestions? > > 2010/10/18 Janos Sallai <[email protected]> >> >> Sinan, >> >> It's not there, but it's not terribly complicated to accomplish. Just >> take a look at TimeSyncC and TimeSync32kC, and based on those, come up >> with your TimeSyncMicroC. As far as I can tell, this is the only file >> you'll need to cook for yourself, you don't need to touch anything >> else. >> >> A couple of notes: >> - On the iris, the interface provided by TimeSyncMessageC that gives >> you microsecond precision packet-level timesync is called >> TimeSyncAMSendRadio. >> - You can get microsecond-precision local time from LocalTimeMicroC, >> however, time will stop when the mote goes to sleep. You will need to >> keep the MCU awake all the time to get FTSP to work properly. There >> are a couple of different ways to do this, for example by having a >> component that provides McuPowerOverride and the lowestState function >> always returns ATM128_POWER_IDLE. You'll need to wire this component >> to McuSleepC. >> >> Janos >> >> On Sat, Oct 16, 2010 at 4:33 AM, Sinan Yildirim <[email protected]> >> wrote: >> > Hi all, >> > >> > I have a question on getting microsecond precision using FTSP on Iris >> > platform. Current version of tinyos 2.1.1 does not include components >> > and >> > modules in tos/lib/ftsp directory in order to achieve microsecond >> > precision. As far as I know, previous version of tinyos (1.x) had a >> > support >> > for getting microsecond precision using FTSP. >> > >> > Has anybody a modified version of the FTSP code for tinyos 2.1.1 in >> > order to >> > get microsecond precision global time value? Is it possible to share it >> > here? I want to test this code on a line topology of 20 Iris motes. >> > >> > Thanks for your helps, >> > >> > Sinan. >> > >> > >> > >> > _______________________________________________ >> > Tinyos-help mailing list >> > [email protected] >> > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help >> > > > _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
