まほろば

micro:bit でスイッチインターフェース製作(開発環境)

投稿者:マーチン  2018年9月17日 
カテゴリ:障碍者全般::micro:bit

 スイッチインターフェースのソースコードを公開するとともに、ソフト開発環境のつくり方と参考資料を紹介します。MITライセンス(誰でも無償で無制限に扱って良い)で公開しますので、これよりも良い物を作ってどんどん公開して頂きたいです。特に、高校生や高専生の若い人に期待しています。

●ソースコード

 micro:bitを使ったiOS機器のスイッチインターフェース用のソフトを公開します。3つのスイッチに割り当てられるキーコードを変更することができます。電源を切っても、次回は同じ設定から始められます。

 MITライセンスで公開します。このソフトウェアにはなんの保証もついていません。たとえ、このソフトウェアを利用したことでなにか問題が起こったとしても、作者はなんの責任も負いません。(でも、不具合や要望があれば、教えてください。)
 使い方は、次の記事を参照ください。

●開発環境

 micro:bit のプログラム開発は、ブロック、JavaScript、Python でもできますが、ARM社のmbed(エンベッド)と呼ばれるワンボードマイコンの一種なので、C++ でプログラミングする方法をとりました。
 micro:bit の「JavaScriptブロックエディタ」の追加パッケージで、BLE-HIDが使えるようにする方法が分かれば、他の実現方法があったかもしれません。

(1)https://os.mbed.com/ を開いて、右上の[Compiler] をクリックし、[Sign up] をクリックする。メールアドレス、Username、Password などを入力する。

(2)■私はロボットではありません と、
  ■agree to Arm's teams and conditions of use.(Armの使用条件に同意します)
にチェックを入れて、[Sign up] をクリックする。

(3)送られてきたメール内のURLをクリックすると、アカウントが作成される。


(4)作成したアカウントでログインする。

(5)例えば、https://os.mbed.com/teams/BBC/code/microbit-samples/ を開いて、[Import into Compiler] をクリックする。

(6)初めてのときは、プラットフォーム(mbedの種類) を追加するように、メッセージが表示される。

(7)「BBC micro:bit」を選ぶ。

(8)[Add to Mbed Compiler] をクリックする。

(9)[Import] をクリックする。

(10)プログラムが自分の作業領域にダウンロードされ編集できるようになる。

●参考資料と注意事項

 以下のサイトの情報を参考にしました。

 基本的には、「Lancaster University」の micro:bit runtime を使わせてもらいつつ、BLE-HID (Bluetooth Low Energy - Human interface device)の機能を追加しています。でも、Micro:bit のRAM容量16 KB のうち、BLEの機能だけで12kBを消費してしまうらしいです。
 例えば、BLE機能を実現しているソースに、以下の行を追加したなら、実行中にハングアップしてしまうので、RAM容量不足が原因だと推定しています。micro:bit runtime の必要な機能だけを装備して、メモリの使いすぎに注意することが必要です。

#include "Microbit.h"
MicroBit uBit;
int main()
{
・・・・・・
uBit.display.scroll("HELLO!");
・・・・・・
}



◆連載
◆関連記事