Slide 1

Slide 1 text

Elixir/NervesでどこまでできるのIoT? ALGYAN7周年IoT祭2022 『やるぞIoT!学びとビジネスのプラットフォーム』

Slide 2

Slide 2 text

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

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

Why Nerves for IoT? ● 組み込みLinuxでありながら、Elixirの世界だけで機能開発に専念できる ● 通信・電断耐性の仕組みはNervesが提供してくれるので、開発が不要 ● ファームウェアが小さい(~50MBくらい ● OTAには、ファームウェア配信が可能な Nerves Hub がある ○ 自身でホストする必要あり ■ 自身でホストをしない場合は、 Peridio(Nerves Hubの有償スピンアウト)を待とう! ● サポートするハードウェア ○ BBB ○ OSD32MP1 ○ Raspberry Pi A+, B+, Zero, 2, 3B, 3B+, 3A+, 4 ○ Vultr ○ x86_64 ○ 対象ハードウェアがなくても、移植、ポーティング可能、実績あり!!

Slide 5

Slide 5 text

IoT 端末がElixirで作れると何が嬉しいか?

Slide 6

Slide 6 text

プロダクション環境で通用するの? もちろん、 通用します!!! https://www.nerves-project .org/case-studies.html

Slide 7

Slide 7 text

Where Nerves is used? ElixirKenya で発表から抜粋 https://www.youtube.com/watch?v= P_xryjmG35I ↓Frank, Nerves Core Author Pocket LANcher https://www.pocket-lancher.com/

Slide 8

Slide 8 text

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

Slide 9

Slide 9 text

Join us, Nerves JP!! and Let’s contribute Nerves Project!! https://nerves-jp.connpass.com/

Slide 10

Slide 10 text

Thank you all and ALGYAN Happy 7th Anniversary!

Slide 11

Slide 11 text

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