惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Help Net Security
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 【当耐特】
Microsoft Azure Blog
Microsoft Azure Blog
Google DeepMind News
Google DeepMind News
Apple Machine Learning Research
Apple Machine Learning Research
有赞技术团队
有赞技术团队
Y
Y Combinator Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
爱范儿
爱范儿
L
LangChain Blog
IT之家
IT之家
酷 壳 – CoolShell
酷 壳 – CoolShell
MongoDB | Blog
MongoDB | Blog
Hugging Face - Blog
Hugging Face - Blog
G
Google Developers Blog
T
Tailwind CSS Blog
Engineering at Meta
Engineering at Meta
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
宝玉的分享
宝玉的分享
博客园 - 三生石上(FineUI控件)
D
DataBreaches.Net
Recent Announcements
Recent Announcements
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

Show HN

Show HN: AI agents for UK GDAD PCF roles and their skills The Two Pillars: Mixer Mode and Meta-Software in the Reorganization of Software Work After AI GitHub - JaiCode08/teleport-env What 1,000+ Harness Experiments Taught Me About Self-Improving Agents Show HN: Liiists, a Markdown-first, iOS and CLI list app SwiperTab – Get this Extension for 🦊 Firefox (en-US) GitHub - kouhxp/fftext: Summarize, explain, fact-check, or translate any text, URL, or file. No GPU. No cloud. One command GitHub - sweetpad-dev/sweetpad: Develop Swift/iOS projects using VSCode GitHub - dogmaticdev/IRON: IRON a.k.a. Intermediate Representation Object Notation is a Interpreter/Database that is used to create Programming Languages. GitHub - sjhalani7/vaen: Package your AI coding harness into a portable .agent file, and share it across repos, teams, & the community without ever having to copy-paste instructions, skills, MCP config, or secrets. Show HN: Gandalf the Grader Show HN: Citadeld – replay any CI failure locally from a single file GitHub - tdortman/cuSBF: High-Performance GPU Super Bloom Filter coral-ai/claude-code-token-xray at main · Coral-Bricks-AI/coral-ai GitHub - ulyssestenn/funes: Funes is a Git-based framework for LLM-managed knowledge work: an AI Librarian ingests raw sources, builds an interlinked Markdown knowledge base, and uses it to produce cited reports, analyses, and other outputs. GitHub - ThatXliner/gah: Git Add Hunk, built for agents to use GitHub - harmont-dev/harmont-cli: Command-line client for the Harmont CI platform GitHub - brooksmcmillin/mcp-authflow: OAuth 2.0 Authorization Server framework for MCP servers GitHub - javaid-codes/audit-supply-chain-agents GitHub - amorey/gochan: A small library of common channel architectures for Go, inspired by Rust GitHub - arifozgun/OpenGem: Free, Open-Source AI API Gateway with Gemini, OpenAI & Anthropic Compatibility in 1 file GitHub - Pranesh950/BioPetals: 🌸 Run BIOxAI models at home, BitTorrent-style. Fine-tuning and inference up to 10x faster than offloading GitHub - cnguyen14/bounty-doctor: Diagnose a GitHub bounty issue before you waste hours: detects honeypot scam repos, AI-bot attempt swarms, and stale contests. Show HN: CoreMCP – MCP Server for On-Prem DBs Show HN: KittyHTML – Render HTML/CSS as an inline image in your terminal GitHub - bingud/filemat: Web-based file manager Show HN: TruthLens – Free multi-signal deepfake image detector GitHub - apexlocal-jz/claude-usage-tray: Windows system-tray app showing your Claude Code rate-limit usage at a glance. Zero deps, ~300 lines of PowerShell. Cross-IDE (works regardless of VS Code, Cursor, plain terminal). Release v0.1.2.1 · kouhxp/yapsnap GitHub - noopolis/moltnet: Self-hostable chat network for AI agents. Pre-built bridges for Claude Code, Codex, and the Claws. Rooms, DMs, history. No Slack bots, no Matrix, no glue code.
Provision Simulations as if they are VMs
Tariq Rafid · 2026-06-13 · via Show HN

We just launched our cloud to run your firmware against modern, popular MCUs — from code, not from a browser tab.

The web app is great for building and debugging interactively. But most embedded teams don’t have a simulation culture at all: testing means a board on a desk, a debugger probe, and someone manually flashing builds. That doesn’t scale past one desk, and it definitely doesn’t run in CI. Our cloud SDK is our answer — everything the simulator does, scriptable.

MCUs are code

A project, a graph, components, firmware. No GUI, no string-based wiring — you connect actual bus-level signals:

const client = createClient(env.SIM86_API_KEY)

const project = await client.createProject("smart-fan-controller")
const graph = project.graph

const mcu = graph.addComponent(Components.ADAFRUIT_STM32F405_EXPRESS)
const imu = graph.addComponent(Components.MPU6050)

mcu.setFlash("./firmware.elf") // path or Uint8Array

// connect physical bus-level signals
graph.connect(imu.pins.sda, mcu.pins.sda)
graph.connect(imu.pins.scl, mcu.pins.scl)

Streams and records

Everything the simulation produces is observable. Streams emit live during the run — sensor outputs, even individual CPU registers:

// live sensor output
imu.stream("gyro").subscribe(({ x, y }) => {
  console.log("IMU:", { x, y })
})

// program counter transitions, sampled every 35ms of simulation time
mcu.cpu0.stream("pc", { throttle: 35 }).subscribe((pc) => {
  console.log("PC:", pc)
})

Streams are for watching; keep them throttled. For anything high-frequency, record it instead and query it after the run:

mcu.record({
  include: [
    "cpu0.sp",   // stack pointer register transitions
    "usart",     // tx/rx streams
    "i2c.0x04",  // I2C register at offset 0x04 from peripheral base
    "rtt",       // Segger RTT
  ],
})

Run it, poke it, query it

Runs are bounded in simulation time, and you can schedule events against the timeline — inject sensor values, press reset, see how your firmware reacts:

const run = await graph.run({
  duration: 5000, // 5 seconds of simulation time
  record: { include: ["cpu0.pc", "cpu0.sp", "usart"] },
})

// scheduled events (timing guaranteed within ±10ms)
await run.at(1000).do(() => {
  imu.setYGyro(5)
})
await run.at(3000).do(() => {
  mcu.pressReset()
})

const logs = await run.logs()

Runs are persisted, so postmortems don’t require reproducing anything:

const logs = await client
  .getProject("my-project-id")
  .getRuns("my-run-id")
  .logs()

It pairs brilliantly with Claude Code

Coding agents are only as good as their feedback loop, and embedded development normally has the worst one imaginable: flash a board and watch it. The SDK gives an agent the loop it actually needs. Point Claude Code at a repo with the SDK installed and it can compile your firmware, run it on a simulated board, read the logs, register transitions, and bus traffic, and keep iterating until the behavior is right — unattended.

Why this matters

Most simulators are deterministic: the same binary produces the same execution, every time. That’s convenient — and it’s exactly why firmware that passes a deterministic simulator still dies on real hardware, where clocks drift and interrupts land at the worst possible moment.

Simulator86 is stochastic. Every run injects controlled timing variation, the way real silicon does. So a passing run isn’t “it worked once under lab conditions” — surviving runs here means your firmware has a genuinely working path on hardware. Put that in CI, on every commit, and you have something most embedded teams have never had: regression testing that actually predicts hardware behavior.

The SDK is available now. If you’re a business looking to build a simulation culture, talk to us.