joaohf
Using Elixir and Scenic with Yocto Project
Hello!
This is about running BEAM using embedded linux. One way to get this working is using Yocto Project (Openembedded). I have been working in a layer which brings BEAM (Erlang and Elixir) to YP/Openembedded. See GitHub - meta-erlang/meta-erlang: Erlang and Elixir support, https://meta-erlang.github.io/ · GitHub.
Of course to get a real picture, a bit of knowledgment using YP is good to have (See: Yocto Project Quick Build) before start any adventure.
I’ve watched a talk in Code Sync STO from Boyd Multerer about Elixir and Scenic (GitHub - ScenicFramework/scenic: Core Scenic library · GitHub). That was very interesting.
After some experiments with YP, scenic and meta-erlang; I would like to share my results and maybe anybody with expirience using scenic/opengl to get some insights about what is going on. Keep reading.
Yocto has a qemu emulator and I can run scenic demo (mix scenic_new) inside the qemu emulator. I’ve attached three screenshots, well is not fully working yet.
I did an application called axon_scenic using scenic_demo and release it using distillery (all of that cross-compiling using yocto sdk). See: GitHub - joaohf/axon-scenic: A simple elixir application with scenic · GitHub
After scenic starts (inside the qemu), the follow issues happens:
- ‘load_texture_error: {:error, :not_found}’ multiple times
- using the top command, the CPU consume is almost 97% all the time
- the scenic screen does not respond to clicks, but the temperature changes over the time
1- scenic demo: https://pasteboard.co/IgGSkWO.png
2- load texture error message: https://pasteboard.co/IgGSRs5.png
3- top showing high cpu user: https://pasteboard.co/IgGT8Q7.png
Do you have any idea about what could be the issue?
My next step to investigate this problem will be run my application using a real hardware.
Best regards,
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









