TWELITE CUE & STICK　メモ

これは、TWELITE　CUE ＆　Stickのセットを購入したのですが、サイトが解りにくいのでメモです。
https://mono-wireless.com/jp/products/twelite-cue/index.html
を引用しています。

#購入物品
TWELITE CUE & STICK https://akizukidenshi.com/catalog/g/gM-15948/
※CUEに使う電池は別売りです。CR2032が必要。
~~設定のたびにUSB Stickの内容の書き換えが必要なので、多数扱うなら書き込み治具のTWELITE R2もしくは2セット買った方がよさそう。ここではOTAで確認した説明ですので、もしかしたらTWELITE R2だと違うかもしれません。~~
設定の書き換えは、StickのOTAで可能ですが、プログラム(App)の書き換えはR2が必要です。(試し程度なら不要ですが、SDKのバージョンと一緒にAppのバージョンも更新されますので書き換えたければ必須）
MonoStick以外の中継器(例えばDIPを利用）を用意するときは、App_Wingsに書き換えるのにR2は必須になります。
TWELITE R2　https://akizukidenshi.com/catalog/g/gM-15095/
R2にはUSB-Cケーブルが付属されていません。

#Downloadが必要なもの
TWELITE STAGE SDK　https://mono-wireless.com/jp/products/stage/index.html （ページの下の方にある。）

#設定の変更（OTAの場合)
https://mono-wireless.com/jp/products/twelite-cue/index.html のOTA設定（Over the Air Settings）に書いてある。

####1.TWELITE STAGE APPを起動する。
パソコンにダウンロードしたTWELITE STAGE SDKを展開し、MWSTAGEフォルダ内のTWELITE_stageファイルをダブルクリックし、起動する。
1.のMONOSTICKを選択する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/3ba84d2d-d6f6-d2be-2eb4-d18174dfc88c.png)


####2.MONOSTICKにOTA設定用のアプリを書き込む。
TWELITE STAGE APPのトップメニューから
2: アプリ書換 → 3: TWELITE APPS ビルド＆書換 → 2: App_CUE_OTAを選択する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/0e9e2723-8b23-94c2-21a9-e45575682a8e.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/93f9acf7-4d53-27e8-4fa4-246c5e5cebb5.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/22795c62-7cb8-8921-7309-821ac7bc652d.png)
指示に従って進むと
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/e36af28c-19fa-65a9-5e74-477051d80572.png)

####3.インタラクティブモードで設定値を入力する。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/666e9900-fc3d-18f2-b051-47d292477ac1.png)
ここではtを１０秒に t を押すと数値が入力できるので10を入力。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/1626ecdf-b8f6-791f-f2bc-6580dc8ce885.png)
＊がついて値が変わったことがわかる。Sを押さずにそのままOTAを実行（マニュアルの間違い？）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/2698d218-4d31-59aa-7ced-3b62fca42c31.png)

####4.OTAの実行
インタラクティブモードのまま、MONOSTICKの近くで、TWELITE CUEの「磁気センサー」に磁石を近づけたり遠ざけたりを5回以上繰り返すとCUEの「LED」とMONOSTICKのLED（赤とオレンジ）が点滅しOTA設定が完了する。
近くでバッテリーを入れてもOTA出来るみたい。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/97061/5c196f01-44fe-f2ca-772e-dfbd0028dea1.png)

####5.MONOSTICKに親機・中継機用アプリ Wingsに書き戻す。
TWELITE STAGE APPのトップメニューから
2: アプリ書換 → 3: TWELITE APPS ビルド＆書換 → 9: App_Wings を選択する。

####6.インタラクティブモードでMONOSTICKの設定をする。
MONOSTICKの周波数チャネル、アプリケーションID等の変更が必要な場合はTWELITE STAGE APPのトップメニューから 3: インタラクティブモード を選択して値を変更し保存する。

