Terminal and oscilloscope — EoSim
Python · v0.1.0

EoSim — Embedded Systems Simulator

EoSim is the EoS simulator — a unified harness over QEMU, Renode, and a hardware-in-the-loop bridge that lets you boot, debug, and CI-test EoS firmware against 52+ virtual platforms without touching real silicon.

52+
Virtual platforms
QEMU
Full-system emu
Renode
Multi-MCU
HIL
Real-hardware bridge
Overview

What EoSim is

EoSim wraps QEMU and Renode behind a single Python API and CLI: pick a platform, hand it an EoS firmware image, and you get an inspectable virtual board with simulated peripherals, a GDB stub, and scriptable scenarios.

For tests that demand real hardware, the HIL bridge proxies the same API onto attached reference boards — so the same scenario runs in CI on a virtual STM32 and on a physical board on an engineer's desk.

Capabilities

Features

The shape of EoSim at a glance.

52+ Virtual Platforms

STM32 family, NXP i.MX, ESP32, RISC-V SiFive, ARM Cortex-A SoCs, x86_64 servers, and more.

QEMU + Renode + HIL

Three execution backends behind one API; switch with a flag.

Scriptable Scenarios

Drive peripherals, inject faults, advance time — all in Python.

GDB & Trace Hooks

Built-in GDB stub, full instruction trace, and EoS kernel-aware introspection.

CI Integration

Runs in GitHub Actions / GitLab / Jenkins; produces JUnit-format results.

Fault Injection

Bit-flip, brown-out, broken-peripheral scenarios for resilience tests.

Multi-Node

Networks of simulated boards share a virtual bus / Ethernet / Wi-Fi.

Benchmarks

Same harness drives perf / power benchmarks — exports to CSV and Plotly.

Hardware-in-the-Loop

Same scenarios run on physical reference boards via the HIL bridge.

Source

Open source on GitHub

EoSim is Apache-2.0 licensed and developed in the open. Issues, discussions, and pull requests welcome.

embeddedos-org/eosim

Simulate, fuzz, and CI-test EoS firmware against 52+ virtual platforms.

PythonApache-2.0v0.1.0
Open ↗
Where it sits

In the EoS stack

EoSim is the highlighted layer below.

App layerUI / browser layerData layerAI runtimeNeural interfaceIPC fabricEoS kernel + HALeos-platform profileeBootloaderBuild / IDE / Sim

Ready to build with EoSim?

Start with the docs, browse the source, or join the community.