Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Raspberry Pi で試す 組み込みLinux⼊⾨ Nerves の場合

pojiro
November 29, 2023

Raspberry Pi で試す 組み込みLinux⼊⾨ Nerves の場合

pojiro

November 29, 2023
Tweet

More Decks by pojiro

Other Decks in Technology

Transcript

  1. Raspberry Pi で試す
    組み込みLinux⼊⾨
    Nerves の場合

    View full-size slide

  2. 自己紹介
    ● 衣川 亮太 (きぬかわ りょうた)
    ● 愛知県岡崎市の個人事業エンジニア
    ● 屋号:Tombo Works
    ● twitter: @pojiro3
    ● I love Elixir & Nerves
    ○ 日本のNervesコミュニティであるNerves JPに所属しています

    View full-size slide

  3. 関数型プログラミング言語Elixir で
    組み込みLinux開発ができる Nerves の紹介
    ● Elixir, 以下の特徴を持つ動的型付けの関数型言語
    ○ Erlang VM上で動作する、高可用・耐障害性のある、並行処理の書きやすい言語
    ○ 主にサーバーサイドで使われる
    ■ Webフレームワーク:Phoenix
    ● Nerves
    ○ 組み込みLinux開発をElixirで可能にするOSS
    ○ 機能の開発をElixirの世界に閉じて行うことができる
    ■ nginx, apache, /etc/の設定いじり, python でプログラム開発 バラバラ開発不要
    ○ Linuxをカスタムしない限り、組み込みLinuxであることを意識せずに
    開発を進めることができるのが強み!!
    ■ Linuxをカスタマイズしたい場合はBuildrootでカスタムすることで可能

    View full-size slide

  4. Nerves のよいところ!
    ● 組み込みLinuxでありながら、Elixirの世界だけで機能開発に専念できる
    ● 通信・電断耐性の仕組みはNervesが提供してくれるので、開発が不要
    ● ファームウェアが小さい(~50MBくらい、SSH転送がすぐ終わる
    ● OTAには、ファームウェア配信が可能なOSSの Nerves Hub がある
    ○ ただ、自身でホストする必要あり
    ● 公式にサポートされるハードウェア
    ○ BBB
    ○ OSD32MP1
    ○ Raspberry Pi A+, B+, Zero, 2, 3B, 3B+, 3A+, 4
    ○ Vultr
    ○ x86_64
    ● 対象ハードウェアがなくても、移植可能、実績あり!

    View full-size slide

  5. 組み込みLinuxをElixirでやれると
    何が嬉しいか?
    以下の実装を
    全部Elixirでできる!
    ● クラウド
    ● エッジサーバ
    ● 末端デバイス

    View full-size slide

  6. 駆け足でデモします!

    View full-size slide

  7. プロダクション環境での利用
    利用例が掲載
    https://nerves-project.org/c
    ases/

    View full-size slide

  8. こんなところでも!
    ElixirKenya で発表から抜粋
    https://www.youtube.com/watch?v
    =P_xryjmG35I
    ↓Frank, Nerves Core Author
    Pocket LANcher
    https://www.pocket-lancher.com/

    View full-size slide

  9. もう一例!
    Kochi.ex, Elixir コミュニティ@高知
    ● Nerves を使った ExiBee と PLB
    が 小水力発電所で活用!!!

    View full-size slide

  10. 駆け足でしたが、
    組み込みLinux ができる Nerves というOSS
    を知っていただけたら嬉しいです!
    おわり

    View full-size slide

  11. 紹介
    ● Nerves の日本コミュニティ Nerves JP
    ● なぜ僕はNervesに期待するのか
    ● 産業用堅牢ハードでElixir:e-RT3にNervesポーティング
    ● Nerves大好きな僕が2021年にしたこと
    ● 出張の多い現場エンジニアをサポートするデバイス
    ● OSSを全面利用して商用プロダクトを作る

    View full-size slide