Abstract
Auto Embed is an open-source Internet of Things (IoT) project. AutoEmbed: Towards Automated Software Development for Generic Embedded IoT Systems via LLMs (SenSys 2026). The first fully automated software development platform for general-purpose embedded IoT systems — from natural language to verified code on real hardware. It is built using Python, Arduino, FastAPI, OpenAI API, React. Key capabilities include: 95.7% coding accuracy across 355 embedded IoT tasks on 71 hardware modules and 4 platforms; 86.5% end-to-end success rate including compilation, flashing, and runtime verification; +23.7 pp over GPT-4, +27.7 pp over Claude, +30.7 pp over Gemini in zero-shot comparison. The complete source code is publicly available on GitHub under the MIT License, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.
1. Introduction
The first fully automated software development platform for general-purpose embedded IoT systems — from natural language to verified code on real hardware.
2. Objective
AutoEmbed: Towards Automated Software Development for Generic Embedded IoT Systems via LLMs (SenSys 2026)
This project demonstrates how Python, Arduino, FastAPI can be applied to a real-world Internet of Things (IoT) problem.
3. Key Features / Modules
- 95.7% coding accuracy across 355 embedded IoT tasks on 71 hardware modules and 4 platforms
- 86.5% end-to-end success rate including compilation, flashing, and runtime verification
- +23.7 pp over GPT-4, +27.7 pp over Claude, +30.7 pp over Gemini in zero-shot comparison
- Zero API hallucination — extracts real APIs from library source code instead of relying on LLM memory
- Any Arduino-compatible component — dynamically discovers from 7,000+ Arduino libraries
- Natural Language → Deployed Code — describe what you want, get compiled and verified Arduino code on real hardware
- 71+ Hardware Modules — sensors, actuators, displays, communication modules across 14 categories
- 4-Stage Automated Pipeline — Library Solving → Knowledge Generation → Selective Memory Injection → Auto-Programming
- Nested Feedback Loops — inner loop (compile → fix → recompile) + outer loop (flash → verify → recode) catches 73% of bugs before deployment
- Real-time Progress — WebSocket-based live updates for each pipeline stage
4. Technology Stack
5. System Requirements
General requirements for this technology stack — check the README for exact versions.
- Python 3.8 or later
- pip / virtualenv for dependencies
- VS Code, PyCharm or Jupyter Notebook
- Git (to clone the repository)
6. Installation & Setup
git clone https://github.com/AutoEmbed/AutoEmbed.git
cd AutoEmbed- Launch AutoEmbed and go to Settings — configure LLM API key, Arduino CLI path, serial port, and board type
- Go to Task Config — select components, map pin connections, describe your task in natural language
- Click Start Pipeline and watch it work
Full setup instructions are in the project README.
7. Future Enhancements
Suggested extensions you can add to make this your own project.
- Add a mobile dashboard using Blynk or Firebase
- Store readings in a cloud database for history charts
- Add alerts via SMS / Telegram when thresholds are crossed
8. Viva / Review Questions
Common questions examiners ask for projects in this domain.
- Which microcontroller / board and sensors are used and why?
- How does the device send data (Wi-Fi, MQTT, HTTP, Bluetooth)?
- Where is the sensor data stored and visualised?
- How is power consumption managed?
- How would you secure the device and its communication?
9. Source Code & License
This project is developed by AutoEmbed and published on GitHub under the MIT License. Please follow the license terms and credit the original author when you use or modify this code.
Want to build this as your internship project?
Work on an Internet of Things (IoT) project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.
Apply for Internet of Things (IoT) Internship