Affiliation:
1. Microsoft, Redmond, USA
2. Microsoft, Redmond, United States
3. Microsoft, Cambridge, United Kingdom
4. Lancaster University, Lancaster, United Kingdom
Abstract
The traditional approach to programming embedded systems is monolithic: firmware on a microcontroller contains both application code and the drivers needed to communicate with sensors and actuators, using low-level protocols such as I2C, SPI, and RS232. In comparison, software development for the cloud has moved to a service-based development and operation paradigm: a service provides a discrete unit of functionality that can be accessed remotely by an application, or other service, but is independently managed and updated.
We propose, design, implement, and evaluate a service-based approach to prototyping embedded systems called Jacdac. Jacdac defines a service specification language, designed especially for embedded systems, along with a host of specifications for a variety of sensors and actuators. With Jacdac, each sensor/actuator in a system is paired with a low-cost microcontroller that advertises the services that represent the functionality of the underlying hardware over an efficient and low-cost single-wire bus protocol. A separate microcontroller executes the user's application program, which is a client of the Jacdac services on the bus.
Our evaluation shows that Jacdac supports a service-based abstraction for sensors/actuators at low cost and reasonable performance, with many benefits for prototyping: ease of use via the automated discovery of devices and their capabilities, substitution of same-service devices for each other, as well as high-level programming, monitoring, and debugging. We also report on the experience of bringing Jacdac to commercial availability via third-party manufacturers.
Publisher
Association for Computing Machinery (ACM)
Reference37 articles.
1. Analog Devices Resource Library. 2000. Guide to Selecting and Using RS-232 RS-422 and RS-485 Serial Data Standards.
2. Arm. 2017. The Arm Mbed IoT Device Platform. https://www.mbed.com/
3. The BBC micro:bit
4. Transmitting data and power over a one-wire bus;Awtrey Dan;Sensors-The Journal of Applied Sensing Technology,1997
5. Microsoft MakeCode: embedded programming for education, in blocks and TypeScript
Cited by
1 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献