/erlang_ale

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

Primary LanguageErlang

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 hardware module supported are I2C, SPI and PWM.

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

Fetch the dependencies and build erlang-ale:

cd erlang-ale && make

You can ignore the errors generated by this.

Running

Use make shell to set things up and start a shell.

Quick check: Turn a LED on

Set a pin as an output:

gpio_sup: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.