42
Intel Galileo あそぼう! にしながとしふみ @tnishinaga

Intel Galileoとあそぼう

Embed Size (px)

DESCRIPTION

第3回 北陸ARMユーザーグループで発表した資料です。 Intel Galileoを使ってみて気がついた、Galileoのいいところを紹介します。 北陸ARMユーザーグループのHPはこちら。 https://sites.google.com/site/embeddedhokuriku/

Citation preview

Page 1: Intel Galileoとあそぼう

Intel Galileo と

あそぼう! にしながとしふみ

@tnishinaga

Page 2: Intel Galileoとあそぼう

自己紹介 •  なまえ

–  にしながとしふみ

•  だいがく –  金沢大学

•  しゅみ –  2次元美少女を愛でる –  組み込み開発 –  自転車(ロード)

•  Twitter

@tnishinaga

Page 3: Intel Galileoとあそぼう

活動

•  技術書執筆 –  「BareMetalで遊ぶ Raspberry Pi」 (達人出版会) http://tatsu-zine.com/books/raspi-bm

Page 4: Intel Galileoとあそぼう

活動

•  ブログ執筆 – マルツパーツ館ブログ

http://marutsuparts.blog74.fc2.com/blog-category-0.html

Page 5: Intel Galileoとあそぼう

今日の目的

Intel Galileoを紹介する。

Page 6: Intel Galileoとあそぼう

本日の内容 •  Intel Galileoとは? •  Intel Galileoの特徴 – Arduino互換のからくり

•  Arduino + Linux の組み合わせ – 開発環境構築方法考察 – debianのインストール

•  作例

Page 7: Intel Galileoとあそぼう

Intel Galileoとは?

Page 8: Intel Galileoとあそぼう
Page 9: Intel Galileoとあそぼう

Intel Galileoとは?

Intelの作った 組み込みLinuxボード

Page 10: Intel Galileoとあそぼう

Intel Galileoとは?

x86互換 SoC

「Quark」搭載

Page 11: Intel Galileoとあそぼう

Intel Galileoとは?

回路図、ソースコード ほぼすべて公開

https://communities.intel.com/community/makers/documentation/

galileodocuments

Page 12: Intel Galileoとあそぼう

Intel Galileo の特徴

Page 13: Intel Galileoとあそぼう

Intel Galileoの特徴

ソフト & ハードが

Arduino互換

Page 14: Intel Galileoとあそぼう

Arduino互換? •  Arduino互換ソケット搭載 –  Arduinoシールドが刺さる

•  専用Arduino IDEが提供 –  Arduino IDEでプログラミング –  Arduino IDEから書き込み & 実行

Page 15: Intel Galileoとあそぼう

Intel Galileoの特徴

Arduinoシールドを Arduinoのプログラムで

動かせる!

Page 16: Intel Galileoとあそぼう

Arduino互換のからくり

Page 17: Intel Galileoとあそぼう

Arduino互換のからくり Arduino IDEでコンパイル (Linux用の実行ファイルができる)

USB(仮想COM)経由で Galileoに送り込む

Galileo上のLinuxで実行

Page 18: Intel Galileoとあそぼう

こんなことも

Page 19: Intel Galileoとあそぼう

ArduinoとLinuxを 組み合わせた

システムを作りたい!

Page 20: Intel Galileoとあそぼう

Yocto Linuxは貧弱貧者ゥ •  Yocto Linux – 内蔵FLASHに入ってる 組み込みLinux – SDカードから起動するのもこいつ

– 開発環境はない。 •  Linux側のシステム作成には環境を用意しないと…

Page 21: Intel Galileoとあそぼう

開発環境の構築方法

自動構築スクリプトが与えられている これを実行すればできる。

Page 22: Intel Galileoとあそぼう

環境構築してみる

環境構築スクリプトを実行!!

Page 23: Intel Galileoとあそぼう

1時間後…

Page 24: Intel Galileoとあそぼう

3時間後……

Page 25: Intel Galileoとあそぼう

5時間後………

Page 26: Intel Galileoとあそぼう

Out of Memory: Killed process

Page 27: Intel Galileoとあそぼう
Page 28: Intel Galileoとあそぼう

構築失敗

メモリ1.5GB スワップ1GB では構築不可能…

Page 29: Intel Galileoとあそぼう

別の手 •  Yocto以外のLinuxを動かす? – フォーラムにdebian動かす方法が載ってる

• でもArduino互換機能は動かないらしい

よし、やるか。

Page 30: Intel Galileoとあそぼう

......数日後

Page 31: Intel Galileoとあそぼう

https://github.com/jitomesky/Installing_Galileo-debian/blob/master/galileo-debian.md

Page 32: Intel Galileoとあそぼう

主な修正 •  カーネルモジュールを読むように修正

•  ライブラリを追加

–  YoctoはuLibc(i586) •  Arduino IDEで作るバイナリはulibcに依存

–  debianはlibc(i486)

•  clloaderを再コンパイル –  Arduino IDEのプログラムを受け取るデーモン –  ライブラリ移植でも動かない

•  ソースコードがあったので再コンパイルして登録

Page 33: Intel Galileoとあそぼう

debianの恩恵 •  aptitudeで何でも簡単にインストール •  開発環境も楽々インストール

•  環境問題は解決!!

Page 34: Intel Galileoとあそぼう

作例 「Tweet ボタン」

Page 35: Intel Galileoとあそぼう

「Tweetボタン」

•  スイッチが押されたらつぶやくシステム – スイッチ検出担当 :Arduino – ツイート担当 :Ruby

Page 36: Intel Galileoとあそぼう

「Tweet ボタン」

Arduino 側 •  ボタンが 押されたら Ruby側へ 通知

Ruby 側 •  通知を受けて ツイート

ソケット通信 ボタン入力

Page 37: Intel Galileoとあそぼう

まとめ

Page 38: Intel Galileoとあそぼう

まとめ

Intel Galileoの真の力は

Arduino互換にあり!

Page 39: Intel Galileoとあそぼう

まとめ

環境の問題も

debian化で解決!

Page 40: Intel Galileoとあそぼう

まとめ

Arduino + Linux 連携の可能性は

無限大!

Page 41: Intel Galileoとあそぼう

みんなも Intel Galileo

で 遊ぼう!

Page 42: Intel Galileoとあそぼう

お買い求めはこちら (宣伝)

http://www.marutsu.co.jp/