lehoff / erlang_ale

Erlang Actor Library for Embedded -- An embedded framework from Erlang Solutions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

erlang-ale -- Erlang Actor Library for Embedded

Erlang/ALE provides high level abstractions that use Erlang facilities to interface with the hardware peripherals on embedded platforms. Raspberry Pi is our current development platform but running ALE on other platforms should be relatively straightforward too since the lowest layer hardware drivers are not baked into the ALE itself.

Warning

This is very much a work in progress and things are likely to be fragile as we tidy things up. Currently the only hardware module supported is the GPIO, the rest of the hardware modules (I2C, SPI and PWM) will be added to this framework in due course.

Getting started

Log in to your Pi and fetch the latest version of ALE using git:

git clone https://github.com/esl/erlang-ale.git

Let rebar (bundled) fetch the dependencies for you:

make init

Build the external interfaces:

make

You can ignore the errors generated by this.

Running

Use make shell to set things up and start a shell. Also make sure that gproc is loaded:

application:start(gproc).

Quick check: Turn an LED on

Set a pin as an output:

gpio:start_link(23, output).

Turn it on:

gpio:write(23, 1).    

A more detailed usage of the GPIO module can be found in examples/gpio_counter.erl

Comments and suggestions

...are most welcome! Please use the issue tracker or email us at embedded@erlang-solutions.com

License

erlang-ale is licensed under the Apache License, Version 2.0 (the "License");
You may not use this library except in compliance with the License.
You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

About

Erlang Actor Library for Embedded -- An embedded framework from Erlang Solutions


Languages

Language:C 50.6%Language:Erlang 49.4%