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

1.3

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...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

TWELITE STAGE APP

TWELITE STAGE アプリ

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

画像ファイル(スクリーンキャプチャ)で使われているものと使用中のバージョンが異なる場合があるため、画像中の表示文字列やメニュー順序等に差異がみられることがあります。

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

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

  • MWSDK全般 -

  • MWXライブラリ -

様々なプラットフォームで動作します。

  • Windows10

  • macOS (High Sierra 以降、Intel および Apple Silicon Mac に対応)

  • Linux (Ubuntu18.04)

  • Raspberry Pi (Raspberry Pi 3 Model B, Lcd Touch Screen, Raspberry Pi OS August-2020)

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

本資料について

  • を参照ください。

  • 対象のプラットフォームを示すため、一部のページでは以下を記載しています。

    • Windows -- Windows10

LICENSE

ライセンス

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

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

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

(M5stack : バージョン1.0 まで対応。v1.3以降はソースレベルで非対応です。)

macOS -- Mac OS X, macOS
  • Linux -- Linux (Ubuntuなど)

  • RasPi -- RaspberryPi

  • https://sdk.twelite.info/
    https://mwx.twelite.info/
    https://twelite.gitbook.io/general/about_documents
    ルートメニュー
    加速度リアルタイムグラフ
    一部の配布パッケージ(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, 1994The Regents of the University of California. All rights reserved.

    regex

    regex - Regular expression pattern matching and replacementBy: Ozan S. Yigit (oz) Dept. of Computer Science York University

    printf

    Copyright (c) 2014 Marco Paland

    東雲フォント

    2001 The Electronic Font Open Laboratoryhttp://openlab.ring.gr.jp/efont/

    MW-OSSLA-1J,1E

    M+ BITMAP FONTS

    Copyright 2002-2005 COZ [email protected]

    SQLiteC++

    Copyright (c) 2012-2021 Sebastien Rombauts ([email protected])

    sqlite3

    All of the code and documentation in SQLite has been dedicated to the public domain by the authors.

    アプリ書換

    アプリ書換

    Windows macOS Linux RasPi

    TWELITE のアプリ(ファームウェア)を書き込みます。

    • ビルド済みの.BINファイルを書き込む

    • アクト(Act)などソースファイルからビルドして書き込む

    ソースファイルのビルド、ターミナル切断、書き込みユーティリティ起動、ターミナル接続といった煩雑さを解消します。

    • TWELITE BLUE/REDを自動認識する

    • 書き込み終了後にリセットしてインタラクティブモード、またはターミナルに移動する

    • 各プロジェクトのリストから、プロジェクトフォルダまたはVSCodeを起動する (Raspberry Pi版を除く)

    • 各プロジェクトのリストから、関連情報のウェブページを開く \Linux版、Raspberry Pi版を除く)

    Windows

    TWELITE_Stage インストール (Windows10)

    Windows

    環境

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

    • Windows10 バージョン 1903

    グラフ

    グラフ

    • : 加速度センサーのパケットをリアルタイムで表示します。周波数領域の表示や CVS 保存機能があります。

    • : TWELITE 各種センサーのデータを sqlite3 データベースに保存し、グラフを表示します。

    VisualStudio 2019 (32bit ビルド)

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

    MONOSTICK や TWELITE-R は、 FTDI社の USBシリアル変換IC FT230 / FT232 シリーズを搭載しています。これらを利用するために、デバイスドライバのインストールが必要となる場合があります。

    PC がMONOSTICK や TWELITE-R を認識しない場合には、https://www.ftdichip.com より D2XX ドライバをインストールしてください。

    Visual C++ ランタイムライブラリの追加インストール

    場合によっては、Visual Studio 2019 の Visual C++ 頒布可能コード(ランタイムライブラリ)が必要です。

    アプリケーションの起動時にエラーが出て起動しない場合は、本パッケージで再配布している TWELITE_Stage¥INSTALL¥VC_redist.x86.exe を実行するか、マイクロソフト社のウェブサイトから入手してください。なお、再配布バイナリは 32bit です。

    加速度リアルタイムグラフ
    センサーグラフ

    ビューア

    ビューア

    Windows macOS Linux RasPi

    ビューアは、接続した TWELITE から受信した情報を表示したり、コマンドを送ったりするための機能です。

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

    簡易モニタ

    簡易モニタ

    • CUEビューア : TWELITE CUE からのパケットを解釈して簡易表示する

    • ARIAビューア : TWELITE ARIA からのパケットを解釈して簡易表示する

    • Glancer : TWELITE の多くの形式に対応した簡易モニタ

    指定

    指定

    Windows macOS Linux

    フォルダまたは.BINファイルをTWELITE STAGE APP の画面にドラッグ&ドロップできます。 ドロップした対象のビルドや書き込みを行うときに選択します。

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

    その他仕様など

    その他仕様など

    画面

    画面

    Windows macOS Linux RasPi

    画面例、メニュー

    Windows / macOS / Linux / Raspberry Pi

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

    コンソール画面には、ターミナルと同様にUART出力を表示します。

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

    Raspberry Pi (nox)

    X11を使わず、フレームバッファに表示します。

    通常(フレームバッファ上のシェル画面から起動した場合)はコンソール画面は表示されません。

    BINから選択

    BINから選択

    Windows macOS Linux RasPi

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

    選択画面

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

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

    プラットフォーム
    場所

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

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

    ログ機能

    ログ機能

    Windows macOS Linux RasPi

    TWELITE と PC 間のシリアル通信のログを記録できます。

    ログの開始

    Windows macOS Linux RasPi

    TWELITE と PC 間のシリアル通信のログを記録できます。

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

    ログ記録の終了

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

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

    Raspberry Pi では、ログファイルの保存だけを行います。ファイルを開く機能はありません。

    ログの記録

    TWELITE から受信した文字列は、そのまま記録されます。

    TWELITE に送信した文字列は、1文字ずつ記録されます。Windowsの場合は 「 」、 macOS/Linux/RaspBerryPiは « » で囲われます。

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

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

    Windows macOS Linux RasPi

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

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

    インストール

    インストール

    動作環境によっては、本アプリケーションの動作に各種設定が必要です。問題が生じた場合には、本資料の記述を参考にして環境を整備してください。

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

    • 配布時に十分注意しておりますが、お客さまの側でもウィルスやマルウェアが含まれていないことを確認いただくようお願いします。

    macOS

    TWELITE_Stage インストール (macOS)

    macOS

    環境

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

    • macOS 10.14 (Mojave, Intel)

    再書換

    再書換

    Windows macOS Linux RasPi

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

    項目によって、以下のいずれかを行います。

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

    「アプリケーションの配布と実行について」 も併せてご覧ください。以下の内容を含みます。

    • 本来のファイルとダウンロードしたファイルの同一性の確認について

    • macOS/Windowsにおけるコード署名の取り扱いについて

    TWELITE STAGE SDK のインストール手順

    ① アーカイブを取得

    各プラットフォーム (Windows / macOS / Linux) 用の TWELITE STAGE SDK を ダウンロード します。

    ② アーカイブを展開

    ダウンロードしたZipアーカイブを展開します。

    展開先のファイルパスには、半角数字 0..9、半角アルファベットa..zA..Z、一部の記号 -_. 以外の空白や漢字・ひらがな等を含めないでください。

    Windows の場合の例

    • × C:\work\作業\

    • × C:\Users\user1\work dir\

    • 〇 C:\Work\Work1

    ③ ファイルを確認

    展開先のフォルダを確認します。

    通常 C:\Work 上に配置したアーカイブは C:\Work\MWSTAGE に展開されますが、展開ソフトによってはフォルダ名が異なる可能性があります。 必要に応じて変更してください。

    文中では展開したフォルダ (例 C:\Work\MWSTAGE ) を {MWSTAGE インストール} のように表記する場合があります。

    展開先のフォルダ {MWSTAGE インストール} には、以下が含まれます。

    • TWELITE STAGE アプリ

      • Windows の場合:TWELITE_Stage.exe(通常版)、TWELITE_Stage_VSCode.exe(VSCode対応版)

      • macOS の場合:TWELITE_Stage.command(通常版)、TWELITE_Stage_VSCode.command(VSCode対応版)

      • Linux の場合:TWELITE_Stage.run(通常版)、TWELITE_Stage_VSCode.run(VSCode対応版)

    • TWELITE STAGE - TWELITE STAGE APP の関連ファイル

    • MWSDK - ライブラリ、ソースコードなど

    • Tools - ビルドするためのツールチェインなど

    • BIN - TWELITE STAGE APP の [BINから選択]メニューで参照されるTWELITE 向け.BINファイル

    • log - TWELITE STAGE APP のログ機能やデータベースファイルの保存先

    • flask_wsns_db - Python, Flask, sqlite3 による簡易的なサーバ

    詳細は「フォルダ構成」をご覧ください。

    プラットフォーム別の情報

    以下を参照してください。

    • Windows

    • macOS

    • Linux

    • Raspberry Pi

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

  • 直前に選択した一覧の再表示

  • Windows, macOS, Linux, Raspberry Pi

    {MWSTAGEフォルダ}/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
           ...

    macOS 12.4 (Monterey, Apple Silicon)

    依存するソフトウェアや警告ダイアログについて

    下記の事象が発生した場合には、 TWELITE_Stage の動作のために、実行の許可やインストールが必要です。

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

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

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

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

    make ユーティリティの追加インストール

    場合によっては、make ユーティリティをインストールしなくてはなりません。

    macOSバージョンの違いなどにより、別の手順で行う必要があるかもしれません。

    コマンドライン (zsh) から make を実行したときに、エラーが出る場合には Command Line Tools をインストールします。

    インストールが完了したら、make を入力して以下のメッセージの出力を確認します。

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

    MONOSTICK や TWELITE R には、 FTDI社 (https://www.ftdichip.com) の USBシリアル変換IC FT232 シリーズを、TWELITE R2 には FT230 シリーズを搭載しています。これらを利用するために、デバイスドライバのインストールが必要となる場合があります。

    TWELITE_Stage を起動してもシリアルポートが表示されない場合は、FTDI社のドライバをアンロード(無効化)してください。

    このユーティリティは MONOSTICK や TWELITE-R を挿入した際にOS標準のデバイスドライバのロードを抑制するだけでなく、同じ USB の ID を持つそれ以外のデバイスについてもデバイスドライバのロードを抑制します。

    https://www.ftdichip.com/Drivers/D2XX.htm より D2xxHelper をダウンロードできます。 なお、TWELITE STAGE SDKの TWELITE_Stage/INSTALL フォルダにも同じものを収録しています。

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

    FTDI 関連のドライバをアンロードするには、以下のコマンドを実行します。

    $ xcode-select --install
    $ make
    make: *** No targets specified and no makefile found.  Stop.
    $ sudo kextunload -b com.apple.driver.AppleUSBFTDI

    グランサー

    CUE/ARIA ビューア

    Windows macOS Linux RasPi

    Glancerは、受信メッセージ中の情報を簡易的に表示します。接続する TWELITE には App_Wings を書き込んでおき、通信相手のTWELITE (App_Twelite, TWELITE PAL, ... アプリケーションIDとチャネルを一致させれば混在も可) からの情報を表示します。

    Glancer は、glance(=ちらりと見る、一瞥)する人という意味の英単語です。

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

    一覧表示

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

    操作

    選択表示

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

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

    操作

    Actビルド&書換

    Actビルド&書換

    Windows macOS Linux RasPi

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

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

    選択画面

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

    VSCodeを利用する設定(アプリ書換>codeでフォルダを開く)になっている場合は、ビルドは行わずbuild/以下のを開きます。

    フォルダ

    ビルド対象のプロジェクトは以下のパスに配置しています。

    操作

    操作

    ARIA ビューア

    ARIA ビューア

    Windows macOS Linux RasPi

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

    本解説中は旧バージョンのキャプチャ画像です。

    Linux

    TWELITE_Stage インストール (Linux)

    Linux

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

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

    標準アプリ ビューア

    標準アプリ ビューア

    Windows macOS Linux RasPi

    のを解釈して表示します。

    PCに接続する TWELITE に App_Twelite(標準アプリ) または App_Wings(親機・中継機アプリ) を書き込んでおき、通信相手のTWELITEから受信したデータがターミナルに表示されることを確認してから使用します。

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

    操作

    ターミナル

    ターミナル

    Windows macOS Linux RasPi

    ANSI エスケープシーケンス(の一部)に対応した簡易的なターミナルです。TWELITE と PC 間の入出力を直接扱います。

    操作

    インタラクティブモード

    インタラクティブモード

    Windows macOS Linux RasPi

    接続した TWELITE のインタラクティブモードを利用します。

    この画面はターミナルとほぼ同じ振る舞いをしますが、インタラクティブモードに遷移するための操作と離脱の検出を行うなど、インタラクティブモードに固有の機能を追加しています。

    • 接続する TWELITE には、インタラクティブモードに対応したファームウェアをあらかじめ書き込んでおく必要があります。

    TWELITE のリセットピンを制御し、リセットします。

    ESC

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

    TWELITE のリセットピンを制御し、リセットします。

    ESC

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

    [ A ]

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

    [ A ] 長押し

    この画面を抜け、前メニューに戻ります。

    [ B ]

    選択表示に移行します。

    [ B ] 長押し

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

    [ C ]

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

    [ A ]

    割当なし

    [ A ] 長押し

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

    [ B ]

    割当なし

    [ B ] 長押し

    割当なし

    [ C ]

    割当なし

    [ C ] 長押し

    [ C ] 長押し

    [ A ] 長押し

    この画面を抜けて、前のメニューに戻ります。

    [ B ]

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

    [ B ] 長押し

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

    [ C ]

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

    [ C ] 長押し

    TWELITE のリセットピンを制御し、リセットします。

    ESC ESC

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

    [ A ]

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

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

    ESC

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

    マウスクリック [ヘルプ]

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

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

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

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

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

    [ A ]

    メニュー選択 ↑

    [ A ] 長押し

    この画面を抜けて、前のメニューに戻ります。

    [ B ]

    選択

    [ B ] 長押し

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

    [ C ]

    メニュー選択 ↓

    ビルド~書き込み画面
    BINファイルを書き込む画面

    [ C ] 長押し

    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

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

    Centos 7

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

    アプリケーションの登録

    必要に応じて、お使いのデスクトップ環境に合った方法でアプリケーションを登録してください。

    デスクトップ上のファイルアイコンから、TWELITE_Stage.run を実行できない場合があります。 これは、システムが TWELITE_Stage.run を実行形式として認識できない場合があるためです。

    Ubuntu 16.04, 18.04, 20.04

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

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

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

    TWELITE の入出力を使用するため、シリアル通信に文字化けなどが発生した場合など、期待通りにインタラクティブモードへの遷移や離脱ができない場合もあります。

  • マウス操作には対応しておりません。キーボード(カーソル↑↓での操作は可能)操作を行ってください。

  • ターミナルによるインタラクティブモードへの遷移と操作もできます。

    • ターミナルでは、自動的にSETピンの操作を行いません。手動でSETピンをLOに設定する必要があります。

    • + + + 入力Alt(Cmd)+IやモジュールリセットAlt(Cmd)+Rを行う操作については定義されています。

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

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

    {MWSTAGEインストールフォルダ}/MWSTAGE/Act_samples
    $ 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'"
    $ 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'"
    $ cd ./MWSTAGE/TWELITE_Stage/INSTALL/ubuntu/
    $ ./make_launch_icon.sh
    [画面黒背景にする]
      ↓
    [TWELITEのリセット (制御可能ならSET=LO)]
      ↓
    <間欠動作アプリのインタラクティブモードメッセージを検出?> --YES--> [操作画面]へ
      ↓タイムアウト
    ['+' を3回入力]
      ↓
    <通常アプリのインタラクティブモードメッセージを検出?> --YES--> [操作画面]へ
      ↓タイムアウト
    [操作画面へ] ※ この状態はインタラクティブモードではない
    
    [操作画面]
      ↓
    <インタラクティブモード脱出メッセージ?> --> [終了]
      ↓
    <画面離脱操作 [ A ] 長押しなど> --> [終了]
      ↓
    <ESC ?> -> <入力中判定> --NO-> [終了]
      ↓            ↓
    [入力文字列をTWELITEへ送信]
      ↓
    [操作画面]へ戻る
    
    [終了]
      ↓
    [TWELITEのリセット]
      ↓
    [画面離脱] インタラクティブモード画面を終了し前の画面へ戻る
    TWELITE ARIA
    画面例:温湿度表

    TWELITE ARIAのデフォルト設定(ARIAモード)は、コイン電池でも動作できるスリープを用いた間欠駆動をしながら、いくつかの要因により起床し、起床後様々な情報を送信しいます。

    起床要因

    • タイマーの起床(設定値による定期起床)

    • 磁気センサーによる起床(磁石が近づいたことを検出した場合)

    送信データ

    • モジュール電源電圧

    • 磁気センサーの検出値

    • 温湿度データ

    パケット

    パケットの基本情報を表示します。

    項目
    解説

    #????

    これまでの受信パケット数です。

    種別

    の値で、パケット種別です。TWELITE ARIAからのパケットは通常PKT_PAL=02になります。

    ID

    送信元の論理IDです。通常は0..100の値になります。

    AD

    送信元のシリアル番号です。

    LQ

    LQI、電波強度に対応する値です。

    データ表

    TWELITE ARIAから受信した過去9回分のデータの履歴を表示します。上にあるほど新しいデータです。

    時間(s)

    TWELITE STAGE APPが起動してからデータを受信するまでの時間[秒]です。

    ID

    モジュールの論理デバイスIDです。

    VCC(mV)

    モジュールの電源電圧[mV]です。

    温度(C)

    モジュールが計測した温度(℃)です。

    湿度(%)

    モジュールが計測した湿度(%)です。

    磁石

    検出された磁石の極または未検出を表示します。

    磁気センサーの検出による起床かどうかを表示する機能はありません。

    TWELITE ARIA

    [ A ]

    割当なし

    [ A ] 長押し

    この画面を抜けて、前メニューに戻ります。

    [ B ]

    フォントを変更します。

    [ B ] 長押し

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

    [ C ]

    割当なし

    [ C ] 長押し

    TWELITE のリセットピンを制御し、リセットします。

    ESC

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

    CUE ビューア

    CUE ビューア

    Windows macOS Linux RasPi

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

    本解説中は旧バージョンのキャプチャ画像です。

    TWELITE CUE

    TWELITE CUEのデフォルト設定(CUEモード)は、コイン電池でも動作できるスリープを用いた間欠駆動をしながら、いくつかの要因により起床し、様々なデータを送信します。

    CUEモードはTWELITE CUEの動作を確認できるようにするため、搭載するセンサーやLEDのすべてを動作させます。

    起床要因

    • タイマーの起床(設定値による定期起床)

    • 加速度の検出による起床

    • 磁気センサーによる起床(磁石が近づいたことを検出した場合)

    送信データ

    • 検出イベント(後述)

    • モジュール電源電圧

    • 磁気センサーの検出値

    • 加速度データ

    パケット

    パケットの基本情報を表示します。

    項目
    解説

    イベント

    TWELITE CUEのデフォルトでは、必ず加速度イベントを出力します。起床要因に関わらず、起床後には一定サンプル数の加速度計測を行います。この加速度の計測結果に応じてイベントを送信します。

    検出イベント
    番号
    解説

    加速度により起床の検出閾値・イベントの検出条件について、定量的な定義は案内しておりません。

    電圧

    モジュールの電源電圧[mV]です。

    磁石

    検出された磁石の極または未検出を表示します。

    磁気センサーの検出による起床かどうかを表示する機能はありません。

    加速度

    起床後に計測された加速度を表示します。

    画面例

    使用方法

    operation manual

    TWELITE STAGE アプリ の画面・操作方法を解説します。

    アプリの起動方法

    TWELITE STAGE アプリを起動するには、 {MWSTAGE インストール} にある実行形式を実行します。

    アップデートなどでTWELITE STAGE アプリの実行形式を差し替える場合には、必ず、指定フォルダ {MWSTAGE インストール} にコピーしてください。 それ以外のパスに実行形式を配置した場合の動作は未定義です。

    実行はプラットフォーム(Windows, macOS, Linux)によって方法が違います。

    システム
    ファイル拡張子
    備考

    アプリの実行形式

    2種類の実行形式があります。

    • TWELITE_Stage.{拡張子} - 標準設定で起動します。

    • TWELITE_Stage_VSCode.{拡張子} - 「VSCode を使う」設定済みです(設定はTWELITE_Stage_VSCode.iniに保存されている)。VSCodeを使う設定を有効にすると、VSCodeを用いた開発作業に適した動作を行うようになります。

    TWELITE STAGE APP は複数起動してもエラーになりませんが、複数起動すると不都合のある機能(センサーグラフ機能など)が存在します。

    したがって、複数のアプリを同時に起動する際には、実行形式を複製して、別々のファイルを立ち上げる必要があります。 各種設定ファイルや入出力ファイルが分離されるため、互いの干渉を避けることができます。

    アプリの実行画面

    アプリを起動すると、以下の2種類のウィンドウが表示されます。

    • メイン画面

      • TWELITE STAGEのユーザインタフェースを表示します。

        • TWELITE STAGEの操作はこの中で行います。

    アプリの終了

    いずれかの方法で終了してください。

    • 実行画面上の右上にマウスポインタを移動し、画面内に表示された終了ボタンを押します。

    • 実行画面のウインドウを閉じます(macOSの場合は⌘Qも使用できます)。

    ごくまれに、終了操作をしても実行画面が残る場合があります。その場合には、以下をお試しください。

    • TWELTIE STAGE APPのコマンドライン画面を閉じる。

    • 強制終了を行う(強制終了の操作方法はお使いのシステムの解説を参照してください)。

    ビルド・書換画面

    ビルド・書換画面

    Windows macOS Linux RasPi

    ビルド中

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

    コンパイル中

    ビルドエラー

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

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

    操作

    書換中

    ビルドが成功すると、ファームウェアを書き込む画面を表示します。

    書換失敗

    書換がエラーの場合は、上記のような画面を表示します。

    操作

    書換完了

    書換が無事に成功すると、上記のような画面を表示します。

    v1.0.2以降では、ファームウェア書き換え後に、書き換え内容を読み出して確認するベリファイ処理を行います。

    操作

    TWELITE APPS ビルド&書換

    TWELITE APPS ビルド&書換

    Windows macOS Linux RasPi

    TWELITE APPSのビルドと書き換えを行います。

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

    TWELITE APPS ビルド&書換

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

    VSCodeを利用する設定(アプリ書換>codeでフォルダを開く)になっている場合は、ビルドは行わずbuild/以下のを開きます。

    フォルダ

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

    操作

    操作

    環境変数について

    環境変数について

    TWELITE STAGE APP では、内部的に環境変数を設定して make などのビルドプログラムの動作を行います。事前に環境変数の設定は不要です。

    内部的に設定される環境変数

    環境変数
    解説

    MWSDK_ROOT

    標準では TWELITE STAGE APP の実行形式が格納されるフォルダにある MWSDK フォルダ(つまり../MWSTAGE/MWSDK)が指定されます。 MWSDK.iniが指定される場合は、指定されたフォルダ名を採用します。

    参考1

    .vscode/settings.json の設定例(抜粋)

    "../../"で始まる定義は、TWELITE STAGEアプリからプロジェクトを開く場合は不要です。環境変数MWSDK_TWENET_LIBSRCを設定しない場合に、既定のフォルダ構成の時にソース参照先を指定しています。

    シリアルポート選択

    シリアルポート選択

    Windows macOS Linux RasPi

    シリアルポート選択

    Windows / macOS / Linux では、始動時にTWELITEが接続されたシリアルポートを選択する画面を表示します。 ただし、シリアルポートは、あとから接続することもできます。

    TWELITE STAGEアプリでは、シリアルポートの選択と各画面の処理は連携しません。 例えば、シリアルポートの選択をしていない状態で、ビューアを起動しても表示は更新されません。この状態でシリアルポートを選択すると、ビューワの表示が更新されます。

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

    Windows

    cキーを押すと、リストで反転中のシリアルポートのCOMポート名が表示されます。

    Raspberry Pi

    Raspberry Pi ではUSBデバイスに加えて/dev/serial0 /dev/serial1があれば serial0, serial1 を表示します。なお、通常はserial0を使用します。

    フォルダ構成について

    フォルダ構成について

    TWELITE STAGE APP は、TWELITE STAGE SDKパッケージ内のフロントエンドアプリケーションとして動作します。ここでは、そのフォルダ構成について解説します。

    MWSDK フォルダ

    MWSDK フォルダには、TWELITE のソフトウェアを構築するためのライブラリや、サンプル、TWELITE APPS のソースコードが含まれます。

    Actエクストラ

    Actエクストラ

    Windows macOS Linux RasPi

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

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

    最新版の取得

    最新版の取得

    最新版のTWELITE STAGE アプリは、以下のいずれかの方法で取得できます。

    TWELITE STAGE SDK 全体(公式サイト)

    モノワイヤレス公式サイトでは、TWELITE STAGE アプリを含む開発ツール一式(Windows/macOS/Linux用)を配布しています。

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

    TWELITE STAGE アプリのみ(GitHub)

    モノワイヤレス公式リポジトリでは、TWELITE STAGE アプリ単体のバイナリを配布しています。 TWELITE STAGE アプリだけを更新する場合や、M5Stack版を取得する際にはこちらをご利用ください。 各バイナリのバージョンはGitHub上のtagから識別できます。

    TWELITE STAGEアプリは、安定板として配布された最新のTWELITE STAGE SDKにおける動作を目的としています。 したがって、古いSDKでは、新しいTWELITE STAGEアプリが正常に動作しない恐れがあります。

    Windows

    https://github.com/monowireless/TWELITE_Stage_BIN_Win

    macOS

    https://github.com/monowireless/TWELITE_Stage_BIN_macOS

    Linux

    Linux 版のバイナリは個別に配布しておりません。 バイナリは TWELITE STAGE SDK パッケージから取得してください。 もしくは、ソースコードからビルドしてください。

    Raspberty Pi

    Raspberry Pi 版のバイナリは個別に配布しておりません。 バイナリは TWELITE STAGE SDK パッケージから取得してください。 もしくは、ソースコードからビルドしてください。

    M5Stack

    バージョン 1.0.3a までを以下のページで配布しております。

    https://github.com/monowireless/TWELITE_Stage_BIN_M5Stack

    ソースコード (MWM5ライブラリ)

    TWELITE STAGE のソースコードを含む MWM5 ライブラリは以下のページで公開しています。

    https://github.com/monowireless/mwm5

    TWELITE STAGE アプリのソースコードは、examples/TWELITE_Stageに配置しています。

    https://mono-wireless.com/jp/products/stage/index.html
    コマンド画面
    • 通常は使用しませんが、補助情報を表示します。

      • シリアル通信の内容が表示されるため、ログを確認する用途に最適です。

      • コマンドラインから実行した場合には、実行元のターミナルがコマンド画面となります。

    Windows

    .exe

    エクスプローラで実行形式をダブルクリック。

    macOS

    .command

    ファインダーから実行形式をダブルクリック。

    Linux, RaspberryPi

    .run

    ディストリビューションやインストール環境に依存します。Xウインドウシステム上のターミナル画面(xtermなど)から、コマンドとして実行します

    STAGE画面例

    SQ

    パケットの続き番号です。

    E_PKT

    [ A ] 長押し

    この画面を抜けて、前のメニューに戻ります

    [ B ]

    エラー時に再ビルドする

    [ C ]

    エラーログを表示する (Windows/macOS) エラーログは{プロジェクトフォルダ}/build/builderr.logです。

    [ C ] 長押し

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

    ESC

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

    [ A ] 長押し

    この画面を抜けて、前のメニューに戻ります

    [ B ]

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

    ESC

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

    [ A ] 長押し

    この画面を抜けて、前のメニューに戻ります。

    [ B ]

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

    ESC

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

    コンパイル中
    書換中
    書換失敗
    書換完了

    パケットの続き番号です。

    #????

    これまでの受信パケット数です。

    種別

    E_PKTの値で、パケット種別です。TWELITE CUEからのパケットは通常PKT_PAL=02になります。

    ID

    送信元の論理IDです。通常は0..100の値になります。

    AD

    送信元のシリアル番号です。

    LQ

    LQI、電波強度に対応する値です。

    ダイス

    1(0x00) .. 6(0x06)

    定期起床と磁気センサー検出起床を起点に判定します。起床後に大きな加速度が検出される場合は、判定不可としたイベント(0xFF)を検出する場合があります。

    ムーブ

    16(0x10)

    加速度センサーが一定の基準を超えた加速度を検出して起床したときに、ムーブまたはシェイクのイベントが発生します。ムーブは、計測した加速度の変化が比較的小さい場合に発生します(加速度の変化は検出したが、連続的な加速度の変化がなかった場合に発生します)。

    シェイク

    8(0x08)

    加速度センサーが一定以上の加速度を検出して起床したときに、ムーブまたはシェイクのイベントが発生します。シェイクは、計測した加速度の変化が比較的大きい場合に発生します。(加速度の変化は検出し、連続的な加速度の変化が検出できた場合に発生します。シェイクの名前の通り、本体を振り続けたときに発生します)

    サンプル

    加速度のサンプル数を表示しています。10サンプル固定です。

    レートID

    加速度のサンプルレートです。04固定で100Hzです。

    X,Y,Z

    3つの軸の加速度です。8サンプル分の平均値として求めています。単位はミリG (1000mG=1G=9.8m/s2)です。

    画面例:面の検出
    画面例:ムーブ(加速度の検出)
    画面例:シェイク(振り続けた)

    SQ

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

    ESC

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

    マウスクリック [ヘルプ]

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

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

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

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

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

    [ A ]

    メニュー選択 ↑

    [ A ] 長押し

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

    [ B ]

    選択

    [ B ] 長押し

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

    [ C ]

    メニュー選択 ↓

    ビルド~書き込み画面
    BINファイルを書き込む画面

    [ C ] 長押し

    MWSDK_TWENET_LIBSRC

    サンプルコードやTWELITE APPSのソースコードフォルダには、Microsoft社の Visual Studio Code (VS Code) 用の定義ファイルを予め作成しています。この定義ファイル中にVS Codeエディタ中でコード解釈を行う目的でライブラリソースコードの参照先を指定しますが、この環境変数を用いています。 MWSDK_TWENET_LIBSRC環境変数が適切に指定されると、MWSDK以下ではないプロジェクトフォルダでもコード解釈が行われ、ライブラリ関数名の補完などが機能します。(参考1)

    LANG=C

    ツールチェインのメッセージを規定の言語(英語)にするため、明示的に設定しています。

    PATH

    Windowsでは、SDK添付のmsysユーティリティへのPATHを追加します

    MWSDK_MAKE_JOBS MWSDK_MAKE_DISABLE_LTO

    VS Codeの設定定義で利用します。 JOBS : STAGE APPで設定された並列ビルド数を渡します DISABLE_LTO : LTOを無効化します(Windows)

    TWELITE_Stage.sav

    TWELITE Stage アプリ内での設定情報を記録します。

    ファイル名は TWELITE_Stage アプリのファイル名 + .sav です。

    TWELITE_Stage.ini

    iniファイルの詳細はこちら。

    • MWSDK= MWSDK/ フォルダの替わりに別のフォルダを指定したいときに編集します。複数のライブラリバージョンを混在させる場合に便利です。上記の例では MWSDK2020_10フォルダを利用します。

    • LANG= TWELITE Stage の表示言語を英語にする場合は LANG=en を指定します。

    設定の異なる TWELITE Stage を実行する

    TWELITE_Stage.exe (Windows の場合) を別のファイル名でコピーします。 例えば TWS1.exe と変更した場合は、TRS1.sav, TRS1.ini という設定ファイルを参照します。

    BIN フォルダ

    TWELITE STAGE APP の [BINから選択] メニューを選択したときには、このフォルダにある ファームウェアファイル (.BIN) を利用します。

    log フォルダ

    TWELITE STAGE APP でシリアルポートのログ機能を実行したときには、このフォルダにログファイルを格納します。

    グラフ機能を用いた場合のデータベースファイルの格納先や、csvファイルの出力先もこのフォルダです。

    Tools フォルダ

    gcc, g++ など、クロスコンパイラの toolchain 等が含まれます。

    プラットフォーム特有のユーティリティもこのフォルダに格納されます。詳しくは Tools/readme.txt を参照してください。

    flask_wsns_db フォルダ

    TWELITE STAGE APP のセンサーグラフビューアで作成したデータベースにアクセスするためのPythonのサンプルスクリプトです。 本サンプルでは表やグラフでデータをWebブラウザで閲覧することができます。

    詳しくは flask_wsns_db/README.html を参照してください。

    ビルドプロジェクトフォルダについて

    本機能は標準的に提供する機能ではないものとして紹介します。記載の内容と異なった動作になる場合もあります。

    フォルダの検索順

    TWELITE STAGE APP は、以下の順でビルドプロジェクトフォルダ (Act_samples など) を検索します。

    1. TWELITE STAGE アプリが起動したときのフォルダ

    2. TWELITE STAGE アプリの実行形式があるフォルダ

    3. {MWSDKフォルダ}/..

    4. {MWSDKフォルダ}

    MWSDK は TWELITE STAGE APP の実行形式があるフォルダを起点に検索します。

    Wks_Acts

    Wks_Acts フォルダを作成した場合には、Act_samples フォルダの替わりに、このフォルダをメニューの[Actビルド&書換]メニューから参照します。

    自身で作成するビルドプロジェクトを Wks_Acts に格納したいといった用途を想定しています。

    {MWSTAGEインストールフォルダ}/MWSTAGE/Wks_TweApps
        "C_Cpp.default.includePath": [
            "${env:MWSDK_TWENET_LIBSRC}/include/**",
            "${env:MWSDK_TWENET_LIBSRC}/src/**"
        ],
        "C_Cpp.default.browse.path": [
            "${env:MWSDK_TWENET_LIBSRC}/include/**",
            "${env:MWSDK_TWENET_LIBSRC}/src/**"
        ],
    MWSTAGE/            : TWELITE STAGE SDK インストール
      TWELITE_Stage.??? : 実行形式 (Windwows .exe, macOS .command, Linux .run)
      TWELITE_Stage.sav : 設定ファイル
      TWELITE_Stage.ini : その他設定
      TWELITE_Stage/    : TWELITE STAGE APP の関連ファイル
    
      MWSDK/            : MWSDKのライブラリなど
      BIN/              : [BINファイル選択]時の格納先
      log/              : ログ・データベース格納先
    
      Tools/            : gcc コンパイラなどのツール一式
    
      flask_wsns_db/    : Python, Flask, sqlite3 による簡易的なサーバ
    MWSDK/
      Act_samples/        : mwx ライブラリによるサンプルコード
      Wks_TweApps/        : TWELITE APPS のソースコード
      Act_extras/         : mwx ライブラリによるより専門的なサンプル、他のライブラリを引用したもの
      TWENET/             : TWENET ライブラリ (mwx ライブラリなど)
      ChipLib/            : 半導体ライブラリ
      MkFiles/            : Makefile の本体処理部分
      docs/               : ライブラリマニュアルなど
      LICENSE             : MWSDKのライセンス記述
      000manifest         : MWSDKのバージョン情報
      ReleaseNotes.md     : 更新履歴(トップページ)
      ReleaseNotes_en.md  : 更新履歴(英語)
      ReleaseNotes_jp.md  : 更新履歴(日本語)
    この画面を開くと、プロジェクト一覧が表示されます。書き込みたいプロジェクトを選択すると、ビルド~書き込みを行います。書き込み終了後にEnterまたは[ B ]ボタンを押すことで、TWELITE をリセットし、インタラクティブモード画面(またはターミナル画面、要設定)に遷移します。

    ビルド~書き込み画面

    VSCodeを利用する設定(アプリ書換>codeでフォルダを開く)になっている場合は、ビルドは行わず build/ 以下のBINファイルを書き込む画面を開きます。

    フォルダ

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

    操作

    操作

    [ A ]

    メニュー選択 ↑

    [ A ] 長押し

    この画面を抜けて、前のメニューに戻ります。

    [ B ]

    選択

    [ B ] 長押し

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

    [ C ]

    メニュー選択 ↓

    選択画面

    コマンドライン引数とiniファイル

    コマンドライン引数と ini ファイル

    コマンドライン引数

    コマンドライン引数は、TWELITE STAGE APPのいくつかの細かい設定を行います。

    コマンドライン引数
    内容

    -E 0

    フェードアウトのようなグラフィカルな効果を無効にする。

    iniファイル

    iniファイルはTWELITE STAGE APPの基本的な設定(MWSDKのフォルダを参照するなど)を行うために使用されます。

    iniファイル名は{TWELITE STAGE APPの実行ファイルのベース名} + .ini です。 通常は TWELITE_Stage.ini となります。

    シンタックス

    • ini ファイルはプレーンテキストファイルとして記述される。

    • キーと値は = で区切られた1行に格納される (例: KEY=value)。

    • キーと値の文字列は行頭から始まる(キーの前に空白や他の文字は許されない)。

    設定

    キー
    値

    異なる設定の TWELITE STAGE APP を実行する

    異なる設定の TWELITE STAGE APP が必要な場合は、TWELITE STAGE APPと同じフォルダに実行ファイルをコピーして、同じ名前の .ini ファイルを作成します。

    例えば、英語のインターフェースを使用する場合、TWELITE_Stage.exe(注: .exe はWindowsの実行ファイルの拡張子)を TWELITE_Stage_en.exe にコピーして、 LANG=en の設定を TWELITE_Stage_en.ini に書き込むことで、英語のインターフェースを有効化した実行ファイルを作成できます。

    コマンダー

    コマンダー

    Windows macOS Linux RasPi

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

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

    操作

    [ A ]

    タブ:TWELITE

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

    項目
    内容

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

    タブ:NOTICE

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

    項目
    内容

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

    画面下部の表示

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

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

    [ C ] 長押し

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

    ESC

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

    マウスクリック [ヘルプ]

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

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

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

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

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

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

    点灯ボタン

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

    タブの移動(左)

    [ A ] 長押し

    この画面を抜けて、選択画面に戻ります。

    [ B ]

    割当なし

    [ B ] 長押し

    割当なし

    [ C ]

    タブの移動(右)

    [ C ] 長押し

    TWELITE のリセットピンを制御し、リセットします。

    ESC

    この画面を抜けて、選択画面に戻ります。

    宛先

    送信先の TWELITE を指定します。自身が子機の場合は「親機: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

    送信先の TWELITE PAL のIDを指定します。値の範囲は 1..8 です。

    色

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

    明るさ

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

    点灯点滅

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

    点灯時間

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

    App_Twelite(標準アプリ)
    0x80 コマンド
    通知PAL(NOTICE PAL)
    LED制御用のコマンド

    消灯ボタン

    キーと値の間にスペースを入れてはならない。

  • コメント行は ; または # を行頭に追加する。

  • -R {type}

    {type} 値でレンダリングタイプを設定します。 0: デフォルト 1: OpenGL 2: DirectX(Windows) Metal(macOS) 3: ソフトウェア

    -J

    ゲームコントローラーを有効にします。

    -x {x_pos}, -y {y_pos}

    起動時のTWELITE STAGE Appのグラフィカルウィンドウの位置を設定します。{x_pos}と{y_pos}はウィンドウの左上のスクリーン座標です。

    MWSDK

    MWSDKのフォルダを変更する。デフォルトのフォルダは、TWELITE STAGE APPの実行ファイルが置かれているのと同じフォルダにある MWSDK です。古いMWSDKやカスタムMWSDKを使用する必要がある場合は、そのフォルダの名前を指定することができます。

    LANG

    LANG=en は、ユーザーインターフェースの言語をデフォルト(日本語)から英語に変更します。

    GEOM_X, GEOM_Y

    TWELITE STAGEアプリのウィンドウが表示される場所を変更する。

    ;;; MWSDKの参照を変更します。
    ; MWSDK=MWSDK
    mwsdk=mwsdk2020_10
    
    ;;; インターフェース言語
    ; LANG=en
    
    ;;; ウィンドウのジオメトリ
    GEOM_X=200
    GEOM_Y=100
      TWELITE_Stage.exe
      TWELITE_Stage.ini | 特別な設定なし
    
      TWELITE_Stage_ja.exe | TWELITE_Stage.exe のコピー
      TWELITE_Stage_en.ini | LANG=en が設定されている。

    キー操作・マウス操作

    キー操作・マウス操作

    Windows macOS Linux RasPi

    TWELITE STAGE APP の操作について解説します。

    キー操作

    Windows

    TWELITE STAGEの設定

    TWELITE STAGEの設定

    Windows macOS Linux RasPi

    各種設定を行います。

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

  • 画面の色を変更した場合に見づらくなる場合があります。

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

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

    ルートメニュー

    共通設定

    設定
    内容

    起動アプリ

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

    画面サイズ・描画方法

    Windows macOS Linux RasPi XYの2桁の文字で指定します(X:画面サイズ Y:描画方法)X 0:640x480 1:1280x720 2:1280x960 3:1920x1440 4:2560x1440 5:320x240, Y 0:LCD風 1:CRT風 2:ぼやけ 3:ブロック

    シリアルデバイスID

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

    文字色・背景色

    文字色、背景色を指定します。共通設定の色設定値は他の画面の設定にも継承されます。他の画面で未設定の場合は共通設定の色設定が採用されます。色はRGB 24bitを16進数で指定しますが、内部的には16bit 565 形式に値が丸められます。

    ボーレート

    TWELITE 側のボーレートが 115200 でない場合に、ターミナルなどの表示が化けないように設定します。

    アプリ書換

    設定
    内容

    ビルド時のmakeジョブ数

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

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

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

    書換完了後の画面

    Windows macOS Linux RasPi 1を設定することでインタラクティブモード画面の替わりに、ターミナルを開きます。2を設定することで、書換メニューに戻ります。TWELITE_Stage_VSCodeでは2に設定されています。

    LTOを行わない

    Windows WindowのコンパイラはLTOの仕組みにより少しだけ小さいバイナリを生成することが可能ですがリンクに時間がかかります。この手順を省略しより高速なリンクを可能とします。

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

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

    設定
    内容

    r

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

    R

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

    e

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

    E

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

    Windows macOS Linux Raspberry Pi では、 {実行形式名}.sav すなわち TWELITE_Stage.sav ファイルに保存されます。

    設定画面
    共通設定
     ターミナル
     標準アプリ ビューア
     グラフ表示 (加速度リアルタイム/センサー)
     簡易モニター (CUA/ARIA/Glancer)
     グランサー(簡易モニタ)
     コマンダー
     アプリ書換
     インタラクティブモード
    セーブデータ ユーティリティ(ダンプ/消去)
    情報
    a: (      0x00) 起動アプリ指定
    G: (      0x00) 画面サイズ・描画方法
    F: (          ) シリアルデバイスID
    f: (0x00FFFFFF) 文字色
    b: (0x005A0032) 背景色
    B: (    115200) ボーレート
    f: (0x00FFFFFF) 文字色
    b: (0x005A0032) 背景色
    j: (         0) ビルド時のmakeジョブ数
    v: (         0) codeでフォルダを開く(VSCode)
    l: (         0) LTOを行わない
    n: (         0) 書換完了後の画面
    r: Read sector.
    R: Read ALL sectors.
    e: Erase sector.
    E: Erase ALL sectors.
    macOS
    Linux
    RasPi

    Alt(⌘)を押しながら行うキー入力は、 TWELITE STAGE APPの設定を変える操作等に割り当てられています。 その他のキー操作は、通常は文字入力として機能します。

    共通のキー

    Windows macOS Linux RasPi

    キー
    意味

    ESC ESC

    素早く2回ESCを押す。キャンセル、または前画面に戻る。画面によっては1回のESCで前画面に戻ります。

    Enter

    入力、選択

    カーソル↑↓

    項目の選択

    ヘルプ画面

    Windows macOS Linux RasPi

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

    ヘルプ画面は画面の左上部分にマウスポインタを移動することでも表示できます。

    ヘルプ画面

    Alt(⌘)+操作

    Windows macOS Linux RasPi

    Windows/macOS/LinuxでのAlt(⌘)を押しながら行う操作について解説します。

    表中ではAlt(⌘)+の表記は省略しています。上記のヘルプ画面から使用可能なキーを確認できますが、下表に補足説明を示します。

    Alt(⌘)+キー

    意味

    I

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

    R

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

    A, S, D

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

    Shift + A, S, D

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

    C

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

    その他の操作

    キー
    意味

    Alt(⌘)+Shift+Ctrl+m

    MWX ライブラリコードのフォルダを開きます。

    Alt(⌘)+Shift+l

    log フォルダを開きます。

    マウス操作

    Windows macOS Linux RasPi

    マウス操作は左クリックが中心ですが、右クリック、右ダブルクリック、ホイールを使う場合があります。

    マウス操作
    意味

    左クリック

    選択

    左クリックしながらドラッグ

    画面によって利用(グラフ画面でのドラッグ)

    左ダブルクリック

    使用しない

    右クリック

    画面によって利用する

    右ダブルクリック

    画面から脱出する(ESC ESCと同様)

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

    Windows macOS Linux RasPi

    画面下部のメニュー表示にマウスポインタを移動すると、[ A ], [ B ], [ C ] という表記のボタンが表示されます。 TWELITE STAGE APPは、この3つ並びのハードウェアボタンを模したメニューに画面ごとの機能を割り当てています。 このボタンを左クリックまたは左長押しクリックすることで、機能を呼び出しできます。(Alt(⌘)+a,s,d または Alt(⌘)+Shift+a,s,dでも選択可能)

    画面下部の仮想[ B ]ボタンの表示例

    マウスによる画面操作

    Windows macOS Linux RasPi

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

    コマンダー画面例

    テキストのみの構成ですが、画面上部のタブや、反転表示の文字はマウスの左クリックで選択可能です。

    V

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

    F

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

    G

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

    J

    画面サイズを選択します。選択可能な画面サイズは {640,480}, {1280, 720}, {1280,960}, {1920,1440}, {2560,1440}, {320,240} です。 ※ 設定メニューで起動時設定にできます。

    Q

    TWELITE STAGE APPを終了します。

    0

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

    1,2,..

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

    L, Shift+L

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

    ホイール

    画面によって利用する(グラフ画面で拡大縮小)

    RaspberryPi

    TWELITE_Stage インストール (Raspberry Pi)

    RasPi

    TWELITE Stage アプリは、一部を除く Raspberry Pi でも動作します。

    • マウスとタッチスクリーンに対応します。

    • ビルドツールチェインが付属しており、コンパイルもできます。

    • 実行形式には、X11版のほかにフレームバッファ版(nox)があるほか、半透明エフェクトなどを省略した軽量版があります。

    お使いの RaspberryPi の OS 種別、バージョン、インストール状況によっては動作しない場合や、再コンパイル等が必要になる場合があります。

    環境

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

    • ハードウェア

      • Raspberry Pi 3 Model B

      • LCD Screen: Raspberry Pi Touch Display (7")

    • ソフトウェア

    既知の問題・制限事項

    • 1回目の起動で /dev/serial0 の動作に失敗することがあります。

    • Raspberry Pi 4B では /dev/serial0 の動作は未検証です。

    • Raspberry Pi 4B ではタッチスクリーンの動作は未検証です。

    アーカイブの展開

    ダウンロードしたアーカイブファイルは、パス名に空白や日本語などが含まれないフォルダに展開します。

    以下ではRaspberry Piのホームフォルダに展開しています。

    フォルダ構成

    デバイスドライバ

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

    USBデバイスのIDを以下に示します。

    • ベンダーID 0x0403

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

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

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

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

    上述の環境では、raspi-config よりシリアルポートの設定をすることで /dev/serial0 が利用できます。

    配線例

    • TWELITE, Raspberry Pi それぞれのマニュアルを参照してください。

    • DIP# は TWELITE DIP のピン番号です。

    • 上記の配線は TWELITEが安定稼働することを保証するものではありません。

    TWELITE Stage アプリの起動

    • フレームバッファ版はX11のデスクトップ上では動作しません。X11を終了しておきます。

    • TWELITE_Stage.runを実行します。スクリーン画面上のTWELITE Stageアプリが表示されます。

    留意事項

    • マウスとタッチパネルに対応します。

    • TWELITE Stage アプリ中で、入力した文字はコンソール画面にも表示される場合があります。

    その他

    /dev/dri

    TWELITE_Stage.run 起動時に以下のエラーが出る場合がありますが、無視して構いません。

    メモリ不足

    CPU数が4以上の場合、ビルド時はCPU数を一つ引いた値の並列コンパイルを実行します(4コアなら3並列)。 場合によってはメモリ不足が発生するかもしれません。その場合は並列数を変更してください。

    RaspberryPi 4

    この情報は十分な検証を行っていません。

    以下の設定が必要です。OpenGL関連のドライバが有効にする必要があります。

    • raspi-config の Advanced Settings → A2 GL Driver → G2 GL (Fake KMS) を選択します

    • libgles-dev パッケージを導入しておきます

    • タッチスクリーンの動作は未検証です

    改訂履歴

    revision history

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

    プラットフォームによっては、配布中の最新バージョンと改訂履歴の最新バージョンが一致しない場合があります。

    1.3.8 MWSTAGE2022_07収録版

    メジャーバージョンアップ。

  • Raspberry PI OS (32bit) Lite (Version:August 2020)

  • TWELITE STAGE への入力文字列が/dev/tty1上で動作してるシェルやgettyへ入力文字列がそのまま渡されます。/dev/tty1から起動することを推奨します。
  • 他のインストールや動作のプログラム(X11など)に影響を受けることがあります。

  • $ cd /home/pi
    $ unzip MWSTAGE2020_XX_YYYY.zip
    ../MWSTAGE
         TWELITE_Stage.run    TWELITE_Stage アプリ
         BIN/                 ファームウェアBINファイル
         MWSDK/               MWSDK ライブラリなど
         TWELITE_Stage/       TWELITE_Stage アプリ関連ファイル
    $ 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'"
      $ sudo raspi-config
    
      メニューより
      "3 Interface Options    Configure connections to peripherals"
      →"P6 Serial Port Enable/disable shell messages on the serial connection"
    
      以下のようにログインシェルとしては利用しない、ハードウェアを有効化するを選択します。
      "Would you like a login shell to be accessible over serial?" -> <No>
      "Would you like the serial port hardware to be enabled?" → <Yes>
     [TWELITE]               [RaspberryPi]
      GND  ------------------ Gound (#6,#9,#14,#20,#25,#30,#34,#39のいずれか)
      TXD(DIO6,DIP#10) ------ GPIO15/UART0 RXD (#10)
      PRG(SPIMISO,DIP#7) ---- GPIO23 (#16)
      RXD(DIO7,DIP#3) ------- GPIO14/UART0 TXD (#8)
      RST(RESETN,DIP#21) ---- GPIO22 (#15)
      VCC  ------------------ 3V3 (#1,#17のいずれか)
      SET(DIO12,DIP#15) ----- GPIO12 (#32)
      "The path /dev/dri/ cannot be opened or is not available"
    内部描画解像度を320x240から640x480ピクセルに変更
  • 加速度センサーのリアルタイムグラフの追加

  • センサーデータの保存とグラフ表示を行うセンサーグラフを追加

  • 英語表示に対応

  • 主要マニュアルをローカルhtmlファイルに変更

  • 1.0.8 MWSTAGE2021_09収録版

    • [ A ] [ B ] [ C ]ボタンで、ポインタから外れたボタンが残ってしまう場合があった

    • STAGE APPでEnter入力の際にTWELITEに対してCRLFを送信するようにした

    • MacのFTDIライブラリを更新しApple Silicon(M1)でもシリアル仲介プログラムを利用しなくても、動作できるようになった

    • Windowsでmsysツール群のPATHを内部設定し、期待しないmakeが呼び出されないようにした

    • TWELITE未接続でも書き込み画面に移動できるようにした(B,Rキーを入力し、対象のTWELITEモデルを指定する)

    • VSCodeを利用する設定を行った場合は、ActやTweAppsを選択したときに、ビルドを実行せず、build/以下の.binファイルを書き込む画面を開くようにした。(ビルドはVSCodeから実施します)

    • いくつかの環境変数を内部的に設定し、TWELITE STAGEから起動したVSCodeにこれらを参照させることで、VSCodeから適切なビルドを実行、VSCodeのコード解釈に対して適切なライブラリソースを参照できるようにした

    • MWSDKフォルダ以下にサンプルコードが格納されているが、ビルド対象のフォルダをドロップすることで、MWSDK以外のフォルダでもビルドや書き込み作業をできるようにした(フォルダ名に空白や日本語文字などが含まれてはいけません)

    • 始動時のコンソール画面に、内部のフォルダ設定や環境変数の設定内容を表示するようにした

    • 終了時は1秒待ってからSTAGE APPを終了するようにした

    1.0.7pre2

    • Raspberry Pi の対応を強化 (1.0.7pre2)

      • serial0 の対応(TWELITE STAGE HAT)

      • Zero 向けビルドを追加(対応ライブラリでビルド&描画フェード機能を無効化)

      • X11 デスクトップ向けビルドを追加

    • 一般のFTDIデバイス(FT232,FT230)でも利用できるようにした。ファームウェア書き込みモードは手動で行う必要があります

    • Windowsで、シリアルポート選択画面でcキーを押すことでWindowsで割り当てられているCOMポートを表示する機能を追加した

    • ボーレートを115200bpsから変更できるようにした

    • 描画フェード機能を無効にするコマンドラインオプション(-E 0)を追加。

    1.0.3 MWSTAGE2020_12収録版

    • TWELITE CUE対応(パーサー・CUEビューア)

    • 書換メニューで、書き込み時にベリファイ(比較)を行うようにした。

    • Apple Silicon暫定対応(TWELITE_Stage.command はユニバーサルアプリ、シリアル処理用の外部コマンドsersrv_ftdi.command、Toolsは Rosetta2 で動作可能な intel バイナリを再ビルド、シリアル通信は外部コマンド経由のため遅くなります)

    • フォルダ構成で MWSTAGE/MWSDK/Tools を MWSTAGE/Toolsに移動した。(MWSDKをMWSDK_COMMONレポジトリをそのまま利用できるようにするため)

    • TWELITE_Stage.ini (起動ファイル名から拡張子を取り除き .ini を付加) を、起動時に読み込みMWSDKフォルダを選択できるようにした。(古い版のライブラリ一式を簡単に切り替えられるようにした)

    • 画面描画用のSDL2ライブラリを 2.0.12 に変更した (Windows, MacOS, RaspberryPi)。

    • Windows では static ビルドとして DLL ファイル不要とした。

    • make -j による並列ビルド数を(物理CPU数 - 1)とした。

    • 書換メニューのいくつかの場所で、シリアルポートの再オープンを明示的に行うようにした。デバイスの抜き差しを行ったときなどにUSB接続が切断した場合などに、復帰しやすいようにした。

    • Alt(Cmd)+Shift+m, t で mwx, twesettings を開くとき TWENET/usever.mk 記載のフォルダを

       開くようにした。

    • [Raspberry Pi] 初回起動時に /dev/serial0 での書込メニュー遷移が失敗する問題を修正。

    既知の問題

    • 起動時にAlt(Cmd)押し下げ時のヘルプメッセージが出現しない場合がある。Alt(Cmd)+0を入力することで表示されます。

    • 書換メニューでファイル名が長すぎる場合に、行の行事が乱れる場合がある。

    • Apple Siliconでの動作については十分な検証を行っていません。

    0.9.11 MWSTAGE2020_10, Raspberry Pi 版 (暫定版)

    (※包括的な検証を実施しないバージョンです)

    • Raspberry Pi での動作

    • その他、機能調整

    0.9.9 - MWSTAGE2020_10収録版

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

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

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

    1.0.3 MWSTAGE2020_12収録版

    • TWELITE CUE対応(パーサー・CUEビューア)

    • 書換メニューで、書き込み時にベリファイ(比較)を行うようにした。

    • Apple Silicon暫定対応(TWELITE_Stage.command はユニバーサルアプリ、シリアル処理用の外部コマンドsersrv_ftdi.command、Toolsは Rosetta2 で動作可能な intel バイナリを再ビルド、シリアル通信は外部コマンド経由のため遅くなります)

    • フォルダ構成で MWSTAGE/MWSDK/Tools を MWSTAGE/Toolsに移動した。(MWSDKをMWSDK_COMMONレポジトリをそのまま利用できるようにするため)

    • TWELITE_Stage.ini (起動ファイル名から拡張子を取り除き .ini を付加) を、起動時に読み込みMWSDKフォルダを選択できるようにした。(古い版のライブラリ一式を簡単に切り替えられるようにした)

    • 画面描画用のSDL2ライブラリを 2.0.12 に変更した (Windows, MacOS, RaspberryPi)。

    • Windows では static ビルドとして DLL ファイル不要とした。

    • make -j による並列ビルド数を(物理CPU数 - 1)とした。

    • 書換メニューのいくつかの場所で、シリアルポートの再オープンを明示的に行うようにした。デバイスの抜き差しを行ったときなどにUSB接続が切断した場合などに、復帰しやすいようにした。

    既知の問題

    • 起動時にAlt(Cmd)押し下げ時のヘルプメッセージが出現しない場合がある。Alt(Cmd)+0を入力することで表示されます。

    • 書換メニューでファイル名が長すぎる場合に、行の行事が乱れる場合がある。

    • Apple Siliconでの動作については十分な検証を行っていません。

    0.9.11 MWSTAGE2020_10, Raspberry Pi 版 (暫定版)

    (※包括的な検証を実施しないバージョンです)

    • Raspberry Pi での動作

    • その他、機能調整

    0.9.9 - MWSTAGE2020_10収録版

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

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

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

    0.9.8a

    https://github.com/monowireless/TWELITE_STAGE_Bin_M5Stack/releases/tag/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/Cmd+L)でログの開始・終了

      • ログファイルを {TWELITE_Stage 実行形式のあるフォルダ}/log に格納

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

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

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

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

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

    既知の問題

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

    0.8.9

    2020_05 リリース版

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

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

    • Glancerビューアの追加

    • 解説文面等の調整

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

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

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

    • その他不具合の修正

    0.8.6

    Linux 版リリース初版

    0.8.5

    リリース初版

    https://mwm5.twelite.info/changes
    https://github.com/monowireless/mwm5

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

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

  • Shift+Alt/Cmd+L でログファイルフォルダを開く

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

    センサーグラフ

    センサーグラフ

    Windows macOS Linux RasPi

    各種センサーデータをデータベースファイルに記録します。また TWELITE STAGE APP 画面上で簡易的に計測値を参照する機能もあります。

    同一実行形式名の TWELITE STAGE APP を複数起動して、センサーグラフを同時に使用することはできません。

    データベースファイルは {MWSTAGEインストール}/log フォルダに格納され、TWELITE_STAGE APP 実行形式名をもとにファイル名が決まります。同一実行形式の場合、同じデータベースファイルを参照するためです。TWELITE STAGE APPの実装では、複数のアプリが同時に同一のデータベースにデータを追加することを想定していません。また、状況によってはデータベースファイルのアクセスエラーとなり、TWELITE STAGE APP がクラッシュすることもあります。

    例えば、MONOSTICK を2台接続して、同時に複数の「センサーグラフ」を動作させたい場合には、各々別の実行形式名 (TWELITE_Stage_a.exe, TWELITE_Stage_b.exe) とした TWELITE STAGE アプリを実行します。この時のデータベースファイル名は log/TWELITE_Stage_a_WSns.sqlite, log/TWELITE_Stage_b_WSns.sqlite です。

    • データの保存には sqlite3 を使用しており、 {MW_STAGE Install}/log/{実行形式名}_WSns.sqlite というファイルに格納されます。

    • 画面遷移は [一覧(グラフプレビューあり)]>[24時間データ] >[ライブビュー]です。

      • [24時間データ] から更に [年] [月] [日(グラフプレビューあり)] 選択画面に遷移できます。

    操作

    操作
    内容

    センサーノードのメモ(補助情報)の編集

    v1.3.9以降

    「24時間データ画面」上で、画面右上のセンサーノードのメモ部分を左クリックすると、メモを編集するためのプロンプトになります。

    キー
    内容
    • IME入力時の操作方法は、利用のシステムに依存する場合があります。

    • IME入力時の操作によっては期待しない文字列が入力される場合があります。不要な文字列が入力エリアに表示された場合は BS キーで不要部分を削除します。

    画面遷移

    画面は一覧、24時間、ライブの3種類が基本になります。

    センサーグラフモードの起動時に開く

    [STAGE 共通設定→起動アプリ指定]にて32を指定する。

    DBのテーブルについて

    sensor_data

    カラム名
    型
    解説

    sensor_node

    センサーノードにテキストメモ(付加情報)を格納する目的で利用する。

    カラム名
    型
    解説

    sensor_last

    最後に受信したタイムスタンプを管理する目的で使用する。

    カラム名
    型
    解説
    [ライブ]表示画面について
    • 一覧から特定のノードを選択します。

    • 1秒おきのリアルタイム表示を行い、過去450秒前までのデータを表示します。

  • [24時間データ] 表示画面について

    • 特定の日のデータを表示します。

    • 1秒おきの取得とし、複数データが有る場合は間引かれます。

    • 最大拡大時(1ピクセル1秒)以外は、各ピクセル範囲での取得値の平均により表示します。

    • 値が画面よりはみ出す場合は上下端に測定点を表示します。

    • 現在時間が含まれる場合は、新しいデータが来ると表示更新します。

    • ホイール、カーソル↑↓:時間軸の拡大・縮小

    • マウスの移動:マウスポインタに対応する時間軸にある取得データを簡易表示します。

      • カーソル→、←:隣の取得データに移動します。

    • クリック&ドラッグ:スクロール(拡大時のみ)

    • 拡大時はスクロールバーによる操作も可能です。

    • [CSV出力] 機能では、データベースに含まれるすべての取得値を表示します。

  • データの抽出は https://sqlitebrowser.org/ のツールを使ってください。

  • 1日単位グラフに移動する

    [<<一覧]

    一覧選択画面に移動する

    [年] [月] [日]

    年月日で、特定日を選択する

    [最新]

    今日のデータに移動

    [CSV出力]

    1日分のデータをCSVファイルに出力

    一覧で [表示]

    リストの表示方式を変更する

    一覧で [ソート]

    リストの並び順を変更する

    一覧で [↑]

    リストの並び順を反転する

    タイムスタンプのミリ秒部分です。

    year

    INTEGER

    タイムスタンプよりローカル時間の年部分です。

    month

    INTEGER

    タイムスタンプよりローカル時間の月部分です。

    day

    INTEGER

    タイムスタンプよりローカル時間の日部分です。

    hour

    INTEGER

    タイムスタンプよりローカル時間の時部分です。

    lid

    INTEGER

    ユーザにより割り当てられた LID などの識別値です。

    lqi

    INTEGER

    受信強度の目安値です (Link Quality Indicator) 。

    pkt_seq

    INTEGER

    パケットの続き番号です。どのような値を取りうるのかはファームウェアによって異なります。

    pkt_type

    INTEGER

    無線パケットの種別です。 2 PAL AMB, 6 ARIA 1 PAL MAG *3 PAL MOT,5 CUE 0x101 App_Twelite, *0x103 App_IO *現時点で非対応

    value

    REAL

    計測値 (パケット種別によって定義が異なります) pkt_type-> 2,6: 温度 1: 磁石の判定有無 00->磁石なし, 01->N極, 02->S極 3,5: X軸加速度(パケット中に複数サンプル含まれる場合は平均値)[G] 0x101,103: 入力IOのビットマップ(val_dioの下位8ビットと同値)

    value1

    REAL

    計測値 (パケット種別によって定義が異なります) pkt_type-> 2,6: 湿度[%] 1: 未使用 3,5: Y軸加速度(パケット中に複数サンプル含まれる場合は平均値)[G] 0x101: ADC1[V] ,103: 未使用

    value2

    REAL

    計測値 (パケット種別によって定義が異なります) pkt_type-> 2: 照度[lx], 6: 未使用 1: 未使用 3,5: Z軸加速度(パケット中に複数サンプル含まれる場合は平均値)[G] 0x101: ADC2[V], 103: 未使用

    value3

    REAL

    計測値 (パケット種別によって定義が異なります) pkt_type-> 2: 未使用, 6: 未使用 1: 未使用 3,5: 未使用 0x101: ADC3[V], 103: 未使用

    val_vcc_mv

    INTEGER

    電圧[mV]

    val_dio

    INTEGER int32_t

    b0..b7: DI1..DI8の値 (1はLO, 0はHIGHレベル) b24..b25: マグネット値 (b28が1の場合), 00->磁石なし, 01->N極, 10->S極 b28: 1の場合マグネットデータがb24..b25に格納される b31: 定期送信ビット(マグネットのみ)

    val_adc1_mv

    INTEGER

    pkt_type->1,2,3,0x101: ADC1の計測値

    val_adc2_mv

    INTEGER

    pkt_type->0x101: ADC4の計測値

    val_aux

    INTEGER

    その他データ格納目的

    ev_src

    INTEGER

    イベント発生元

    ev_id

    INTEGER

    イベントID pal_type->5: 1...6→サイコロ 16→MOVE ... 他(TWELITE CUE の資料参照)

    ev_param

    INTEGER

    イベントパラメータ

    pkt_type

    value

    value1

    value2

    value3

    val_vcc_mw

    val_dio

    ev_id

    マウスドラッグ(グラフ部分)

    拡大時に表示位置を移動

    マウスドラッグ(下部スクロールバー)

    拡大時に位置を移動

    カーソル→, ←

    サンプル表示の移動

    カーソル↑, ↓, ホイール

    サンプル横軸の拡大・縮小

    [ライブ]

    最新到着データを表示する1秒刻みビューに移動する

    通常文字

    通常の英数文字列を直接入力すると画面上にも表示されます。

    IME での入力

    IMEからの入力は画面左上部分に入力途上の文字列が表示されます。ENTERキーで入力中の文字列を確定します。

    BS

    表示されている末尾の文字を削除します。

    ENTER

    入力した文字列をデータベースに反映します。

    _uqid

    INTEGER

    データベースで使用する続き番号

    sid

    INTEGER int32_t

    int32_t 型で格納しているシリアル番号です。"8123abcd" というシリアル番号の場合は整数値で -2,128,368,691 の値が格納されます

    ts

    INTEGER

    システムがパケットを受信した時刻で、int64_t 型で格納されるタイムスタンプ値です。UNIX epoch (エポック、1970年からの経過秒) です。

    ts_msec

    sid

    INTEGER

    上述のSID

    sid_text

    TEXT

    SIDを16進数文字列に変換したもの(可読性のため)

    desc

    TEXT (UTF-8)

    SIDに対応するメモ(補助情報)で、一覧などで一緒に表示する。

    sid

    INTEGER

    上述のSID

    ts

    INTEGER

    最後の受信時のタイムスタンプ

    lid

    以下、最後に受信時のデータの抜粋

    lqi

    センサーノードのメモ編集中(IMEオン)

    [24時間データ]

    INTEGER

    [一覧] <--> [24時間] <--> [ライブ]
                  ↓↑
              [年月日選択]

    加速度リアルタイムグラフ

    加速度リアルタイムグラフ

    Windows macOS Linux RasPi

    TWELITE CUEやTWELITE 動作センサーPALから受信したデータを参照する目的で使用します。

    デモデータ

    注:センサーグラフ機能では、1パケットに複数サンプルが含まれるような連続計測を行う場合であっても、1パケット1サンプルとして記録します。

    CUE モード、MOTモード、2525 FIFO モードの3種類に対応します。

    連続したサンプルが一定数(解析窓)以上になると、XYZ軸を周波数解析した表示を行います。ただし 2525 FIFO モードでは常に連続していると仮定します。

    パケットの区切りが明示的な場合(直前のパケットから3秒以上経過したとき、CUEモードは1パケットごと、MOTモードはパケットのシーケンス番号が不連続になったとき)には、4サンプル分のダミーデータを挿入しピンク色の背景色で表示します。

    先着順に最大4ノードまでのデータを格納します。

    複数ノード運用時には、互いのパケット衝突により通信の失敗が多くなります。特に FIFO モードでは、送信周期がほぼ一定で互いにほぼ同時期にパケット送信を試み、干渉により送信が失敗するといったことが長時間続く場合があります。原則として無線チャネル1つにつき、1ノードという運用を行います。

    代表的なCUEのインタラクティブモードの設定

    • 連続的に約 25Hz で計測したい (Transmit Interval: 0, Sensor Parameter: 03000000)

    • 連続的に約 50Hz で計測したい (Transmit Interval: 0, Sensor Parameter: 03000100)

    • 連続的に約 100Hz で計測したい (Transmit Interval:

    操作

    操作
    内容

    サンプルレートの推定

    サンプリングレートは、パケットの受信時間から計算しています。過去複数サンプルの受信時間を平均して1サンプル分としているため、パケットの飛びなどがある場合は誤差が大きくなります。

    サンプルレートの推定が終わると、グラフ表示のスクロールをスムーズにします。

    また、関連するログ記録のタイムスタンプ(T_SMPL)も同様に推測値、かつ、パケット取得時よりあとのタイムスタンプになっています。

    CUEグラフモードの起動時に開く

    [STAGE 共通設定→起動アプリ指定]にて31を指定する。

    ログ出力 (表示データ保存)

    [表示データ保存]ボタンを押すことで、画面上の表示位置(右端サンプル)を起点として、最大512サンプル分のデータを出力します。最新のサンプルが末尾に記録されるため、冒頭には何もデータが無い場合がある点に注意してください。

    ログファイル名は {logフォルダ}/acc_snap_{タイムスタンプ}.csvです。

    • データは、右端の一番新しいサンプルが 512 番目(ファイルの末尾)です。

    • 周波数解析実行時は、最後のサンプルから 周波数解析サンプル数分が対象です。

    • 周波数解析対象サンプルが記録されている行に周波数解析結果を追加しています(64サンプルの場合は 449番目から 32 行が結果で DC 成分から高周波成分までが並びます)。

    ラベル
    項目名
    解説

    追加情報

    情報名
    解説

    ログ出力 (自動保存)

    本画面を開き、データが入力された時点で自動的にログファイルを出力します。

    • ログファイル名は logフォルダ/accel_{シリアル番号}_{タイムスタンプ}.csv です。

    • 画面を開いている間はファイルの書出し中です。読み出し用に開けない、または開けたとしてもすべてのデータが読み出せない場合があります。

    ラベル
    項目名
    解説

    追加情報

    情報名
    解説
    0
    , Sensor Parameter:
    03000200
    )
  • 約10秒おきに 約 100Hz で128サンプル分計測したい (Transmit Interval: 10, Sensor Parameter: 03000208)

  • 約10秒おきに 約 100Hz で256サンプル分計測したい (Transmit Interval: 10, Sensor Parameter: 03000210)

  • 約10秒おきに 約 50Hz で64サンプル分計測したい (Transmit Interval: 10, Sensor Parameter: 03000104)

  • 約10秒おきに 約 200Hz で128サンプル分計測したい (Transmit Interval: 10, Sensor Parameter: 03000308)

  • 表示サンプルの位置を移動(より大きなステップで)

    カーソル→, ←

    サンプル表示の移動

    カーソル↑, ↓

    サンプル横軸の拡大・縮小(等倍, 2倍, 3倍, 4倍。解析サンプル数256の場合は 2倍まで)

    パケットの受信時刻から生成した各サンプルのタイムスタンプです。実際にサンプルが行われた時刻とは一致しません。(サンプルレートが受信パケット間隔より推定している点で誤差が大きくなる点と、受信サンプルにサンプル周期を加算している計算をしているため実際のサンプル時刻より1パケット周期分あとのタイムスタンプです)

    X[G]

    X軸のサンプル値

    センサーからの値にもとづき、単位は[G]です。

    Y[G]

    Y軸のサンプル値

    センサーからの値にもとづき、単位は[G]です。

    Z[G]

    Z軸のサンプル値

    センサーからの値にもとづき、単位は[G]です。

    FD#

    周波数解析計算値の番号

    周波数解析サンプル数が 64の場合は DC,1,2,...,31 の順で並びます。

    Hz

    周波数解析計算結果の周波数軸の値

    およその周波数です。(FD# / FD_Len) * FD_Freq で計算しています。

    X

    X軸の周波数解析計算値

    Y

    Y軸の周波数解析計算値

    Z

    Z軸の周波数解析計算値

    Label

    追加情報名

    下表参照

    Info

    追加情報

    下表参照

    Time_Msec_part

    ログファイルオープン時の秒未満部分 [ms]

    Samples

    有効サンプルデータ

    FD_Len

    周波数解析サンプル数

    FD_Start#

    周波数解析開始サンプル番号

    FD_Freq

    周波数解析範囲の周波数推定値[Hz]

    サンプル受信間隔からの推定値

    パケットの受信時刻から生成した各サンプルのタイムスタンプです。実際にサンプルが行われた時刻とは一致しません。(サンプルレートが受信パケット間隔より推定している点で誤差が大きくなる点と、受信サンプルにサンプル周期を加算している計算をしているため実際のサンプル時刻より1パケット周期分あとのタイムスタンプです)

    X[G]

    X軸のサンプル値

    センサーからの値にもとづき、単位は[G]です。

    Y[G]

    Y軸のサンプル値

    センサーからの値にもとづき、単位は[G]です。

    Z[G]

    Z軸のサンプル値

    センサーからの値にもとづき、単位は[G]です。

    Label

    追加情報名

    下表参照

    Info

    追加情報

    下表参照

    Time_Msec_part

    ログファイルオープン時の秒未満部分 [ms]

    右部 [(I)ID#]ボタン部

    クリックするごとにIDの切り替えを行う。(注:FIFOモードによる連続サンプルデータの場合は、複数IDによる運用は現実的ではありません)

    右部[(f)SMP#]ボタン部

    クリックするごとに解析窓サイズを 64,128,256 と変更する

    右部 [PAUSE( )] ボタン

    表示更新を中断する(サンプルの取得は内部の一時サンプルバッファが一杯になるまでは実行)

    右部 [(c)表示データ保存] ボタン

    CSV形式のデータ出力を行う (log フォルダ)。画面中の一番右に表示されているサンプルからバッファにある一番古いサンプルまでを出力する。出力数は常に 5120 となり、画面一番右に表示されているサンプルが一番最後のデータになる。

    マウスドラッグ(グラフ部分)

    表示サンプルの位置を移動

    #

    サンプル番号

    T_PKT[ms]

    パケット受信時刻

    1パケットに複数サンプル含まれるため、同じタイムスタンプのサンプルが並びます。

    SEQ

    パケット続き番号

    パケットの付与されており、連続していればパケットの欠落がないと考えられます。

    T_SMPL[ms]

    ModuleSID

    送信側のシリアル番号

    Tick[ms]

    ログファイルオープン時のTWELITE STAGEアプリ側のシステム [ms]

    Date

    ログファイルオープン時の日付

    Time

    #

    サンプル番号

    T_PKT[ms]

    パケット受信時刻

    1パケットに複数サンプル含まれるため、同じタイムスタンプのサンプルが並びます。

    SEQ

    パケット続き番号

    パケットの付与されており、連続していればパケットの欠落がないと考えられます。

    T_SMPL[ms]

    ModuleSID

    送信側のシリアル番号

    Tick[ms]

    ログファイルオープン時のTWELITE STAGEアプリ側のシステム [ms]

    Date

    ログファイルオープン時の日付

    Time

    マウスドラッグ(下部スクロールバー)

    サンプル時刻(仮想・推定)

    ログファイルオープン時の時刻

    サンプル時刻(仮想・推定)

    ログファイルオープン時の時刻

    メインメニュー

    メインメニュー

    Windows macOS Linux RasPi

    階層化されたメニューの最上位に位置します。

    画面例

    この画面では、メニュー選択を行います。メニューを反転すると、下部緑色文字部分に簡易的な解説を表示します。

    • ビューア : TWELITE から受信した電文を解釈して表示するビューアです。多くの場合、受信側の TWELITE には App_Wings を書き込んでおきます。

    • : ファームウェアをビルドし、接続した TWELITE に書き込みます。

    • : 接続した TWELITE 設定を、インタラクティブモードによって行います。

    • : TWELITE STAGE アプリの各種設定を行います。

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

    • 説明書 : 説明書を表示するメニューです。以下の説明書をブラウザで開きます。

      • TWELITE STAGE アプリ(この文書)

      • MWX ライブラリ

      • TWENET_C ライブラリ

    アプリ書き換え
    インタラクティブモード
    TWELITE STAGEの設定
    シリアルポートの選択

    000desc.txt

    000desc.txt

    プロジェクトフォルダに000desc.txtが作成した場合には、TWELITE STAGE APP が、プロジェクトフォルダの一覧にその内容を表示します。

    000desc.txtの表示例

    ファイルは UTF-8 形式のプレーンテキストで記述します。書式は以下の2種類があります。

    書式1

    • 1行目はタイトル行です。

    • 2行目以降は詳細の記述です。

    • 最終行が http で始まる場合は、ウェブサイトへのリンクになります。

    書式2

    iniファイルのような書式です。行頭から始まる項目名と=文字までを項目の定義として=以降が項目の内容です。

    項目定義
    詳細

    URL 指定について

    スイッチを押した時にLEDを点灯
    act4はTWELITE DIPに接続されたスイッチを押した時にLEDを点灯させるactを動作させます。
    https://mono-wireless.com/jp/products/act/index.html

    [JAPANESE], [ENGLISH]

    ブロックの区切り

    TITLE=

    タイトル行

    DESC=

    詳細の記述。改行を含めて複数行にすることもできます。

    URL=

    ウェブサイトまたはファイルへのリンク

    URL=

    詳細

    https:, http: で始まる

    そのアドレスを開きます

    それ以外

    {MWSDK_ROOT}/docs/ を起点とした相対フォルダを指定します。a/b/c.html とした場合は {MWSDK_ROOT}/docs/a/b/c.html に変換されます。

    [JAPANESE]
    TITLE=Actのテンプレート
    DESC=中身が何もない setup(), loop() のみのファイルです。
    新しく Act を記述するのに利用してください。
    URL=jp/MWX/content/act_samples/README.html
    [ENGLISH]
    TITLE=Act empty template
    DESC=This act file only contains empty setup() and loop(),
    which is intended to write a new Act.
    URL=en/MWX/content/act_samples/README.html

    シリアルポートの選択

    シリアルポートの選択

    Windows macOS Linux RasPi

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

    シリアルポート選択

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