#設定の内容
|コマンド|設定項目|初期値|説明|
|:------|:------|:----|:---|
|a|アプリケーションID|0x67720102|同一の周波数チャネルを複数のグループで使用することが可能です。値は32ビットで設定します。<b>アプリケーションIDは、MonoStick、CUE、中継器(使う場合)を同じ値にする必要があります。</b>|
|i|論理デバイスID|--|子機の論理デバイスIDを設定します。1～100までの値を設定できます。<br/>設定値が "--" の場合は、論理デバイスIDは内部で1に設定されます。|
|c|周波数チャネルの設定|18|チャネル(11～26)を選択します。省電力動作を優先する観点から、複数チャネルの指定は無効としています。<b>周波数チャンネルは、MonoStick、CUE、中継器(使う場合)を同じ値にする必要があります。</b>|
|x|送信出力の設定|03|abもしくはbで表現<br/>**a**は再送回数を設定します。0～9を指定し、0はデフォルトで再送なし、1～9は再送回数に対応します。<br/>**b**は送信出力を設定します。3が最強で2,1,0と弱くなります。<br/>例：3 -> 再送なし・最強出力（デフォルト、省略時）<br/>42 -> 再送４回・出力は2（１段階弱める）|
|b|UARTボーレートの設定|38400|入力値にかかわらず115200bps固定らしいので、設定には意味がないと思われます。|
|B|UARTパリティの設定|8N1|入力値にかかわらず8N1で固定らしいので、設定には意味がないと思われます。|
|k|暗号化鍵の設定|0xA5A5A5A5|暗号化鍵を入力します。32bitの16進数を設定します。通信グループ内は全て同一の値に設定してください。|
|o|オプションビットの設定|0x00000001|各種詳細設定ができます。<br/>**0x00000001** 各中継機または親機宛に送信し、受信した中継機すべての情報が親機に転送され、シリアル出力されます。<br/>この場合、複数の受信パケットを分析する事で一番近くで受信したルータを特定することができます。<br/>**0x00000040** OTAを無効にする。<br/>**0x00001000** 暗号化通信を有効にします。（相手側の暗号化設定もしてください。）<br/>**0x00010000** UART通信でのメッセージ出力を有効にします。
|t|送信間隔の設定|5|定期送信パケットの送信間隔を秒単位で設定します。1〜4095の値で指定可能です。範囲外の設定をした場合の動作は不定です。|
|p|センサ固有パラメータの設定|0|モードの切り替えやパラメータの設定をします。0以上の16進数で指定できます。<br/>**00000000** *TWELITE CUEモード* 加速度の計測、衝撃の検知、TWELITE CUEの姿勢、磁石の有無のすべて試すことができるオールインワンモードです。<br/>**x3000yyy(x:TWELITE 2525Aモードフラグ,yyy:加速度センサープロパティ)** *加速度計測モード* 加速度を間欠もしくは連続で計測し、送信するモードです。<br/>**01100000** *ムーブモード* 動き出し(Move)やシェイク(Shake)を検出することができます。通知パルのLEDを制御することができます。<br/>**02100000** *ダイスモード* TWELITE CUEが上に向いている面を検出することができます。イベント検出モードと同様に通知パルのLEDを制御することができます。<br/>**04000000** *開閉センサーパルモード* モノに装着し、磁石の有無で開閉を知ることができるモードです。<br/>各モードでバッテリーの消費量が変わります。詳細は、各種モードのページを参照ください。|
|S|設定値の保存| |設定を保存し、モジュールを再起動します。|
|R|初期値に設定を戻す| |設定を初期化します。他の操作を行わず、続けてS キーによる設定の保存を行うとセーブ領域のクリアを行います。|
#出力
https://wings.twelite.info/how-to-use/parent-mode/receive-message/app_cue を参考

#中継器
TweLiteの中継方式は単純ホップと中継ネットの2種類があります。

|アプリ名|中継方式|備考|
|:-:|:-:|:-:|
|超簡単！標準アプリ (App_Twelite)|単純ホップ|TweLite DIPなどに標準で入っている|
|リモコンアプリ (App_IO)|単純ホップ|
|シリアル通信アプリ (App_Uart)|単純ホップ|UARTに標準で入っている|
|無線タグアプリ (App_Tag)|中継ネット|
|パルアプリ (App_PAL)| 中継ネット|
|キューアプリ (App_CUE)| 中継ネット|CUEはこれ|
|アクト (act)|単純ホップ|
|App_Wings|単純ホップ,中継ネット|
※したがってDIPの配線でのMode変更の中継機能は利用できません。App_WindsにR2で書き換える必要あります。

#参考
##バージョンについて
| 機種 | MWSTAGE2021_9? | MWSTAGE2021_12 |備考|
|:-:|:-:|:-:|:-:|
|App_CUE|V1-00-2|V1-00-3|書き換えにはTweLiteR2が必要|
|App_Wings(MonoStick)|   |v1-01-6||
|App_Wings|   |v1-01-6|DIPに中継器用Appとして書込み|