Release Notes
Welcome to AtomVM 0.7.0-dev+git.1cddf549
These release notes provide version information about the current release of AtomVM.
See also
For a detailed list of changes since the last release consult the Changelog.
Required Software
The following software is required to develop Erlang or Elixir applications on AtomVM:
An Erlang/OTP compiler (
erlc
)The Elixir runtime, if developing Elixir applications.
(recommended) For Erlang programs,
rebar3
(recommended) For Elixir programs,
mix
, which ships with the Elixir runtime.
AtomVM will run BEAM files that have been compiled using the following Erlang and Elixir versions:
Erlang Version |
Elixir Version |
---|---|
✅ OTP 21 |
✅ 1.7 |
✅ OTP 22 |
✅ 1.8 |
✅ OTP 23 |
✅ 1.11 |
✅ OTP 24 |
✅ 1.14 |
✅ OTP 25 |
✅ 1.14 |
✅ OTP 26 |
✅ 1.15 |
Note
Versions of Elixir that are compatible with a particular OTP version may work. This table reflects the versions that are tested.
Not all BEAM instructions are supported for every Erlang and Elixir compiler. For details about which instructions are supported, see the src/libAtomVM/opcodes.h
header file in the AtomVM github repository corresponding to the current release.
For detailed information about features and bug fixes in the current release, see the AtomVM Change Log. For information about how to update from previous versions of AtomVM, see the AtomVM Updating page.
ESP32 Support
AtomVM supports deployment on the Espressif ESP32 family of architectures.
To run applications built for AtomVM on the ESP32 platform you will need:
The
esptool
program, for flashing the AtomVM image and AtomVM programs to ESP32 MCUs.A serial console program, such as
minicom
orscreen
, so that you can view console output from your AtomVM application.
AtomVM currently supports the following Espressif ESP SoCs:
Espressif SoCs |
AtomVM support |
---|---|
✅ |
|
✅ |
|
✅ |
|
✅ |
|
✅ |
|
✅ |
|
✅ |
AtomVM currently supports the following versions of ESP-IDF:
IDF SDK supported versions |
AtomVM support |
---|---|
ESP-IDF v5.0 |
✅ |
ESP-IDF v5.1 |
✅ |
ESP-IDF v5.2 |
✅ |
ESP-IDF v5.3 |
✅ |
Building the AtomVM virtual machine for ESP32 is optional. In most cases, you can simply download a release image from the AtomVM release repository. If you wish to work on development of the VM or use one on the additional drivers that are available in the AtomVM repositories you will to build AtomVM from source. See the Build Instructions for information about how to build AtomVM from source code. We recommend you to use the latest subminor (patch) versions for source builds. You can check the current version used for testing in the esp32-build.yaml workflow.
STM32 Support
AtomVM supports deployment on the STMicroelectronics STM32 architecture.
AtomVM has been tested on the following development boards:
STM32 Development Boards |
AtomVM support |
---|---|
✅ |
|
✅ |
|
✅ |
Due to the proliferation of boards for the STMicroelectronics STM32 platform, AtomVM does not currently support pre-build binaries for STM32. In order to deploy AtomVM to the STM32 platform, you will need to build AtomVM for STM32 from source. See the Build Instructions for information about how to build AtomVM from source code.
Note
AtomVM tests this build on the latest Ubuntu github runner.
Raspberry Pi Pico Support
AtomVM supports deployment on the Raspberry Pico RP2040 architecture.
AtomVM currently supports the following Raspberry Pico development boards:
Development Board |
AtomVM support |
---|---|
✅ |
|
✅ |
Building the AtomVM virtual machine for Raspberry Pico is optional. In most cases, you can simply download a release image from the AtomVM release repository. If you wish to work on development of the VM or use one on the additional drivers that are available in the AtomVM repositories you will to build AtomVM from source. See the Build Instructions for information about how to build AtomVM from source code.