Rapid development is essential for IoT (Internet of Things) application developers to obtain first-mover advantages and reduce the development cost.

We present TinyLink (Home Page), a holistic system for rapid development of IoT applications. The key idea of TinyLink is to use a top-down approach for designing both the hardware and the software of IoT applications. Developers write the application code in a C-like language to specify the key logic of their applications, without dealing with the details of the specific hardware components. Taking the application code as input, TinyLink automatically generates the hardware configuration as well as the binary program executable on the target hardware platform. TinyLink provides unified APIs for applications to interact with the underlying hardware components.

We implement TinyLink and evaluate its performance using realworld IoT applications. Results show that: (1) TinyLink achieves rapid development of IoT applications, reducing 52.58% of lines of code in average compared with traditional approaches; (2) TinyLink searches a much larger design space and thus can generate a superior solution for the hardware configuration, compared with the state-of-the-art approach; (3) TinyLink incurs acceptable overhead in terms of execution time and program memory.

Borui Li
Borui Li
Ph.D., Assistant Professor
MSc./MEng. Supervisor

My research interests include AIoT system, edge computing, WebAssembly, etc.