Time synchronization is a critical component in
many wireless sensor network applications. Although several
synchronization protocols have recently been developed, they tend
to break down when implemented on networks of heterogeneous
devices. Such networks consist of devices with different hardware
components and operating systems, and communicate over
different network media. A protocol that provides accurate synchronization
in one part of the network may perform undesirably
in another part. We present a methodology for
time synchronization in heterogeneous sensor networks (HSNs).
This includes synchronization between mote and PC networks,
a communication pathway that is often used in sensor networks,
but has received little attention with respect to time synchronization.
In addition, we evaluate clock skew compensation methods
including linear regression, exponential averaging, and phaselocked
loops. Our HSN synchronization methodology has been
implemented as a network service and tested on an experimental
testbed. We show that a 6-hop heterogeneous sensor network can
be synchronized with an accuracy on the order of microseconds.
The HSN Time Synchronization service is available for download.