16. Web API とは
二種類のWeb API
Web 上のサービスとして提供
Twitter API、Youtube API、...
ブラウザ上のJavaScript API (今日扱うのはこちら)
navigator.getUserMedia, navigator.geolocation, ...
19. Firefox を修正する
なぜ Firefox か
Chrome、Safari、IE と比較してハードウェアにアクセスする
Web API が最も充実しているため
Firefox では Gecko が Web API を実装している
なので Gecko にコードを追加することで新しい Web API を作
ることができる
gecko/dom/geolocation 等
Gecko
Web アプリ
Web API
20. Foxberry Pi を使用する
Gecko の修正は敷居が高い
JavaScript と C++ の両方を書かなければならない
Foxberry Pi で Web API を実装
JavaScript を使って擬似的に Web API を実装できる
Firefox OS
JavaScript WebIOPi
ハードウェア
HTTP
Raspberry Pi
Web API
25. Web GPIO API
Web GPIO API
navigator.mozGpio.write(ピン番号, 値)
例えば 10 番ピンにモーターがつながっている場合、以下のよ
うに on/off できる
navigator.mozGpio.write(10, 1) で on
navigator.mozGpio.write(10, 0) で off
navigator.mozGpio.read(ピン番号, 値)
26. Web I2C API
Web I2C API
navigator.mozI2c.getI2cDevice(デバイス名,アドレス)
I2c デバイスの取得
i2c_device.write/read(レジスタアドレス, 値);
レジスタへの書き込み、レジスタの読み取り
例
DRV8830 を用いたモーター制御
var i2c_device =
navigator.mozI2c.getI2cDevice("/dev/i2c-1", 0x64);
i2c_device.write(0x00, 0xfd);