{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,2]],"date-time":"2025-08-02T14:22:52Z","timestamp":1754144572996,"version":"3.41.2"},"reference-count":46,"publisher":"Association for Computing Machinery (ACM)","issue":"4","funder":[{"DOI":"10.13039\/501100007229","name":"Special Research Fund","doi-asserted-by":"crossref","award":["BOF19KP04"],"award-info":[{"award-number":["BOF19KP04"]}],"id":[{"id":"10.13039\/501100007229","id-type":"DOI","asserted-by":"crossref"}]},{"DOI":"10.13039\/501100000266","name":"Engineering and Physical Sciences Research Council","doi-asserted-by":"publisher","award":["EP\/W020564\/1"],"award-info":[{"award-number":["EP\/W020564\/1"]}],"id":[{"id":"10.13039\/501100000266","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. ACM Hum.-Comput. Interact."],"published-print":{"date-parts":[[2025,6,30]]},"abstract":"<jats:p>The growing capabilities of microcontrollers, sensors, and actuators, coupled with decreasing costs, have led to a proliferation of embedded interactive systems. Prototyping such electronic systems has become democratized across a broad audience, including students, hobbyists, professional engineers, and programmers. Central to this evolution is the ease of software development, and in particular, the availability of low-level drivers and programming libraries which have significantly lowered the barriers to programming these systems. However, this ecosystem often presents challenges due to the tight coupling between programming libraries, drivers, and the underlying sensors and actuators. This frequently leads to compatibility issues. This paper introduces LogicGlue, which addresses these challenges by providing a platform-independent driver specification format. LogicGlue driver specifications allow hardware-independent application logic to be written, facilitating the process of interchanging components with minimal-to-no code adjustments. Unlike existing solutions, LogicGlue supports efficient interfacing via native communication protocols. This approach not only simplifies electronics prototyping but also ensures compatibility between various types of electronic components from different vendors. By reducing the complexity of hardware integration, LogicGlue enables a more seamless exploration of novel interactive behaviours and interfaces, forming a new tool for engineering interactive computing systems.<\/jats:p>","DOI":"10.1145\/3735498","type":"journal-article","created":{"date-parts":[[2025,6,27]],"date-time":"2025-06-27T07:35:59Z","timestamp":1751009759000},"page":"1-46","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["LogicGlue: Hardware-Independent Embedded Programming Through Platform-Independent Drivers"],"prefix":"10.1145","volume":"9","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8733-4585","authenticated-orcid":false,"given":"Mannu","family":"Lambrichts","sequence":"first","affiliation":[{"name":"School of Computing and Communications","place":["Lancaster, United Kingdom"]},{"name":"Lancaster University","place":["Lancaster, United Kingdom"]},{"name":"Hasselt University, Flanders Make","place":["Lancaster, United Kingdom"]}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-6466-0663","authenticated-orcid":false,"given":"Raf","family":"Ramakers","sequence":"additional","affiliation":[{"name":"Digital Future Lab","place":["Hasselt, Belgium"]},{"name":"Hasselt University, Flanders Make","place":["Hasselt, Belgium"]}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9314-7762","authenticated-orcid":false,"given":"Steve","family":"Hodges","sequence":"additional","affiliation":[{"name":"School of Computing and Communications","place":["Lancaster, United Kingdom"]},{"name":"Lancaster University","place":["Lancaster, United Kingdom"]}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2025,6,27]]},"reference":[{"key":"e_1_3_3_2_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-7091-6878-3_10"},{"key":"e_1_3_3_3_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-7091-7491-3_5"},{"key":"e_1_3_3_4_2","unstructured":"Adafruit. 2024. Adafruit CircuitPython Register. https:\/\/github.com\/adafruit\/Adafruit_CircuitPython_Register"},{"key":"e_1_3_3_5_2","unstructured":"Arduino. 2024. Arduino - Home. https:\/\/www.arduino.cc\/"},{"key":"e_1_3_3_6_2","unstructured":"Arduino. 2024. Arduino - Libraries. https:\/\/www.arduino.cc\/reference\/en\/libraries\/"},{"key":"e_1_3_3_7_2","unstructured":"Arduino. 2024. Arduino IDE. https:\/\/www.arduino.cc\/en\/software"},{"key":"e_1_3_3_8_2","doi-asserted-by":"publisher","unstructured":"Jonny Austin Howard Baker Thomas Ball James Devine Joe Finney Peli De\u00a0Halleux Steve Hodges Micha\u0142 Moskal and Gareth Stockdale. 2020. The BBC micro:bit: from the U.K. to the world. Commun. ACM 63 3 (Feb. 2020) 62\u201369. 10.1145\/3368856","DOI":"10.1145\/3368856"},{"key":"e_1_3_3_9_2","doi-asserted-by":"publisher","unstructured":"Marek Babiuch and Petr Foltynek. 2024. Implementation of a Universal Framework Using Design Patterns for Application Development on Microcontrollers. Sensors 24 10 (2024) 3116. 10.3390\/s24103116","DOI":"10.3390\/s24103116"},{"key":"e_1_3_3_10_2","doi-asserted-by":"publisher","DOI":"10.1145\/3358711.3361630"},{"key":"e_1_3_3_11_2","doi-asserted-by":"publisher","DOI":"10.1145\/3357390.3361032"},{"key":"e_1_3_3_12_2","unstructured":"BeagleBoard. 2024. BeagleBone. https:\/\/www.beagleboard.org\/boards\/beaglebone-black"},{"key":"e_1_3_3_13_2","unstructured":"Phillip Burgess. 2024. Adafruit GFX Graphics Library. https:\/\/learn.adafruit.com\/adafruit-gfx-graphics-library\/overview"},{"key":"e_1_3_3_14_2","doi-asserted-by":"publisher","unstructured":"James Devine Joe Finney Peli de Halleux Micha\u0142 Moskal Thomas Ball and Steve Hodges. 2018. MakeCode and CODAL: intuitive and efficient embedded systems programming for education. SIGPLAN Not. 53 6 (jun 2018) 19\u201330. 10.1145\/3299710.3211335","DOI":"10.1145\/3299710.3211335"},{"key":"e_1_3_3_15_2","doi-asserted-by":"publisher","unstructured":"James Devine Michal Moskal Peli de Halleux Thomas Ball Steve Hodges Gabriele D\u2019Amone David Gakure Joe Finney Lorraine Underwood Kobi Hartley Paul Kos and Matt Oppenheim. 2022. Plug-and-play Physical Computing with Jacdac. Proc. ACM Interact. Mob. Wearable Ubiquitous Technol. 6 3 Article 110 (9 2022) 30\u00a0pages. 10.1145\/3550317","DOI":"10.1145\/3550317"},{"key":"e_1_3_3_16_2","doi-asserted-by":"publisher","DOI":"10.1007\/978-1-4471-0353-0_34"},{"key":"e_1_3_3_17_2","unstructured":"Intel Edison. 2024. Intel Edison Compute Module. https:\/\/ark.intel.com\/content\/www\/us\/en\/ark\/products\/84572\/intel-edison-compute-module-iot.html"},{"key":"e_1_3_3_18_2","unstructured":"FreeRTOS. 2024. FreeRTOS: Real-time operating system for microcontrollers. https:\/\/www.freertos.org\/index.html"},{"key":"e_1_3_3_19_2","unstructured":"Damien George. 2024. MicroPython: Python for microcontrollers. https:\/\/micropython.org\/"},{"key":"e_1_3_3_20_2","doi-asserted-by":"publisher","DOI":"10.1145\/3357390.3361029"},{"key":"e_1_3_3_21_2","doi-asserted-by":"publisher","DOI":"10.1145\/2445196.2445315"},{"key":"e_1_3_3_22_2","doi-asserted-by":"publisher","unstructured":"Steve Hodges Stuart Taylor Nicolas Villar James Scott Dominik Bial and Patrick\u00a0Tobias Fischer. 2013. Prototyping Connected Devices for the Internet of Things. Computer 46 2 (2013) 26\u201334. 10.1109\/MC.2012.394","DOI":"10.1109\/MC.2012.394"},{"key":"e_1_3_3_23_2","doi-asserted-by":"publisher","unstructured":"Steve Hodges Nicolas Villar James Scott and Albrecht Schmidt. 2012. A New Era for Ubicomp Development. IEEE Pervasive Computing 11 1 (2012) 5\u20139. 10.1109\/MPRV.2012.1","DOI":"10.1109\/MPRV.2012.1"},{"key":"e_1_3_3_24_2","doi-asserted-by":"publisher","unstructured":"Mannu Lambrichts Raf Ramakers Steve Hodges Sven Coppers and James Devine. 2021. A Survey and Taxonomy of Electronics Toolkits for Interactive and Ubiquitous Device Prototyping. Proc. ACM Interact. Mob. Wearable Ubiquitous Technol. 5 2 Article 70 (June 2021) 24\u00a0pages. 10.1145\/3463523","DOI":"10.1145\/3463523"},{"key":"e_1_3_3_25_2","doi-asserted-by":"publisher","unstructured":"Mannu Lambrichts Raf Ramakers Steve Hodges James Devine Lorraine Underwood and Joe Finney. 2023. CircuitGIue: A Software Configurable Converter for Interconnecting Multiple Heterogeneous Electronic Components. Proc. ACM Interact. Mob. Wearable Ubiquitous Technol. 7 2 Article 63 (6 2023) 30\u00a0pages. 10.1145\/3596265","DOI":"10.1145\/3596265"},{"key":"e_1_3_3_26_2","doi-asserted-by":"publisher","DOI":"10.1145\/3374920.3374950"},{"key":"e_1_3_3_27_2","doi-asserted-by":"publisher","DOI":"10.1145\/3430524.3440623"},{"key":"e_1_3_3_28_2","doi-asserted-by":"publisher","DOI":"10.1145\/605397.605407"},{"key":"e_1_3_3_29_2","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-27139-27"},{"key":"e_1_3_3_30_2","unstructured":"LLVM. 2024. The LLVM Compiler Infrastructure. https:\/\/llvm.org\/"},{"key":"e_1_3_3_31_2","doi-asserted-by":"publisher","unstructured":"Elmin Marevac Esad Kadu\u0161i\u0107 Nata\u0161a \u017divi\u0107 Nevzudin Buza\u0111ija and Samir Leme\u0161. 2025. Framework Design for the Dynamic Reconfiguration of IoT-Enabled Embedded Systems and \u201cOn-the-Fly\u201d Code Execution. Future Internet 17 1 (2025) 1\u201341. 10.3390\/fi17010023","DOI":"10.3390\/fi17010023"},{"key":"e_1_3_3_32_2","unstructured":"Mbed. 2024. Mbed OS. https:\/\/os.mbed.com\/mbed-os\/"},{"key":"e_1_3_3_33_2","unstructured":"BBC micro:bit. 2024. Micro:bit Educational Foundation. https:\/\/microbit.org\/"},{"key":"e_1_3_3_34_2","unstructured":"Microsoft. 2024. DeviceScript TypeScript for Tiny IoT Devices. https:\/\/microsoft.github.io\/devicescript\/"},{"key":"e_1_3_3_35_2","unstructured":"Microsoft. 2024. Visual Studio Code. https:\/\/code.visualstudio.com\/"},{"key":"e_1_3_3_36_2","doi-asserted-by":"publisher","DOI":"10.1145\/3679007.3685062"},{"key":"e_1_3_3_37_2","unstructured":"Node-RED. 2024. Node-RED - Low-code programming for event-driven applications. https:\/\/nodered.org\/"},{"key":"e_1_3_3_38_2","unstructured":"OASIS. 2024. CoAP - Constrained Application Protocol. https:\/\/coap.space\/"},{"key":"e_1_3_3_39_2","unstructured":"OASIS. 2024. MQTT. https:\/\/docs.oasis-open.org\/mqtt\/mqtt\/v5.0\/mqtt-v5.0.html"},{"key":"e_1_3_3_40_2","unstructured":"Raspberry Pi. 2024. Raspberry Pi. https:\/\/www.raspberrypi.com\/"},{"key":"e_1_3_3_41_2","unstructured":"PlatformIO. 2024. PlatformIO. https:\/\/platformio.org\/"},{"key":"e_1_3_3_42_2","unstructured":"PMod. 2024. PMod. https:\/\/digilent.com\/reference\/pmod\/start"},{"key":"e_1_3_3_43_2","doi-asserted-by":"publisher","unstructured":"Thibault Raffaillac and St\u00e9phane Huot. 2022. What do Researchers Need when Implementing Novel Interaction Techniques? Proc. ACM Hum.-Comput. Interact. 6 EICS Article 159 (June 2022) 30\u00a0pages. 10.1145\/3532209","DOI":"10.1145\/3532209"},{"key":"e_1_3_3_44_2","doi-asserted-by":"publisher","DOI":"10.1145\/3544549.3585642"},{"key":"e_1_3_3_45_2","doi-asserted-by":"publisher","DOI":"10.1145\/3427765.3428495"},{"key":"e_1_3_3_46_2","unstructured":"Zephyr. 2024. Device Driver Model. https:\/\/developer.nordicsemi.com\/nRF_Connect_SDK\/doc\/latest\/zephyr\/kernel\/drivers\/index.html"},{"key":"e_1_3_3_47_2","unstructured":"Zephyr. 2024. Zephyr. https:\/\/developer.nordicsemi.com\/nRF_Connect_SDK\/doc\/latest\/zephyr\/index.html"}],"container-title":["Proceedings of the ACM on Human-Computer Interaction"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3735498","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,7,15]],"date-time":"2025-07-15T18:17:50Z","timestamp":1752603470000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3735498"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,6,27]]},"references-count":46,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2025,6,30]]}},"alternative-id":["10.1145\/3735498"],"URL":"https:\/\/doi.org\/10.1145\/3735498","relation":{},"ISSN":["2573-0142"],"issn-type":[{"type":"electronic","value":"2573-0142"}],"subject":[],"published":{"date-parts":[[2025,6,27]]},"assertion":[{"value":"2025-06-27","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}