Frequently Asked Questions

Adam Lindberg edited this page Feb 13, 2018 · 9 revisions

FAQ for the GRiSP Project

Can I run Elixir applications on GRiSP?

Yes, you can. GRiSP runs a normal Erlang VM on the hardware and nothing prevents it from executing Elixir and Elixir applications (since they compile to Erlang byte code).

Currently, there is no tooling to help you deploy Elixir applications. A release created with Elixir that uses the Rebar 3 built Erlang Run-Time System (ERTS) should work out of the box. See Build OTP for GRiSP in the rebar3_grisp plugin README.

Is it possible to run the GRiSP runtime on my local computer?

Yes, with some tweaking. The GRiSP runtime has an emulation layer implement as part of its test code. If you check out the GRiSP runtime, you can run rebar3 as test shell to start it in emulated mode. This will use the config/test.config file when starting the Rebar shell which will replace the low-level driver implementations with emulated ones. If you want to be able to do this for your own project which depends on the GRiSP runtime, you need to copy the config/test.config file to your project, and add the following to your rebar.config:

{profiles, [
    {test, [
        {shell, [
            {config, "config/test.config"}
        ]}
    ]}
]}.

I cannot find the USB device under /dev used to connect over Serial. What should I do?

First, make sure that the USB cable is plugged in correctly and that the board has power (the LEDs should light up when it is connected). If you still cannot find the device, try with a different USB cable. You need to use a cable that is capable of data transfers, not only power. When in doubt, choose a cable from a respected brand or a one that comes from an existing mobile device or similar that you know works.

Sometimes it is necessary to install FTDI drivers for the chip that is on the board, FT2232D. The drivers can be found here (installation instructions). Note that this is not needed on all operating systems and versions, only some and we have not figured out which yet.

Rebar 3 crashes when deploying my project. What should I do?

Currently there is a bug in Rebar 3 version 3.4.7 that prevents the same plugin from being included both locally in the project rebar.config and globally in ~/.config/rebar3/rebar.config. To work around this, either use Rebar 3.4.6 or 3.5.0 or later (a temporary workaround is to remove the plugin in your local project rebar.config).

More information: https://github.com/erlang/rebar3/pull/1686

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.