Grace: Low-cost time-synchronized GPIO tracing for IoT testbeds
Artikel i vetenskaplig tidskrift, 2023
Testbeds have become a vital tool for evaluating and benchmarking applications and algorithms in the Internet of Things (IoT). IoT testbeds commonly consist of low-power IoT devices augmented with observer nodes providing control, debugging, logging, and often also power-profiling capabilities. Today, the research community operates numerous testbeds, sometimes with hundreds of IoT nodes, to allow for detailed and large-scale evaluation. Most testbeds, however, lack opportunities for tracing distributed program execution with high accuracy in time, for example, via minimally invasive, distributed GPIO tracing. And the ones that do, like Flocklab, are built from custom hardware, which is often too complex, inflexible, or expensive to use for other research groups. This paper closes this gap and introduces Grace, a low-cost, retrofittable, distributed, and time-synchronized GPIO tracing system built from off-the-shelf components, costing less than €20 per node. Grace extends observer nodes in a testbed with (1) time-synchronization via wireless sub-GHz transceivers and (2) logic analyzers for GPIO tracing and logging, enabling time-synchronized GPIO tracing at a frequency of up to 8 MHz. We deploy Grace in a testbed and evaluate it, showing that it achieves an average time synchronization error between nodes of 1.53 μs using a single time source, and 15.3 μs between nodes using different time sources, sufficient for most IoT applications.
Internet of Things
GPIO logging
Time-synchronization
IoT
GPIO tracing
Testbed