お久しぶりです…
2019年初投稿です〜
はじめに
今回から2回に渡って、EV3rtのBluetooth事情についてお伝えしていきたいと思います。
まずは環境構築をしなくてはなりません。EV3rtの一番最初の環境構築の時とは異なり、WindowsとMacで全く異なります。それぞれちゃんと書き記しますが、間違えないようにしてください。
Windowsでの環境構築
ペアリング
まずはEV3との接続ですが、Windowsの「設定」から「Mindstoms EV3」を選んで、ペアリングします。
この時パスコードを要求されますが、SDカード内のファイルをいじっていない限り、「0000」です。
(ev3rt/sdcard/ev3rt/etc/rc.conf.ini
のPincodeを編集すると、パスコードが変えれますが、不具合等が起きやすい印象なので、触らないほうが無難でしょう。)
このように表示されればペアリングは完了です。
通常の使用方法(コンパイルしたappを転送する)くらいの作業なら、Windowsの設定からのペアリングで問題ないと思います。
しかし、後々紹介するコマンドの通信などをするときは、上手くいかないときがあります。
そんなときは、別にBluetoothスタックというものを用意しましょう。
私のおすすめはTOSHIBA製のスタックです。評判は比較的良いです。
ダウンロードページ
本来これはDynabookやLet's noteなどに搭載されているものですが、そうでないPCでも使うことが可能です。(一応推奨はされてないので自己責任でお願いします。)
では、このTOSHIBA製スタックを使う場合のペアリング方法も記しておきます。
ペアリング(TOSHIBA製スタック版)
まずは「新しい接続」をクリック。
(接続先が一台もない場合は自動的にペアリング設定が始まります)
次に必ず「カスタムモード」を選択してください。設定等を細かくしないといけないので。
出ました。ここで「Mindstorms EV3」を選択してください。
出てこなかった場合は「更新」を押して検索をやり直しましょう。
接続しようとすると、パスコードが聞かれるはずです。
上記の通りrc.conf.ini
のPincodeを入力します。デフォルトは「0000」です。
パスコード入力が完了すると、サービスの選択画面になります。ここでシリアルポートを選択しましょう。
最後にCOMポートを選択します。が、デフォルトの設定でいい場合はそのままスルーしても構いません。
これが終わればセットアップはほぼ終了です。
このあとほんの少し設定がありますがそのまま画面の指示にしたがって進めば問題ありません。
Tera Termのインストール
さて、次はTera Termですね。これはBluetoothシリアル通信(ZMODEM)でコンパイルしたappを送信するために使います。
まずはインストーラーを落としてきましょう。
Tera Term HP
ダウンロードできたらインストーラーを起動してください。
私は何が必要かよくわからなかったので、フルインストールしました。
終わったり、セットアップは完了です。
Windowsでのapp送信
それでは、インストールしたTera Termでコンパイルしたappを送信したいと思います。
EV3がPCとBluetooth接続していることを確認してください。
Windows標準設定からの場合は「ペアリング済み」と表示されていればOKです。
TOSHIBA製スタックからの場合は以下の画像のような緑と黄色のマークが出ていればOKです。
先に、EV3側で「Bluetooth SPP」のモードを選択しておいてください。
ではいよいよTera Termを立ち上げます。
立ち上げると一番最初に以下のような画面が出るはずです。
ここでは下のCOMポートを選択します。ポート番号はTOSHIBA製スタックを使った人は「COMポートの選択」画面で割り当てたCOMポートを選んでください。Windows標準設定を使った人は以下の要領で調べます。
1.コントロールパネル
->ハードウェアとサウンド
->デバイスとプリンター
にアクセス
2.Mindstorms EV3
を選択
3.プロパティ
を開いてハードウェア
もしくはサービス
タブを選択。この欄に書かれているCOMポートが割り当てたものです。
さて、正しくCOMポートが選択できれば、先ほどのダイアログは消え、黒いウィンドウのみ残るはずです。
一見不気味ですが、これで問題ありません。
続いて、ファイル
->転送
->ZMODEM
->送信
と選択してください。
すると以下のような画面が出るでしょう。
この画面では送信するコンパイル済みファイルを選択します。(リネームしていなければ「app」という名前のやつ)
デフォルトで表示されるディレクトリはEV3rtのworkspaceとは全く違う場所なので、自力で移動してください。
appが生成される場所はev3rt-betaX.X-release/hrp2/sdk/workspace
です。
選択できたら「開く」を押しましょう。
ここまでちゃんとできていれば、appが送信されるはずです!!
Macでの環境構築
続いてmacでのBluetooth接続です。
まずはシリアル通信をするソフトを入れます。Windows版でいうところのTera Termです。
minicomのインストール
macの「ターミナル」で使用するminicomをインストールします。
インストールにはMacPortsかHomebrewを使用します。(どちらもインストールしていない人は、先にどちらかインストールしてください。)
minicomを入れると同時にZMODEM通信に対応させるためにIrzszもインストールします。
既にminicoがインストールされているか確認
念のためにMacPorts、Homebrew、minicomが自分のmacの中にインストールされているかを確認する方法を記して置きます。
which port
(MacPortsの確認)
which brew
(Homebrewの確認)
which minicom
(minicomの確認)
それぞれディレクトリが表示されれば、そこにインストールされていることになります。
ではここからインストールしていきます。
MacPorts版
Irzszのインストール
sudo port install lrzsz
minicomのインストール
sudo port install minicom
Homebrew版
Irzszのインストール
brew install lrzsz
minicomのインストール
brew install minicom
インストールが終わったら上記の方法でインストールされているか確認すると良いでしょう。
minicomの設定
ここからEV3用にminicomを設定していきます。
まずは設定画面を開きましょう。
minicom -s
そうするとこんな画面が表示されるはずです。
ちなみに英語で出てきた場合は上から順に
- Filenames and paths
- File trasfer protocols
- Serial port setup
- Modem and dialing
- Screen and keyboard
- Save setup as dfl
- Save setup as..
- Exit
- Exit from Minicom
と出てきます。転載を避けるため、実際の画像は下記の記事を参照してください。
Mac OS XでETロボコンに出よう! (Bluetooth編)
シリアルポート/Serial port setup
で、ここではシリアルポート
を(英語ならSerial port setup
)を選択して、Enterを押してください。
選択はキーボードの上下ボタンで変更可能です。
そしたら、こんな画面が出てくるでしょう。
(私の画面は既に一部設定済みです)
ここでA〜Gのキーボードを押すと、各項目にジャンプします。
では、以下の項目を設定してください。
A: /dev/tty.MindstormsEV3-SerialPor
E: 115200 8N1
F: NO
G: NO
(FとGはキーを押すとYesとNoが入れ替わります)
さて、終わったらこの画面を抜けてください。
モデムとダイヤル/Modem and dialing
次に、モデムとダイヤル
(英語ならModem and dialing
)を選択してください。
(私の画面は既に設定済みです)
では、それぞれ以下のように設定してください。
A:
B:
C:ATDT
D:
E:ATDP
F:
G:
H:
I:CONNECT
J:NO CARRIER BUSY NO DIALTONE VOICE
K:~~+++~~ATH^M
L:^M
M:45
N:2
O:10
P:1
Q:NO
R:YES
S:DTE speed(DTE 速度)
T:NO
既に設定済みになっているところは触らなくて大丈夫です。
終わったらここから抜けてください。
設定を保存
"dfl" に設定を保存
(英語ならSave setup as dfl
)を選択して、設定を保存しましょう。
すべて完了したらminicomを一度終了しましょう。(J:Minicom を終了
E:Exit from Minicom
)
EV3をMacに接続
(この時点で既にBluetooth接続をしているEV3があるならば、設定を消しておいてください。)
まずは、通常通りmacのBluetooth設定を開いてください。
「Mindstorms EV3」が表示されたら、「接続」を押してください。恐らく一度は繋がりはするものの、⚠️マークが出たり、あるいはすぐに接続が切れたりするかもしれません。でもそれで問題ないのでそのままにしておいて次のステップに進んでください。
minicomを起動
さて、いよいよminicomを起動していきます。
私の環境では管理者権限で起動しないとうまくいきませんでしたので、以下のようなコマンドで実行します。
sudo minicom
Password:🗝 みたいに出てくるはずなので、ここではmacのログインパスコードを打ってください。
ここで設定がちゃんとできている人は、EV3と接続でき、
minicom へようこそ 2.7.1
オプション: I18n
コンパイルされた日時は: May 17 2017, 04:52:29.
ポート /dev/tty.MindstormsEV3-SerialPor, 21:26:50
Meta-Z を押すと、説明画面になります。
と出てくるはずです。これで接続までは完了です!!
Macでのapp送信
まずは、EV3側で「Bluetooth SPP」のモードを選択しておいてください。
minicomを起動した状態で、Meta-Z
に登録されているキー(デフォルトではESC
のはず)と、Z
を同時に押してください。
そうすると
+-[アップロード]--+
| zmodem |
| ymodem |
| xmodem |
| kermit |
| ascii |
+-----------+
こんな感じのやつが出てくると思います。
一番上のzmodem
を選択した状態で、Enterを押してください。
すると次に現れるのはファイル選択画面です。
初期状態ではMacのドライブの一番上の階層が表示されます。
さて、このディレクトリ画面の見方ですが、 [Desktop]
のように、[]
でくくられているのはフォルダです。
そうでないものはファイル単体です。
ファイルは先程までと同じく、Spaceキー1度押しで選択できます。
フォルダを選択した状態でSpaceキーを2回連続で押すと、そのフォルダの中に入ります。
このようにディレクトリを移動して、workspaceにあるappを選択してください。
上級者にもなれば、下部の[Goto]
に、workspaceのあるパスを打ち込み、ワープするというやり方で済まします。
話を戻しまして、appは選択できましたか?
できたら下部で[Okay]が選択されているのを確認し、Enterを押してください。
正常に接続されていれば、appの送信が始まるはずです。
送信自体は驚くほどの速さで終了しますよ!!
最後に
今回はBluetooth通信の環境構築を行いました。
次回はこのBluetooth通信の応用をしていくつもりです。
コマンド送信などができ、ETロボコンでは必須の「リモートスタート」などができちゃいます!!
(まあWROはセンターボタンプッシュでしかスタートできないけども・・・)