Functional, Virtual Machine
AtomVM supports a limited but functional subset of the BEAM opcodes, and also includes a small subset of the Erlang/OTP standard libraries, all optimized to run on tiny micro-controllers.
AtomVM supports a limited but functional subset of the BEAM opcodes, and also includes a small subset of the Erlang/OTP standard libraries, all optimized to run on tiny micro-controllers.
With AtomVM, you can write your IoT applications in a functional programming language, using a modern actor-based concurrency model, making them vastly easier to write and understand!
AtomVM includes many advanced features, including process spawning, monitoring, message passing, pre-emptive scheduling, and efficient garbage collection.
It can also interface directly with peripherals and protocols supported on micro-controllers, such as GPIO, I2C, SPI, and UART. It also supports WiFi networking on devices that support it, such as the Espressif ESP32. All of this on a device that can cost as little as $2!
2026-03-20 Announcing AtomVM v0.7.0-alpha.0 We are thrilled to announce the release of AtomVM v0.7.0-alpha.0, the first pre-release on the road to v0.7.0 and by far the biggest AtomVM release to...
2026-03-19 piyopiyo.ex to Host an Introductory AtomVM Session in Nagoya (2026-03-21) This weekend, the Elixir community piyopiyo.ex will host an in-person AtomVM introductory session in Nagoya. The event, AtomVM Intro,...
2025-12-28 Davide Bettio Joins piyopiyo.ex in Nagoya for an AtomVM Technical Exchange (2026-01-16) This January, something exciting is happening in Japan. Davide Bettio, the creator of AtomVM, will visit the...