このページのみ全てのページ
GitBook提供
1 / 33

0.9

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Windows

TWELITE_Stage インストール (Windows10)

Windows

環境

以下の環境で開発しています。

  • Windows10 バージョン 1903

  • VisualStudio 2019 (32bit ビルド)

動作に必要要件

  • FTDI 社の FT232 シリーズが動作するようにデバイスドライバのインストールが必要な場合があります。MONOSTICK や TWELITE-R が認識できていない場合は、https://www.ftdichip.com より D2XX ドライバを導入してみてください。

  • Visual Studio 2019 の Visual C++ 頒布可能コード(ランタイムライブラリ)が必要になる場合があります。アプリケーションの起動時にエラーが出て起動しない場合は、本パッケージで再配布する TWELITE_Stage¥INSTALL¥VC_redist.x86.exe またはマイクロソフト社のウェブサイトから入手して、インストールしてください。配布バイナリは 32bit です。

標準アプリ ビューア

Windows macOS Linux M5Stack

のを解釈します。

TWELITE無線マイコンにはApp_Twelite(標準アプリ)またはApp_Wingsを書き込んでおき、通信相手からのシリアルメッセージが表示されていることを確認してから使用します。

通信相手はApp_Twelite(標準アプリ)で、標準アプリのボタンやアナログ入力の状態のメッセージ (0x81メッセージ) を受信すると、その内容を mwm5 のパーサーライブラリにより解釈して表示します。

インストール

install

環境に依存して、本アプリケーションが動作しない、また、各種設定が必要な場合があります。問題が発生した場合は、本資料の記述を参考に環境を整備いただくようお願いいたします。

開発環境を構築するためには、ソフトウェア群のインストール、またこれらの利用許諾に同意する必要があります。また、PC、ワークステーション上でセキュリティ設定等が必要になる場合があります。

  • 配布時には十分注意しておりますが、ウィルスなどの確認はお客様のほうでも留意いただくようお願いいたします。

  • お客様のセキュリティの考え方や運用(例:外部アプリケーションのインストールの可否)については、お客様の環境の管理者にご確認ください。

また、開発環境をインストールまた動作するにあたり、OSが介在し設定等必要になる場合があります(例:開発元が不明なアプリケーションの実行。開発環境または紹介するツール群の多くは、アプリケーションは開発元を証明する仕組みが組み込まれせん)。設定方法については、一般の情報を参考いただくようお願いいたします。

ビューア

Windows macOS Linux M5Stack

ビューアは、シリアルポート経由で接続したTWELITE 無線マイコンからの情報を表示したり、反対に司令(コマンド)を送ったりします。

各々のビューアは、比較的小規模なプログラムで mwm5 ライブラリの使用方法のサンプルを兼ねています。

操作

[ A ]

割当なし

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

フォントを変更します。

[ B ] 長押し

テスト用のダミーデータによる画面表示を行います。

[ C ]

割当なし

[ C ] 長押し

TWELITE 無線モジュールのリセットピンを制御し、リセットします。

ESC

ESCキーを入力することで、この画面を抜けます。

App_Twelite(標準アプリ)
0x81コマンド

macOS

TWELITE_Stage インストール (macOS)

macOS

環境

以下の環境で開発しています。

  • macOS Mojave (10.14.6)

  • macOS Catalina (10.15.4)

追加的なインストールや警告ダイアログについて

  • ダウンロードアーカイブには署名しておりません。実行時には、インターネットからダウンロードされたアプリケーションとしてセキュリティ警告が出る場合があります。

  • TWELITE_Stage をインストールしたパスからの実行許可を要求される場合があります。

  • ビルド実行時に make ユーティリティのインストールダイアログが出る場合があります。

  • ツールチェインにはコード署名がなされていますが、コード署名が正しく認証されない場合は、ビルドツールチェイン (ba-elf-gcc など) の実行形式一つずつについて、動作許可を求められる場合があります。

上記は TWELITE_Stage の動作のためには許可を与えたり、インストール作業が必要になります。

参考: make ユーティリティの手動インストール

※ OSバージョンの違いなどにより、別の手順で行う必要がある場合があります。

コマンドドライン (bash) にて、make を実行した時エラーが出る場合は XCode のインストールを行います。

$ xcode-select --install

インストール完了後、make を入力して以下のメッセージが出れば OK です。

$ make
make: *** No targets specified and no makefile found.  Stop.

シリアルポートの取り扱いについて

