Edited at

Espruinoを買う~LEDを光らせる

More than 3 years have passed since last update.

アドベントカレンダー作ろうと思っていたけど気がついたら12/2になってたので、12/2の記事として投稿しちゃいます


Espruino とは

EspruinoJavaScriptで制御することができるマイコンボードです。ArduinoのJS版 と思って頂いて問題ないです。JavaScriptが書ければハードが制御できちゃう。良い時代になったものです。

詳しくは後々の記事で述べたいと思いますが、「とりあえずJSでハード制御してみる」を実現するには最も簡単で、財布にも優しい選択肢、と言えるボードです。


LED光らせるまでの流れ

細かいセールスポイントは置いておき、とにかく最初の一歩を踏み出せるよう、購入するところからJSでLEDを光らせるところまでの流れを解説したいと思います。大丈夫です。簡単です。


  1. 買う

  2. WebIDEインストールする

  3. USB繋ぐ


  4. LED1.write(1)でLEDを光らせる


買う

公式サイトのbuy_nowに販売しているサイトのリンク一覧があります。

送料も場合によっては結構かかるので複数台、または一緒に遊ぶためのモジュールと一緒に購入するのが良いでしょう。

wifiを使うのであればadafruitのCC3000がおすすめです。というのも、公式でモジュール化してくれるセンサー類(後々出てきます)は大体秋葉原を彷徨うと手に入りますが、公式サイトに載っているWifiモジュールは海外でしか買えないので(現在)、ついでに購入するのには適しているかと思います。adafruitのサイトでEspruinoも購入できるので、こちらでまとめて購入するのも手かと思います。

またはBluetoothBLE等も買っておくと良いかもしれません。

ちなみに私はseed studioから単体で購入しました。送料に積む金額によって配送期間が変わります。無料だと2週間程度、30ドル払ったら4日で届きました。


WebIDEをインストールする

WebIDEはChrome Extentionなので、chromeをインストールした状態でコチラよりextentionをインストールします。


USBを繋ぐ

EspruinoのマイクロUSB端子とPCのUSB端子をつなぎ、WebIDEを立ち上げます。

image

立ち上がったら左上の接続ボタンを押して、/dev/tty.usbmodem????? (?????はマシン依存)を選択します。

こんな画面が出れば成功

image


LED1.write(1)でLEDを光らせる

WebIDEの左側にプログラムを入力することで、対話形式でEspruinoに命令を送る事ができます。

下記を入力してEnterを押すと、本体についている小さく赤いLEDが点灯します※。

LED1.write(true);

image

おめでとうございます。とりあえず、これで特に難しい設定もなく、JavaScriptでハードを制御することができました。

1行だけの実行ではなく、複数行のプログラムを書き込んだり、外付けLEDを光らせたり、センサーの情報を読み取ったりというところは、後日の記事にご期待ください。


エラーが出る場合

エラーが出る場合は残念ながらファームウェアのアップデートが必要です。


手順


  • WebIDE右上の歯車アイコンをクリック

  • 設定メニューのFLUSHERを選択

  • FLUSH FIRMWARE ボタンをクリック


  • EspruinoBTN1(USBコネクタから遠い方のボタン)を押しながら`RSTボタン(USBコネクタ寄りのボタン)'を押す

  • ボード上の青色のLEDがゆっくり点滅する

  • WebIDEのNEXTをクリック


  • /dev/tty.usbmodem??????/を選択


    • ファームアップロードが始まり、ボード上のLEDが激しく点滅を繰り返します



  • 完了後、NEXTボタンを押した後、RSTボタンを押す

  • 再び接続してLチカのコードを入力

以上です。


注意

後々に記事書きますが、EspruinoでCC3000WiFiモジュールを安定して動かすのは、webエンジニア的にはハードルがあります。電源問題への対処、Espruino上での制御の小技みたいな事が必要になるので、高い安定性が求められるシステムを作るにはおすすめできません。動かない事は無いですが。

Bluetooth等でインターネット接続のある親機的なものにセンサー信号を送り、そこからCloudに上げる方が最終的には安定するかもしれません(試行錯誤中です)

とはいえ、CC3000Wifiモジュールを使ってトイレの空き状況監視ツールを運用した事もあるので、ちゃんとケアしてやれば、この程度の用途に対してはちゃんと使えます。ポイントは接続が途切れたらリコネクト、1分に一度死活監視、、等々の仕掛けを入れて、失敗しても自分で立ち上がる , うまく言っていない事を伝える を徹底することです。後々の記事にご期待。