BEAM on Embedded Landscape 2020

Project name
GRiSP
Summary

Hardware and software solution targeting running Erlang on bare metal. As a central point the Grisp board runs an Erlang-based custom operation system design for minimal overhead and maximum ease-of-use.

Target hardware

GRiSP 1 microcontroller: AArch32 based. GRiSP 2 microprocessor: AArch32 based

Target Operation System

RTEMS, https://www.rtems.org

Target user group

embedded application, custom hardware, makers, IoT, embedded projects for real time applications

Supported BEAM languages

Erlang and Elixir

Source Control
Description

GRiSP project makes it easy to write Erlang embedded applications without having to write one line of C code. The GRiSP board offers I/O expandable interfaces, wifi and ethernet connectivity. On the software side, GRiSP uses RTEMS as an Unikernel library integrated with the Erlang Run Time System in a single image. Making GRiSP very suitable to run hard real time applications. As the project grows and the need for writing C code to handle special device drivers becomes true, GRiSP provides a powerful mechanism to integrate the C code with Erlang and still suitable for running real time application.

Project name
Nerves
Summary

Tooling, libraries, and runtime for building robust embedded systems on the BEAM across a variety of hardware

Target hardware

Official support for Raspberry Pi and Beaglebone boards. Custom hardware supported via an integration with the Buildroot project

Target user group

Embedded systems and industrial IoT developers as well as hobbyists and makers

Supported BEAM languages

Erlang, Elixir, and LFE

Description

Nerves integrates with Elixir’s mix build tool to provide a familiar development experience that generates complete firmware images that can be used locally or distributed securely to many devices via NervesHub. Nerves uses the Linux kernel for hardware support and Buildroot for integration with non-Erlang applications and services.

Used by

FarmBot, Bowery Farming, SmartRent, Schneider Electric, RosePoint Navigation, Interstate Batteries, Le Tote, Very Possible

meta-erlang

Project name
meta-erlang
Summary

Linux microprocessor based on any hardware supported by Yocto Project and Openembedded where Erlang Runtime System (ERTS) is able to run. meta-erlang is a layer with together with other layers from YP/OE, offers a complete solution when designing and implementing embedded linux projects.

Target hardware

microprocessors: AArch32, AArch64, X86, X86-64. Any supported combination between Yocto Project/Openembedded BSP and Erlang

Target Operation System

Custom linux kernel base distribution made with YP/OE.

Target user group

Custom hardware and embedded projects

Supported BEAM languages

Erlang and Elixir

Description

Yocto Project is a ten years-old project from Linux Foundation that brings best practices, tools, and code that enable the creation of Linux distributions. YP is organized based on many sorts of layers and meta-erlang is one of them. The meta-erlang aim is to bring Erlang Ecosystem for the YP/OE projects, providing up-to-date Erlang and Elixir versions, example application, documentation, tools to help creating applications for embedded projects and common application written in Erlang/Elixir like databases, message brokers and web servers tested and ready to run on embedded Linux.

View our calendar

You can reach us: