# AtomVM distribution support is ready for testing

**URL:** <https://erlangforums.com/t/atomvm-distribution-support-is-ready-for-testing/4762>\
**Category:** AtomVM Forum\
**Tags:** atomvm, distribution\
**Created:** [May 15, 2025, 11:09pm UTC](https://erlangforums.com/t/atomvm-distribution-support-is-ready-for-testing/4762 "2025-05-15T23:09:26Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Winford](https://erlangforums.com/user_avatar/erlangforums.com/winford/32/1246_2.png) [@Winford](https://erlangforums.com/u/Winford)\
**Post date:** [May 15, 2025, 11:09pm UTC](https://erlangforums.com/t/atomvm-distribution-support-is-ready-for-testing/4762/1 "2025-05-15T23:09:26Z")

</div>

The [AtomVM](https://github.com/atomvm/AtomVM) team is happy to announce that support for distributed Erlang has been merged into the “main” branch and will be included in the 0.7 release cycle. As will most AtomVM features this is not complete OTP support, but enough basic features to be useful while running in a constrained environment like a microcontroller or WASM. We have a [guide](https://www.atomvm.net/doc/main/distributed-erlang.html#) explaining usage and supported features in the documentation.

There are examples in the AtomVM repository examples directory for [generic\_unix](https://github.com/atomvm/AtomVM/blob/main/examples/erlang/disterl.erl) and [esp32](https:// [AtomVM/examples/erlang/esp32/epmd\_disterl.erl at main · atomvm/AtomVM · GitHub](http://github.com/atomvm/AtomVM/blob/main/examples/erlang/esp32/epmd_disterl.erl)) platforms, and an rp2 example for Raspberry Pi Pico W and Pico 2 W should be ready soon. We will get these into the [atomvm\_examples](https://github.com/atomvm/atomvm_examples) repo soon.

As always any feedback from testers is highly appreciated. Feel free to open an issue on [GitHub](https://github.com/atomvm/AtomVM/issues) or leave a post here in the forums.

Happy Hacking!

- the AtomVM team

---

<div class="post-metadata">

**Author:** ![Winford](https://erlangforums.com/user_avatar/erlangforums.com/winford/32/1246_2.png) [@Winford](https://erlangforums.com/u/Winford)\
**Post date:** [May 15, 2025, 11:21pm UTC](https://erlangforums.com/t/atomvm-distribution-support-is-ready-for-testing/4762/2 "2025-05-15T23:21:45Z")

</div>

I forgot to point out that AtomVM nodes are capable of connecting with OTP nodes, just not with TLS yet.

---

<div class="post-metadata">

**Author:** ![weaver](https://erlangforums.com/user_avatar/erlangforums.com/weaver/32/2142_2.png) [@weaver](https://erlangforums.com/u/weaver)\
**Post date:** [May 19, 2025, 6:00pm UTC](https://erlangforums.com/t/atomvm-distribution-support-is-ready-for-testing/4762/3 "2025-05-19T18:00:25Z")

</div>

Hi! This is super cool. I ran into a problem when testing the example code - opened a GH issue:

> <https://github.com/atomvm/AtomVM/issues/1671>
>
> I tried to test the newly added distributed erlang support from the \`main\` branc…h. These are the steps I took:
> 
> 1. Compiled AtomVM, and ran \`./src/AtomVM examples/erlang/disterl.avm\` to start node A
> 2. Started another node B with \`erl -name node@127.0.0.1\`
> 3. Ran \`erlang:set\_cookie('atomvm@127.0.0.1', 'AtomVM').\` on node B,
> 4. Ran \`{disterl, 'atomvm@127.0.0.1'} ! quit.\` on node B.
> 
> The message sends successfully on node B, but AtomVM prints a crash message on node A and does not exit:
> 
> \`\`\`
> CRASH 
> ======
> pid: \<0.8.0\>
> 
> Stacktrace:
> \[{socket\_dist\_controller,process\_recv\_buffer,3,\[{file,"/Users/\<username\>/Git/AtomVM/libs/estdlib/src/socket\_dist\_controller.erl"},{line,192}\]},{socket\_dist\_controller,recv\_data\_loop,1,\[{file,"/Users/\<username\>/Git/AtomVM/libs/estdlib/src/socket\_dist\_controller.erl"},{line,175}\]},{socket\_dist\_controller,handle\_cast,2,\[{file,"/Users/\<username\>/Git/AtomVM/libs/estdlib/src/socket\_dist\_controller.erl"},{line,151}\]},{gen\_server,loop,3,\[{file,"/Users/\<username\>/Git/AtomVM/libs/estdlib/src/gen\_server.erl"},{line,539}\]}\]
> 
> cp: #CP\<module: 15, label: 55, offset: 37\>
> 
> x\[0\]: error
> x\[1\]: badarg
> x\[2\]: {4,4,126,2,\[{3,3322},{15,919},{15,1492},{15,1648}\],error}
> 
> Stack 
> \-----
> 
> {\<\<112,131,104,4,97,6,88,119,20,115,119,101,97,118,101,114,54,53,51,64,49,50,55,46,48,46,48,46,49,0,0,0,87,0,0,0,0,104,43,111,231,119,0,119,7,100,105,115,116,101,114,108,131,119,4,113,117,105,116\>\>,\<\<""\>\>}
> 0
> \<\<""\>\>
> \#CP\<module: 15, label: 55, offset: 37\>
> \[\]
> {state,{\<\<""\>\>,#Ref\<0.0.12\>},\<\<""\>\>,undefined,\<\<""\>\>,0,0}
> \#CP\<module: 15, label: 39, offset: 69\>
> \#CP\<module: 3, label: 113, offset: 24\>
> \[\]
> \[\]
> \[\]
> {state,{\<\<""\>\>,#Ref\<0.0.12\>},undefined,undefined,\<\<""\>\>,0,0}
> \[\]
> {state,undefined,socket\_dist\_controller,{state,{\<\<""\>\>,#Ref\<0.0.12\>},undefined,undefined,\<\<""\>\>,0,0}}
> \<0.7.0\>
> \#CP\<module: 3, label: 146, offset: 0\>
> 
> 
> Mailbox
> \-------
> 
> 
> Monitors
> \--------
> link to \<0.9.0\>
> monitored by resource 0x132908048 ref=28
> 
> 
> \*\*End Of Crash Report\*\*
> \`\`\`

---

<div class="post-metadata">

**Author:** ![Winford](https://erlangforums.com/user_avatar/erlangforums.com/winford/32/1246_2.png) [@Winford](https://erlangforums.com/u/Winford)\
**Post date:** [May 20, 2025, 8:19am UTC](https://erlangforums.com/t/atomvm-distribution-support-is-ready-for-testing/4762/4 "2025-05-20T08:19:09Z")

</div>

Thank you so much for testing and opening an issue. It looks like Paul tracked down the bug, so it shouldn’t take long for the fix to be merged.