MONOSTICKやTWELITE-R には FTDI社 (https://www.ftdichip.com) の FT232 シリーズの半導体が使用されています。利用するためにはデバイスドライバについて対処が必要になる場合があります。

TWELITE_Stageを起動しても、シリアルポートが表示されない場合は、FTDI社のドライバをアンロードする必要があります。

参考:FTDI社のユーティリティ

このユーティリティは当社のMONOSTICKやTWELITE-Rが挿入された時に、OS標準のデバイスドライバのロードを抑制するものですが、当社以外のデバイスに(同じUSBのIDを持つもの)対しても抑制します。

https://www.ftdichip.com/Drivers/D2XX.htm より D2xxHelper をダウンロードして使用してください。当アーカイブ TWELITE_Stage/INSTALL フォルダにも同じものを収録しています。

参考:FTDI社デバイスドライバの手動アンロード

FTDI 関連のドライバをアンロードします。

$ sudo kextunload -b com.apple.driver.AppleUSBFTDI

インタラクティブモード

Windows macOS Linux M5Stack

インタラクティブモードへの遷移と操作を行います。

インタラクティブモード画面を使用しない場合、ターミナルによるインタラクティブモードの操作は可能です。ターミナルでは + + + の入力やSETピン、リセット操作を手動で行います。

インタラクティブモード画面の動作フロー

大まかな処理の流れを記載します。

[画面黒背景にする]
  ↓
[TWELITE無線マイコンリセット (制御可能ならSET=LO)]
  ↓
<間欠動作アプリのインタラクティブモードメッセージを検出?> --YES--> [操作画面]へ
  ↓タイムアウト
['+' を3回入力]
  ↓
<通常アプリのインタラクティブモードメッセージを検出?> --YES--> [操作画面]へ
  ↓タイムアウト
[操作画面へ] ※ この状態はインタラクティブモードではない

[操作画面]
  ↓
<インタラクティブモード脱出メッセージ?> --> [終了]
  ↓
<画面離脱操作 [ A ] 長押しなど> --> [終了]
  ↓
<ESC ?> -> <入力中判定> --NO-> [終了]
  ↓            ↓
[入力文字列をTWELITE無線モジュールへ送信]
  ↓
[操作画面]へ戻る

[終了]
  ↓
[TWELITE無線マイコンリセット]
  ↓
[画面離脱] インタラクティブモード画面を終了し前の画面へ戻る  

シリアルポート選択

Windows macOS Linux

Windows/macOS/Linux では、始動時にTWELITE無線マイコンが接続されているシリアルポートを選択する画面になります。

シリアルポートは Alt(Cmd)+0,1,2,... のキー操作でいつでも切り替えが可能です。

BINから選択

Windows macOS Linux M5Stack

ビルド済みのアプリ(.BINファイル)を書き込みます。

メニューを選択すると、ファイル一覧が表示されます。書き込みたいファームウェアを選択してください。

メニュー選択前に、書き込みむBINファイルを以下に格納しておきます。

BINフォルダにはTWELITE STAGEでビルドした .BIN ファイル(各プロジェクトのbuildフォルダ以下に格納)を、ファイル名を変更せず格納しておきます。

ファイル名によりBLUE/REDの識別を行っています。

Linux

TWELITE_Stage インストール (Linux)

Linux

TWELITE R2 のUSBデバイスIDが従来の0403:6001から0403:6015に変わっています。udevの設定追加が必要です。

32bit版は用意しておりません。

Linux環境はディストリビューションやバージョンによって、用意されているパッケージの種類が違っています。個別にパッケージ等のインストールや設定が必要になる場合があります。

エラーメッセージ等を手がかりに一般の情報を参照いただくようお願いいたします。

環境

TWELITE STAGE は以下の環境で開発・動作確認しています。

  • Ubuntu 16.04, 18.04, 20.04

  • NNLinux Beta8 64bit

  • Centos7

デバイスドライバ

TWELITE STAGE から MONOSTICK や TWELITE-R を認識するためには、ftdi_sioモジュールをアンロードし、また、USBデバイスに対して読み書き権限が必要になります。

USBデバイスのIDは以下のようになります。

  • ベンダーID 0x0403

  • プロダクトID 0x6001(MONOSTICK,TWELITE R) または 0x6015 (TWELITE R2)

この設定を自動化するための udev の設定スクリプト(Ubuntu, CentOS) を用意しています。/etc/udev/rules.d に定義をコピーして、設定をリロードしています。設定後は USB デバイスを抜き差ししてから TWELITE_Stage.run を実行してください。起動直後の画面で USB デバイスが表示されれば、設定が反映されています。

Ubuntu 16.04, 18.04. 20.04

$ cd ./MWSTAGE/TWELITE_Stage/INSTALL/ubuntu/
$ sudo ./set_udev_sudo.sh

定義ファイル(読みやすいように改行しています)

ACTION=="add",
   ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001",
   MODE="0666",
   RUN+="/bin/sh -c 'rmmod ftdi_sio && rmmod usbserial'"
ACTION=="add",
   ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015",
   MODE="0666",
   RUN+="/bin/sh -c 'rmmod ftdi_sio && rmmod usbserial'"

Centos 7

$ cd ./MWSTAGE/TWELITE_Stage/INSTALL/centos/
$ sudo ./set_udev_sudo.sh

定義ファイル(読みやすいように改行しています)

ACTION=="add",
   ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001",
   MODE="0666", 
   RUN+="/bin/sh -c '/usr/sbin/rmmod ftdi_sio'"
ACTION=="add",
   ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6015",
   MODE="0666", 
   RUN+="/bin/sh -c '/usr/sbin/rmmod ftdi_sio'"

アプリケーション登録

必要に応じてお使いのデスクトップ環境に合わせて、プログラムを登録してください。

Ubuntu 16.04, 18.04, 20.04

Ubuntu用の定義ファイル生成スクリプトを用意しています。

$ cd ./MWSTAGE/TWELITE_Stage/INSTALL/ubuntu/
$ ./make_launch_icon.sh

このスクリプトは .desktop ファイル(アプリ定義)を$HOME/.local/share/applications に作成します。

スクリプト実行後に、アプリケーション一覧に TWELITE STAGE のアイコンが追加されます。

使用方法

operation manual

プラットフォーム

場所

Windows, Mac, Linux

{MWSTAGEフォルダ}/BIN

M5Stack

SDカード最上位フォルダにBINフォルダを作成しておく

../BIN/App_Wings_MONOSTICK_BLUE_L1304_V1-1-3.bin
       App_Wings_MONOSTICK_RED_L1304_V1-1-3.bin
       App_Twelite_BLUE_L1304_V1-9-1.bin
       App_Twelite_RED_L1304_V1-9-1.bin
       ...

グランサー

Windows macOS Linux M5Stack

Glancerはglanceする人という英単語で、受信メッセージ中の情報を簡易表示するものです。TWELITE無線マイコンにはApp_Wingsを書き込んでおき、通信相手 (App_Twelite, TWELITE PAL, ... アプリケーションIDとチャネルが一致すれば混在も可) からの情報を表示します。

画面は2種類の構成になっています。

一覧表示

通信相手からの情報を列挙します。表示内容は(メッセージの種別、論理ID、シリアルID、LQI(Lq)、電源電圧(情報に含まれていれば)、受信時間)です。

操作

[ A ]

リストの前項目に移動する。

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

選択表示に移行します。

[ B ] 長押し

項目をソートします。ソートを実行するたびに、ソートキーは順に変わります。

[ C ]

リストの次項目に移動する。

[ C ] 長押し

TWELITE 無線モジュールのリセットピンを制御し、リセットします。

ESC

ESCキーを入力することで、この画面を抜けます。

選択表示

一覧表示で項目を移動し反転表示になったところで選択操作を行うことで、この画面に遷移します。特定の通信相手に関する情報を到着順に表示します。

選択されてからの受信パケット数と LQI の平均値が表示されます。

操作

[ A ]

割当なし

[ A ] 長押し

この画面を抜け、選択画面に戻る。

[ B ]

割当なし

[ B ] 長押し

割当なし

[ C ]

割当なし

[ C ] 長押し

TWELITE 無線モジュールのリセットピンを制御し、リセットします。

ESC

この画面を抜け、選択画面に戻る。

Actビルド&書換

Windows macOS Linux

アクト(Act)のビルドと書き換えを行います。 (Windows/Mac/Linux)

アクト(Act)の記述の参考となる小規模なソースコードが中心です。

この画面を開くと、プロジェクト一覧が表示されます。書き込みたいプロジェクトを選択すると、ビルド~書き込みを行います。書き込み終了後にEnterまたは[ B ]ボタンを押すことで、TWELITE無線モジュールをリセットし、インタラクティブモード画面(またはターミナル画面、要設定)に遷移します。

ビルド~書き込み画面

フォルダ

ビルド対象となるプロジェクトは以下になります。

{MWSTAGEインストールフォルダ}/MWSTAGE/Act_samples

操作

操作

[ A ]

メニュー選択 ↑

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

選択

[ B ] 長押し

関連ウェブサイト(プロジェクトフォルダの000desc.txtに登録がある場合)をOS標準のブラウザで開きます。

[ C ]

メニュー選択 ↓

[ C ] 長押し

フォルダ(プロジェクト、関連フォルダ)を開きます。設定メニューでVS Codeで開くように設定できます。

ESC

この画面を終了し、書換メニューに戻ります。

マウスクリック [ウェブ]

関連ウェブサイトを開きます。

マウスクリック [フォルダ] または [VSCode]

関連フォルダを開きます。

マウスクリック [▽] または [△]

次ページ、前ページに移動します。

ターミナル

Windows macOS Linux M5Stack

ANSIエスケープシーケンス(の一部)に対応した簡易ターミナルです。TWELITE 無線マイコンと直接入出力を行います。

操作

[ A ]

+ + + シーケンスの入力(インタラクティブモード)

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

大きなフォントで表示する。最初の画面の部分領域を表示します。カーソルが画面中に表示されるように領域を選びますが、画面出力によっては見たい部分が見えない場合もあります。

[ B ] 長押し

折返し制御のON/OFF。標準では折返し表示を行うようになっていますが、折り返ししないように表示することもできます。画面右端以降の文字列は表示されません。

[ C ]

ファーム書換画面に移動します。ファームウェアの開発中には頻繁にソースコードの修正、動作確認、ビルド&書き込みを行うため、ショートカットを用意しています。

[ C ] 長押し

TWELITE 無線モジュールのリセットピンを制御し、リセットします。

ESC ESC

ESCキーを2回素早く入力することで、この画面を抜けます。

※ 殆どの画面ではESCキーを1回押すことで画面から抜ける操作となっていますが、ターミナルではESCキーの単独入力を使用する場合があるため、2回連続入力の割当になっています。

M5Stackでの利用

M5Stack

M5Stack特有の動作や利用方法について記載します。TWELITE STAGEボードが接続されていることを前提とします。

利用するGPIOについて

TWELITE STAGE APPでは、以下のGPIOを利用しています。

接続先

GPIO16,17

TWELITE UART 接続

GPIO02

TWELITE PRGピン

GPIO05

TWELITE SETピン(DI1)

GPIO26

TWELITE RSTピン

GPIO35,36

PS/2 キーボードコネクタ

※ TWELITE STAGEボードでは、回路保護を目的とした抵抗などが配線されています。詳しくは回路図を参照ください。

上記、使用されているGPIOピンとの接続先については十分配慮してください。

以下は特に注意を払う必要があります。

  • TWELITE 無線マイコンの当該ピンの設定を出力とする。

    • 例えばTWELITE STAGE ボードではGPIO05にDIO12(DI1)が接続されていますが、このピンをGNDに直接落したり、ファームウェアからDIO12を出力設定かつLOWに設定したりした場合、M5StackからGPIO05をHIGHレベル出力すると過大電流が流れます。

  • これらのピンに(TWELITE STAGEボード以外の)別のデバイスを接続している。

    • 後述するfacesのキーパッドが該当します。TWELITE STAGE APPでは、起動時にキーパッドのI2Cデバイスを検出できた場合は、GPIO5の制御を省略するようにしています。

キーボード

TWELITE STAGE アプリでは、多くの操作をキーボード前提としております。以下のキーボードに対応しています。

PS/2コネクタ

PS/2 コネクタ PS/2 キーボードを接続することが出来ます。USB共用タイプの一部など、場合によっては動作しないことも考えられます。

CardKB

M5Stack 純正のカード型キーボード CardKB (Grove端子接続)です。

M5Stack faces QWERTYタイプキーパッド

M5Stack faces の QWERTY タイプキーパッドが利用できます。

キーパッドの割り込みピンがTWELITE STAGE ボードで利用するSETピンと衝突するため、TWELITE STAGE起動時のI2Cバスチェックでキーパッドを検出した場合は、TWELITE STAGE APP ではSETピン制御を行わないようにしています。

同様に10キーパッドなども同じピンを割り込み用に使用しています。

TWELITE PALなどスリープによる間欠動作するファームウェアでは、設定(インタラクティブモード)画面に入るためにSET=LOWとして電源投入(リセット)を行いますが、この操作を手動で行う(具体的にはTWELITE STAGEボードのDI1ボタンをリセットを行う瞬間だけ押しておく)必要があります。

キーパッドを利用する場合、以下の割り当てを行っています。

キー

割り当て

Alt+1..9

数字の1..9

Alt+0

ESC

アプリ書換

TWELITE 無線マイコン用のファームウェアを M5Stack から書き込むことが出来ます。

Windows/Mac/Linuxにあるアクト(Act)のビルドなどは出来ません。

FAT32フォーマットしたSDカード上の最上位フォルダに BIN フォルダを作成し、BIN フォルダ中にファームウェアをコピーしておきます。

ファームウェアのファイル名により一部識別(RED/BLUE用)しているので、ファイル名はWin/Mac/Linux用のTWELITE STAGE でビルドしたファイル名は変更しないようにしてください。

キー操作・マウス操作

Windows macOS Linux M5Stack

TWELITE STAGEアプリを通じた操作について解説します。

共通のキー

Windows macOS Linux M5Stack

ヘルプ画面

Windows macOS Linux

Windows/macOS/Linuxでは、Alt(またはCmd)を押し続けることでヘルプ画面を表示します。ヘルプ画面ではAlt(Cmd)と一緒に操作できるキーの説明や一部動作状況を表示します。

Alt(Cmd)+操作

Windows macOS Linux

Windows/macOS/LinuxでのAlt(Cmd)を押しながらの操作について解説します。表中ではAlt(Cmd)+の表記は省略しています。Alt(Cmd)を押すとヘルプ画面が出てきて使用可能なキーは確認できますが、下表に補足します。

マウスによるA,B,Cボタン

Windows macOS Linux

Windows/macOS/Linuxでは、M5Stack にあるハードウェアボタンをエミュレートするため、画面下部にマウスを移動すると [ A ] [ B ] [ C ] といったオーバーレイ表示が行われます。ボタンはクリック(ボタン押上)と、長押しクリックをエミュレートします。

マウスによる画面中の操作 (v0.9.7以降)

Windows macOS Linux

Windows/macOS/Linuxでは、TWELITE STAGE の画面構成は文字列のみで構成されますが、メニューやボタン、タブについてはマウスによる操作が可能です。

コマンダー

Windows macOS Linux M5Stack

コマンダーは、TWELITE無線マイコンにシリアルメッセージを送付するものです。コマンダーの最初の画面は留意事項について記載しています。

画面上部にはテキストで表現されたタブがあり、これをマウスでクリックすることでタブ中の画面に移動します。

タブ:TWELITE

この画面は の を生成し、送付します。TWELITE無線マイコンにはApp_TweliteまたはApp_Wingsを書き込んで、アプリケーションID・チャネルを設定し、通信相手からメッセージが受信されていることを確認します。

各項目を変更するたびにコマンドが生成されます。送信ボタンを押すと、現在の設定のコマンドを再度送信します。

タブ:NOTICE

この画面は通知のを生成します。TWELITE無線マイコンにはApp_Wingsを書き込んで、アプリケーションID・チャネルを設定し、通信相手からメッセージが受信されていることを確認します。

各項目を変更するたびにコマンドが生成されます。点灯ボタンを押すと、現在の設定のコマンドを再度送信します。

画面下部の表示

画面下部には、コマンドが生成されたタイムスタンプと :で始まるコマンドが表示されます。クリップボードにはこの画面の内容がコピーされます。

改訂履歴

reviese

ソースコードの変更履歴は を参照ください。

0.9.9 - MWSTAGE2020_10収録版

  • 最上位メニューにも [ウェブ] ボタンを追加し、関連リンクをブラウザで開けるようにした。

  • Linux版のフォルダ、ウェブ、VS Code で開く機能を実装した。

  • TWELITE 無線モジュールが頻繁に UART 出力している場合に、書き込みメニューへ遷移しづらいことがあった

0.9.8a

M5Stack版で MW-SLA-1J,E / MW-OSSLA-1J,E のデュアルライセンスとし、readme-j.txt を更新した。

0.9.8

ビューア一覧表示に[ウェブ]ボタンを追加し、関連サイトを開く機能を追加など。

改定内容

  • ビューア>コマンダーの追加

    • 標準アプリ 0x80 コマンド

    • NOTICE PALのLED制御 (App_Wingsにコマンドを送付)

  • ビューア>PALビューアのNOTICE PAL対応。

  • Actエクストラのメニューを追加

    • Act_samplesより高度なもの

    • 外部のオープンソースライブラリ(センサー手続きなど)を利用したもの

  • マウスによる操作を拡大 (リスト、ボタン、タブ)

    • マウス移動でフォーカス、左クリックで確定、右クリックは[ESC]キー入力

  • 画面表示負荷の低減

    • アプリケーションがバックグラウンドの時はスクリーンセーバーを無効にした

    • アプリケーションがバックグラウンドの時は、描画回数を減らして CPU 負荷を減らした

  • ビルドプロジェクト(Act, TWE_Apps, Actエクストラ)の一覧の機能強化

    • 項目選択時に下部に概要を表示 (000desc.txtを読み込む。TWE_Descクラスにより処理)

    • プロジェクトフォルダを開く(またはVSCodeで開く)機能

    • 関連ウェブサイトを開く機能

    • ALt+Shift+m mwxライブラリ、Alt+Shift+t twesettingsライブラリを開く機能

    • ビルドメニュー中で選択中のフォルダやビルドエラーファイルを開けるようにした。

  • ログ(シリアルポート入出力)機能の追加

    • (Alt/Cmd+L)でログの開始・終了

    • ログファイルを {TWELITE_Stage 実行形式のあるディレクトリ}/log に格納

    • ファイル名は twestage_{日付-時刻}.log

    • Shift+Alt/Cmd+L でログファイルディレクトリを開く

  • その他、変更・修正など

    • シリアル(FTDI)デバイス名、IDの表示方法を変更

    • App_UARTでインタラクティブモードに遷移しなかった問題を修正

    • ディレクトリドロップ時の挙動を変更した (これまではバイナリ書き込みになる場合があったが、メニュー遷移とした)

    • ターミナル長押し時[C]でリセットに加え、画面クリアするようにした。

既知の問題

  • M5Stack で設定を保存するときにハングアップし、設定内容が初期化される場合があります。

0.8.9

2020_05 リリース版

  • ウインドウアイコンの追加

  • BINファイル一覧画面での最大リスト数の制約を緩和 (win/linux/mac)

  • Glancerビューアの追加

  • 解説文面等の調整

  • コンソール画面の描画の調整

  • ファーム書き込み後の移動先画面(インタラクティブモードかターミナルか)の設定が動作していなかった

  • Alt(or Cmd)+W の割り当てを変更

  • その他不具合の修正

0.8.6

Linux 版リリース初版

0.8.5

リリース初版

TWELITE APPS ビルド&書換

Windows macOS Linux

TWELITE APPSのビルドと書き換えを行います。 (Windows/Mac/Linux)

TWENET C API によるC言語で記述され、そのまま利用いただく比較的規模の大きいソースコードが中心です。

この画面を開くと、プロジェクト一覧が表示されます。書き込みたいプロジェクトを選択すると、ビルド~書き込みを行います。書き込み終了後にEnterまたは[ B ]ボタンを押すことで、TWELITE無線モジュールをリセットし、インタラクティブモード画面(またはターミナル画面、要設定)に遷移します。

フォルダ

ビルド対象となるプロジェクトは以下になります。

操作

https://github.com/monowireless/mwm5
https://github.com/monowireless/TWELITE_STAGE_Bin_M5Stack/releases/tag/0.9.8a

キー

意味

ESC

キャンセル、前画面に戻る

Enter

入力、選択

カーソル↑↓

項目の選択

キー

意味

I

+ + + を入力します。インタラクティブモードに入るキーシーケンスです。 ※ スリープによる間欠動作を行うアプリは + + + ではインタラクティブモードになりません。

R

モジュールをリセットする。TWELITE R や MONOSTICK の機能を用いてリセットピンの制御を行います。

A, S, D

A, B, C ボタンを押します。

Shift + A, S, D

A, B, C ボタンを長押しします。

C

表示されている画面の文字列をクリップボードにコピーします。(画面によって範囲は異なります)

V

クリップボードからキーボード入力としてペーストします。

F

フルスクリーンに遷移します。Shift+Fは、可能であれば、より拡大します。

G

画面の描画方法を変更します。320x240の液晶画面をエミュレートしていますが、拡大時の描画方式として(1. 液晶モニタ風の描画 / 2. ブラウン管風の描画 / 3. ドットを目立たせた拡大 / 4. ドットをぼやかせた拡大)の4種類が選択できます。

※ 設定メニューで起動時設定にできます。

J

画面サイズを選択します。選択可能な画面サイズは(640x480 / 960x720 / 1280x720 / 1280x960 / 320x240)です。

※ 設定メニューで起動時設定にできます。

Q

TWELITE STAGE を終了します。

0

シリアルポートを切断し、再度シリアルポートの一覧を表示します。

1,2,..

シリアルポートを選択します。

L

シリアルポートの入出力のログを開始します。終了時にはログファイルが Windows であればメモ帳、macOS であれば ログビューアで開かれます。Shift+L でログ格納フォルダを開きます。

マウス

意味

マウスポインタの移動

クリック操作が可能な範囲にポインタを移動すると、文字列が反転したり文字の色が変わります。

左クリック

要素を選択します。クリック直後に要素中の文字列が太字表示になり、約0.3秒後に選択が実行されます。

右クリック

ESCキーの入力を行います。

ホイール

リスト項目では項目の上下選択を行います。

Alt(Cmd)を入力中の表示
画面下部の仮想[ B ]ボタンが表示されている例
ボタン[△(c)]にポインタを移動した例

操作

[ A ]

タブの移動(左)

[ A ] 長押し

この画面を抜け、選択画面に戻る。

[ B ]

割当なし

[ B ] 長押し

割当なし

[ C ]

タブの移動(右)

[ C ] 長押し

TWELITE 無線モジュールのリセットピンを制御し、リセットします。

ESC

この画面を抜け、選択画面に戻る。

項目

内容

宛先

送信先です。自身が子機の場合は「親機:0」宛を指定してください。自身が親機の場合は「全子機=0x78」または特定の子機ID(1..8まで指定可能)を指定します。

DI1..DI4

DI1からDI4までの設定状態です。■は選択(LOW=GNDレベル)、□は(HIGH=VCCレベル)を意味します。下項目のSELを指定してください。

SEL

各DIの選択ビット(0ならDIの指定は無視し、1なら指定を有効化する)

PWM1..4

PWMのデューティ比を設定します。0はGNDレベル相当、1024(100%)はVCCレベル相当です。N.A.にしたPWMポートは変更しません。

※ TWESTAGE基板のPWM1のLEDはVCCからの吸い込みとなっているため、0で最も明るく点灯し、100%では消灯となります。

項目

内容

子機ID

送信先です。1..8を指定します。子機にも同じIDを割り振っておきます。

色

点灯色を7色から指定します。白は2種類ありますが、1つはRGBの混色で1つは白色LED単体の点灯です。

明るさ

0..15で指定します。0は消灯です。

点灯点滅

点灯または点滅パターンを選択します。

点灯時間

コマンド発行後、一定時間経過すると自動的に消灯する機能です。

消灯ボタン

消灯メッセージを生成します。

点灯ボタン

現在の設定を送信します。

App_Twelite(標準アプリ)
0x80 コマンド
PAL(NOTICE PAL)
LED制御用のコマンド
{MWSTAGEインストールフォルダ}/MWSTAGE/Wks_TweApps

操作

[ A ]

メニュー選択 ↑

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

選択

[ B ] 長押し

関連ウェブサイト(プロジェクトフォルダの000desc.txtに登録がある場合)をOS標準のブラウザで開きます。

[ C ]

メニュー選択 ↓

[ C ] 長押し

フォルダ(プロジェクト、関連フォルダ)を開きます。設定メニューでVS Codeで開くように設定できます。

ESC

この画面を終了し、書換メニューに戻ります。

マウスクリック [ウェブ]

関連ウェブサイトを開きます。

マウスクリック [フォルダ] または [VSCode]

関連フォルダを開きます。

マウスクリック [▽] または [△]

次ページ、前ページに移動します。

ビルド~書き込み画面

ビルド・書換画面

Windows macOS Linux

ビルド中

ビルド中の画面です。ビルドコマンドの内容はコンソール画面に出力されます。画面中の ... はビルドしているファイル数、下部の暗い色の表示はビルドしているファイル名です。

ビルドエラー

ビルドがエラーの場合は、上記のような画面になります。再ビルドの実行やエラーログの表示を行えます。また、一定時間でタイムうとして直線のメニューに戻ります。

画面上のエラーメッセージは、代表的なもののみ表示されます。ビルドが失敗したときエラー内容のメッセージが表示されない場合もあります。

操作

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

エラー時に再ビルドする

[ C ]

エラーログを表示する (Windows/Mac)

エラーログは{プロジェクトフォルダ}/build/builderr.logです。

[ C ] 長押し

フォルダ(プロジェクト、関連フォルダ)を開きます。設定メニューでVS Codeで開くように設定できます。

ESC

この画面を終了し、書換メニューに戻ります。

書換中

ビルドが成功するとファームウェアを書き込む画面になります。

書換失敗

書換がエラーの場合は、上記のような画面になります。

操作

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

再度書換を行う(直前の書き換えメニューに戻ります。再書換のメニュー項目が選択されている状態なので、もう一度[ B ]を押すことで再書換操作になります)

ESC

この画面を終了し、書換メニューに戻ります。

書換完了

書換が無事成功すると上記のような表示になります。

操作

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

TWELITE無線モジュールをリセットして、インタラクティブモード画面(または設定によりターミナル)画面に移動します。

ESC

この画面を終了し、書換メニューに戻ります。

Actエクストラ

Windows macOS Linux

アクト(Act)のビルドと書き換えを行います。 (Windows/Mac/Linux)

Actエクストラは、外部のオープンソースライブラリなどを利用したもの、比較的複雑な処理を行うものを収録しています。

この画面を開くと、プロジェクト一覧が表示されます。書き込みたいプロジェクトを選択すると、ビルド~書き込みを行います。書き込み終了後にEnterまたは[ B ]ボタンを押すことで、TWELITE無線モジュールをリセットし、インタラクティブモード画面(またはターミナル画面、要設定)に遷移します。

フォルダ

ビルド対象となるプロジェクトは以下になります。

操作

{MWSTAGEインストールフォルダ}/
    MWSTAGE/Act_extras

操作

[ A ]

メニュー選択 ↑

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

選択

[ B ] 長押し

関連ウェブサイト(プロジェクトフォルダの000desc.txtに登録がある場合)をOS標準のブラウザで開きます。

[ C ]

メニュー選択 ↓

[ C ] 長押し

フォルダ(プロジェクト、関連フォルダ)を開きます。設定メニューでVS Codeで開くように設定できます。

ESC

この画面を終了し、書換メニューに戻ります。

マウスクリック [ウェブ]

関連ウェブサイトを開きます。

マウスクリック [フォルダ] または [VSCode]

関連フォルダを開きます。

マウスクリック [▽] または [△]

次ページ、前ページに移動します。

ビルド~書き込み画面

再書換

Windows macOS Linux

直前に指定・書換実行した項目を再選択します。

選択した項目によって、以下のいずれかの振る舞いになります。

  • 選択プロジェクトの再書換

  • 直線選択した一覧画面

画面

Windows/Mac/Linux

Windows macOS Linux

画面例 (Windows10)

TWELITE STAGEはコンソール画面(コマンドライン)から起動するアプリケーションです。コンソール画面とウインドウ画面の両方に情報が出力されます。

コンソール画面には、ターミナルと同様の出力が行われます。

一部の環境でコンソール画面の入力を受け付けますが、確認済みの正式機能という位置づけではありません。

M5Stack

M5Stack

App_Tweliteビューア画面例(最新版ではありません)

M5Stackでは、320x240画面上の液晶と3つのボタンを用いて操作します。各種操作にはキーボードを必須とするものもあるためキーボード接続を推奨します。

メインメニュー

Windows macOS Linux M5Stack

階層化されたメニューの最上位です。

メニュー

アプリ書換

Windows macOS Linux M5Stack

TWELITE無線マイコンのアプリ(ファームウェア)を書き換えます。

Windows macOS Linux では、アクト(Act)などソースコードからのビルド(コンパイル)を行い、書き込みます。

M5Stackでは、SDカードにあらかじめコピーしておいた、ビルド済みの.BINファイル(ファームウェア)を書き込むことができます。

指定

Windows macOS Linux

フォルダまたは.BINファイルをTWELITE STAGE APP 画面中にドラッグ&ドロップできます。ドロップした対象に対して操作を行うときに選択します。

.BINファイルをドロップしたときは、そのファイルが格納されるフォルダをドロップした場合と同様の振る舞いで、そのフォルダにあるファームウェア一覧が表示されます。

シリアルポートの選択

Windows macOS Linux

シリアルポートを選択しなおします。

Alt(Cmd)+0, Alt(Cmd)+1,2,.. による操作を行っても構いません。

M5Stack

M5Stack

M5Stack用の書き換えは以下をご覧ください。

ハードウェア接続

M5Stack Core または faces をお使いの方は TWELITE STAGE ボードを利用することを推奨します。

TWELITE STAGE ボード

TWELITE STAGE ボードのデータシートをご覧ください。

最小限の接続

TWELITE DIPとの接続例です。シリアルポート(UART)のTX,RXのみのシンプルな接続です。この接続では TWELITE 上のファームウェアの書き込みなどが行えません。

[M5Stack 15P]

    GPIO03
    GPIO01
    GPIO16 --- TWELITE DIO6/UART0 TX (TWELITE DIP #10)
    GPIO17 --- TWELITE DIO7/UART0 RX (TWELITE DIP #3)
    GPIO02
    GPIO05
    GPIO25
    GPIO26
    GPIO35
    GPIO36
       RST
       BAT
       3V3 --- TWELITE VCC (TWELITE DIP #28)
        5V
       GND --- TWELITE GND (TWELITE DIP #1,14)

シリアルポート以外の接続

以下の配線をすることで PGM/RESET/SET ピンが接続されます。TWELITE STAGEアプリケーションの全機能を利用する場合は以下の接続が必要になります。

ハードウェアの接続構成によっては、結線してはいけない場合もあります。ハードウェアの接続については M5Stack の資料も参考の上、十分注意して行ってください。

例: M5Stack faces の GPIO05 ピンは、キーパッドの割り込みピン(出力)が接続されているため、M5Stack側で出力制御を行うことはできません(故障の原因になりえます)。TWELITE STAGEアプリケーションでは、キーパッドに対応するI2Cデバイスを検出した場合は、出力制御しないようにしています。

[M5Stack 15P]

    GPIO03
    GPIO01
    GPIO16 --- TWELITE DIO6/UART0 TX (TWELITE DIP #10)
    GPIO17 --- TWELITE DIO7/UART0 RX (TWELITE DIP #3)
    GPIO02 --- TWELITE PGM   (TWELITE DIP #7)
    GPIO05 --- TWELITE DIO12 (TWELITE DIP #15)
    GPIO25
    GPIO26 --- TWELITE RESET (TWELITE DIP #21)
    GPIO35
    GPIO36
       RST
       BAT
       3V3 --- TWELITE VCC (TWELITE DIP #28)
        5V
       GND --- TWELITE GND (TWELITE DIP #1,14)

※ 上記配線にはPS/2接続は記載していません。

PAL ビューア

Windows macOS Linux M5Stack

TWELITE PALの通知メッセージを解釈します。

TWELITE無線マイコンにはApp_Wingsを書き込んでおき、通信相手のTWELITE PALからのシリアルメッセージが表示されていることを確認してから使用します。事前にApp_WingsのアプリケーションIDやチャネルを設定しておく必要があります。

通信相手はTWELITE PALです。

操作

[ A ]

リストの前ページに移動する。

[ A ] 長押し

この画面を抜け、前メニューに戻る

[ B ]

フォントを変更します。

[ B ] 長押し

テスト用のダミーデータによる画面表示を行います。

[ C ]

リストの次ページに移動する。

[ C ] 長押し

TWELITE 無線モジュールのリセットピンを制御し、リセットします。

ESC

ESCキーを入力することで、この画面を抜けます。

App_Wings経由で無線パケット由来のシリアルメッセージが得られたときに、PAL子機のID (1..32まで) に対応するリスト項目に、PALの種別とセンサー情報などを簡易表示します。

現在表示されるリスト画面中に新しく受信した情報が表示されたときは、そのエントリ行にカーソルが移動します。

TWELITE STAGE APP

TWELITE 統合環境

をご参照ください。 お気付きの点がありましたら、当サポート窓口にご連絡いただければ幸いです。

本資料は TWELITE STAGE APP バージョン 0.9 に対応します。

TWELITE STAGE APP (トワイライト ステージ アプリ) は、TWELITE 無線マイコンシリーズのアプリを書き換えたり、実行結果を閲覧するツールです。

Windows/macOS/Linux ではコンパイラ・サンプルコードなどを格納した MWSDK が含まれます。これら詳細は以下を参照下さい。

  • MWSDK全般 -

  • MWXライブラリ -

様々なプラットフォームで動作するように設計されています。

  • Windows10

  • macOS (High Sierra 以降)

  • Linux (Ubuntu18.04)

  • M5stack

※ プラットフォームによって、動作条件や配布形式、また実装機能が異なります。

本資料について

  • を参照ください。

  • 対応プラットフォームを示すため以下の記載しているページがあります。

    • Windows -- Windows10

    • macOS -- Mac OS X, macOS

    • Linux -- Linux (Ubuntuなど)

    • M5Stack -- M5Stack core, faces

最新版の取得

get latest version

TWELITE STAGE アプリは以下の方法で配布しています。

TWELITE STAGE SDK

https://mono-wireless.com/jp/products/stage/index.html

Windows/Mac/Linuxプラットフォーム用で、開発ツールなどを含め一式を配布します。

TWELITE STAGEバイナリ配布

最新のTWELITE STAGE SDK から TWELITE STAGE アプリのみの更新がある場合は、以下より配布します。

TWELITE STAGEアプリは、安定板として配布される最新版のTWELITE STAGE SDKでの動作を目的としています。より旧いSDKでは動作しなかったり正常動作しない場合があります。

Windows10

https://github.com/monowireless/TWELITE_Stage_BIN_Win

Mac (macOS)

https://github.com/monowireless/TWELITE_Stage_BIN_macOS

M5Stack

https://github.com/monowireless/TWELITE_STAGE_Bin_M5Stack

MWM5ライブラリ

TWELITE STAGE のソースコードを含む MWM5 ライブラリは以下より入手できます。

https://github.com/monowireless/mwm5

資料の取り扱いについて
https://sdk.twelite.info/
https://mwx.twelite.info/
https://twelite.gitbook.io/general/about_documents
ビルド&書き換え
シリアル電文(無線パケット)のモニター

TWELITE STAGEの設定

Windows macOS Linux M5Stack

各種設定を行います。

この画面のメニューはマウス操作できません。

以下の解説のメニュー中では、プラットフォームによっては存在しない項目がありますが、全てを列挙して解説します。

共通メニュー以外の色設定については、解説を省略します。

ルートメニュー

共通設定
 ターミナル
 標準アプリ ビューア
 PAL ビューア
 グランサー(簡易モニタ)
 コマンダー
 アプリ書換
 インタラクティブモード
セーブデータ ユーティリティ(ダンプ/消去)
情報

共通設定

a: (      0x00) 起動アプリ指定
G: (      0x00) 画面サイズ・描画方法
F: (          ) シリアルデバイスID
k: (         1) PS/2キーボードレイアウト
f: (0x00FFFFFF) 文字色
b: (0x005A0032) 背景色

設定

内容

起動アプリ

TWELITE STAGE始動時にビューアアプリに移動する設定です。設定値は1..{ビューアアプリメニューで列挙されている数}です。 ※ シリアルデバイスIDを設定しておかないと、始動時に接続するシリアルデバイス選択画面で入力待ちになります。

画面サイズ・描画方法

Windows macOS Linux XYの2桁の文字で指定します(X:画面サイズ Y:描画方法)

  • X 0:640x480 1:960x720 2:1280x720 3:1280x960 4:1920x1080 5:320x240

  • Y 0:LCD風 1:CRT風 2:ぼやけ 3:ブロック

シリアルデバイスID

Windows macOS Linux 設定はシリアルデバイス名または数値の1..9 を指定します。 ※ 数値の場合はデバイス列挙順になります。

PS/2キーボードレイアウト

M5Stack PS/2キーボードのレイアウトを指定します。0が英語、1が日本語レイアウトです。主に記号の配列が違います。

文字色・背景色

文字色、背景色を指定します。共通設定の色設定値は他の画面の設定にも継承されます。他の画面で未設定の場合は共通設定の色設定が採用されます。

色はRGB 24bitを16進数で指定しますが、内部的には16bit 565 形式に値が丸められます。

アプリ書換

f: (0x00FFFFFF) 文字色
b: (0x005A0032) 背景色
j: (         0) ビルド時のmakeジョブ数
v: (         0) codeでフォルダを開く(VSCode)
n: (         0) 書換完了後の画面

設定

内容

ビルド時のmakeジョブ数

Windows macOS Linux ビルドを行う際の並列ジョブ数です。適切な数を設定することでビルド時間の短縮を期待できます。 規定値0は論理プロセッサ数の半分でジョブ数を計算しています。目安としては論理プロセッサ数を上限とすると良いでしょう。

codeでフォルダを開く (VSCode)

Windows macOS Linux 1を設定することでOS標準のフォルダウインドウの替わりにcodeコマンド(VS Code)でフォルダを開きます。

書換完了後の画面

Windows macOS Linux M5Stack1を設定することでインタラクティブモード画面の替わりに、ターミナルを開きます。

セーブデータユーティリティ

r: Read sector.
R: Read ALL sectors.
e: Erase sector.
E: Erase ALL sectors.

この画面ではデータセーブ領域のメンテナンスを行うユーティリティです。EEPROM(64バイトを1セクタとして最大60セクタ、3840バイト)をエミュレートしています。

設定

内容

r

セクタを読み出します。0..59を入力すると、入力したセクタ番号のセクタの内容を表示します。

R

(YESを入力すると全セクタの読み出しを行いますが、一番最後の部分しか表示されません)

e

セクタを消去(0xFF)します。0..59を入力すると、入力したセクタ番号のセクタが消去されます。

E

YESを入力すると全セクタを消去します。

Windows macOS Linux ではTWELITE_Stage.savファイルに保存されます。 M5StackではフラッシュメモリのEEPROMエミュレート領域に保存されます。

LICENSE

ライセンス

モノワイヤレス 株式会社が配布するTWELITE_Stageの実行形式は MW-SLA-1J,1E が適用されます。

ソースコードについてはMW-OSSLA-1J,1Eが適用されます。概要はリンク先を参照ください。

お客様がソースコードからビルドした場合は、非商用目的でより制限の緩和されたMW-OSSLA-1J,1Eによる運用が可能です。

一部の配布パッケージ(2020/10/9現在では M5Stack用 0.8.9a パッケージのみ)ではMW-SLA-1J,1E と MW-OSSLA-1J,1E とのデュアルライセンスを適用しているものもあります。パッケージ内のライセンス記述を確認してください。

商用利用ではMW-SLA-1J,1Eを選択いただくことになりますのでご注意ください。

利用したオープンソース成果物

高品質なソースコードを提供いただいたオープンソースプロジェクトに感謝いたします。

名前

記述

SDL2

Simple DirectMedia Layer Copyright (C) 1997-2020 Sam Lantinga

getopt

Copyright (c) 1987, 1993, 1994

  • The Regents of the University of California. All rights reserved.

regex

regex - Regular expression pattern matching and replacement

  • By: Ozan S. Yigit (oz) Dept. of Computer Science York University

printf

Copyright (c) 2014 Marco Paland

東雲フォント

2001 The Electronic Font Open Laboratory

M+ BITMAP FONTS

Copyright 2002-2005 COZ

http://openlab.ring.gr.jp/efont/
[email protected]

ログ機能

Windows macOS Linux

TWELITE 無線マイコンとのシリアル通信のログを記録することができます。

ログの開始

Alt(Cmd)+Lキーを押します。

ログ記録の終了

ログ記録中にもう一度 Alt(Cmd) + L キーを押します。

ログの記録が終了し、その時のログファイルがOS標準の方法(Windowsならメモ帳、macOS ならコンソール)で開かれます。

ログの記録

TWELITE 無線マイコンから受信した文字列→そのまま記録されます

TWELITE 無線マイコンに送信した文字列→1文字ずつWindowsの場合は 「 」macOS/Linuxは « » で囲って記録します。

例えば«t»とある場合はキーボードからtを入力したことを意味します。

ログ記録のフォルダとファイル名

{TWELITE STAGE APP の実行形式のあるフォルダ}/log にログ開始時の日時を元にしたファイル名で保存されます。

Alt(Cmd)+Shift+L を押すことで、そのフォルダを開きます。

TWELITE STAGE BOARD-トワイライトステージボード - MONO-WIRELESS.COM
GitHub - monowireless/TWELITE_STAGE_Bin_M5StackGitHub
Logo
Logo