最適な出力のために、Google Chrome(15以降)または Microsoft Edge(79以降)を推奨いたします。
2024-12-20 現在親機・中継機アプリ マニュアル
最新版
TWELITE APPS や act の子機に対する親機や中継機として働きます。
機能
TWELITE APPSとactの全てのデータパケットを処理することができ、共通の親機または中継機として使用できます。
- 超簡単!標準アプリやパル専用アプリなどの TWELITE APPS や act のデータを1つの MONOSTICK で収集可能
- 16チャンネルで複数システムを個別に運用可能
- アプリケーションIDの設定することで、同一チャネルに複数システムを混在可能
- 中継機能で通信範囲拡大
1 - 親機・中継機アプリの動作モード
親機・中継機アプリの動作モード
親機モードと中継機モードの2つのモードがあります。
1.1 - 親機・中継機アプリの親機モード
子機からデータを受信、子機へデータを送信する
子機から送信されたデータを受信し、シリアルポートから出力します。また、シリアルポートへ入力されたコマンドを子機へ送信します。
1.1.1 - 親機・中継機アプリの受信メッセージ
子機からデータを受信した際の出力
子機から送信されたデータを受信し、既定の書式でシリアルポートから出力します。
1.1.1.1 - 超簡単!標準アプリからの出力(親機・中継機アプリ)
超簡単!標準アプリからデータを受信した際の出力書式
0x81
:相手端末からの状態通知
受信した入力信号の状態を出力します。
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信元の論理デバイスID | |
1 | uint8 | コマンド番号 | 0x81 のみ |
2 | uint8 | パケット識別子 | アプリケーションIDより生成 |
3 | uint8 | プロトコルバージョン | 0x01 のみ |
4 | uint8 | LQI | 0 -255 |
5 | uint32 | 送信元のシリアルID | 0x8??????? |
9 | uint8 | 送信先の論理デバイスID | |
10 | uint16 | タイムスタンプ | 1秒で64カウント |
12 | uint8 | 中継回数 | |
13 | uint16 | 電源電圧 | 単位はmV |
15 | int8 | - | (未使用) |
16 | uint8 | デジタル信号 | LSBから順にDIx へ対応、0 がHigh MSBが1 なら定期送信 |
17 | uint8 | デジタル信号マスク | LSBから順にDIx へ対応、1 が有効 |
18 | uint8 | AI1 の変換値 | アナログ信号の計算を参照、0xFF で未使用 |
19 | uint8 | AI2 の変換値 | アナログ信号の計算を参照、0xFF で未使用 |
20 | uint8 | AI3 の変換値 | アナログ信号の計算を参照、0xFF で未使用 |
21 | uint8 | AI4 の変換値 | アナログ信号の計算を参照、0xFF で未使用 |
22 | uint8 | AIx の補正値 | LSBから2ビットずつ順にAIx へ対応 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
アナログ信号の計算
AIx
の入力電圧 \(V\)は、受信した変換値\(e_{r}\)および補正値\(e_{fr}\)を使って次のように表すことができます。
$$\begin{align*}
V &= e+e_f \\
\text{where} \\
e &= 16e_r \\
e_f &= 4e_{fr} \\
\end{align*}$$
単位は mV
出力データの例
:78811501C98201015A000391000C2E00810301FFFFFFFFFB
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
78 | 0 | uint8 | 送信元の論理デバイスID | 0x78 |
81 | 1 | uint8 | コマンド番号 | 0x81 |
15 | 2 | uint8 | パケット識別子 | 0x15 |
01 | 3 | uint8 | プロトコルバージョン | 0x01 |
C9 | 4 | uint8 | LQI | 201/255 |
8201015A | 5 | uint32 | 送信元のシリアルID | 0x201015A |
00 | 9 | uint8 | 送信先の論理デバイスID | 0x00 |
0391 | 10 | uint16 | タイムスタンプ | 約14.27 秒 |
00 | 12 | uint8 | 中継回数 | 0 |
0C2E | 13 | uint16 | 電源電圧 | 3118 mV |
00 | 15 | int8 | - | |
81 | 16 | uint8 | デジタル信号 | DI1 L DI2 H
DI3 H DI4 H (定期送信) |
03 | 17 | uint8 | デジタル信号マスク | DI1 DI2 |
01 | 18 | uint8 | AI1 の変換値 | 16 mV |
FF | 19 | uint8 | AI2 の変換値 | 未使用 |
FF | 20 | uint8 | AI3 の変換値 | 未使用 |
FF | 21 | uint8 | AI4 の変換値 | 未使用 |
FF | 22 | uint8 | AIx の補正値 | AI1 0x03 |
FB | | uint8 | チェックサム | 0xFB |
| | char | フッタ | \r |
| | char | フッタ | \n |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータが超簡単!標準アプリのものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
1 | uint8 | コマンド番号 | 0x81 であること |
3 | uint8 | プロトコルバージョン | 0x01 であること |
5 | uint32 | 送信元のシリアルID | MSBが1であること(0x8??????? ) |
- | - | ペイロードのサイズ | 23バイトであること(: とチェックサムの間) |
パーサの実装例
0x01
:任意のデータの受信
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信元の論理デバイスID | 親機0x00 ,子機0x01 -0x64 ,未設定子機0x78 |
1 | uint8 | コマンド番号 | 0x01 のみ |
2 | [uint8] | 任意のデータ | 長さ\(N\)のバイト列 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
1.1.1.2 - リモコンアプリからの出力(親機・中継機アプリ)
リモコンアプリからデータを受信した際の出力書式
0x81
:相手端末からの状態通知
受信した入力信号の状態を出力します。
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信元の論理デバイスID | |
1 | uint8 | コマンド番号 | 0x81 のみ |
2 | uint8 | パケット識別子 | 0x0F のみ |
3 | uint8 | プロトコルバージョン | 0x01 のみ |
4 | uint8 | LQI | 0 -255 |
5 | uint32 | 送信元のシリアルID | 0x8??????? |
9 | uint8 | 送信先の論理デバイスID | |
10 | uint16 | タイムスタンプ | 1秒で64カウント、MSBは内部フラグ |
12 | uint8 | 中継回数 | |
13 | uint16 | デジタル信号 | LSBから順にIx へ対応、0 がHigh |
15 | uint16 | デジタル信号マスク | LSBから順にIx へ対応、1 なら有効 |
17 | uint16 | デジタル信号フラグ | LSBから順にIx へ対応、1 なら割り込み |
19 | uint8 | 未使用 | 内部管理用 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:01810F01DB8630000200645F000040004F00400049
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
01 | 0 | uint8 | 送信元の論理デバイスID | 0x78 |
81 | 1 | uint8 | コマンド番号 | 0x81 |
0F | 2 | uint8 | パケット識別子 | 0x15 |
01 | 3 | uint8 | プロトコルバージョン | 0x01 |
DB | 4 | uint8 | LQI | 219/255 |
86300002 | 5 | uint32 | 送信元のシリアルID | 0x6300002 |
00 | 9 | uint8 | 送信先の論理デバイスID | 0x00 |
645F | 10 | uint16 | タイムスタンプ | 約401 秒 |
00 | 12 | uint8 | 中継回数 | 0 |
0040 | 13 | uint16 | デジタル信号 | I7 がLo |
004F | 15 | uint16 | デジタル信号マスク | I7 ,I1 -I4 が有効 |
0040 | 17 | uint16 | デジタル信号フラグ | I7 は割り込みにより変化 |
00 | 19 | uint8 | 未使用 | |
49 | | uint8 | チェックサム | 0x49 |
| | char | フッタ | \r |
| | char | フッタ | \n |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがリモコンアプリのものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
1 | uint8 | コマンド番号 | 0x81 であること |
3 | uint8 | プロトコルバージョン | 0x02 であること |
5 | uint32 | 送信元のシリアルID | MSBが1であること(0x8??????? ) |
- | - | ペイロードのサイズ | 20バイトであること(: とチェックサムの間) |
パーサの実装例
1.1.1.3 - シリアル通信アプリからの出力(親機・中継機アプリ)
シリアル通信アプリからデータを受信した際の出力書式
本アプリでは、書式モードの電文のみ受信できます。
透過モードやチャットモードのパケットを受信した場合の出力は未定義ですから、ご注意ください。
書式モード:簡易形式
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信元の論理デバイスID | 親機0x00 ,子機0x01 -0x64 ,未設定子機0x78 |
1 | uint8 | コマンド番号 | 送信側で指定した0x80 未満の値 |
2 | [uint8] | 任意のデータ | 長さ\(N\)のバイト列 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
78 | 0 | uint8 | 送信元の論理デバイスID | ID未設定子機 |
01 | 1 | uint8 | コマンド番号 | 0x01 |
00112233AABBCCDD | 2 | [uint8] | 任意のデータ | そのまま |
13 | | uint8 | チェックサム | 0x13 |
| | char | フッタ | \r |
| | char | フッタ | \n |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがシリアル通信アプリ(書式モード:簡易形式)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint8 | 送信元の論理デバイスID | 0x64 以下もしくは0x78 であること |
1 | uint8 | コマンド番号 | 0x80 未満であること |
- | - | ペイロードのサイズ | 3バイト以上82バイト以下であること |
緩い条件のため、超簡単!標準アプリなど他のパケットの条件に続けて確認してください。
パーサの実装例
書式モード:拡張書式
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信元の論理デバイスID | 親機0x00 ,子機0x01 -0x64 ,未設定子機0x78 |
1 | uint8 | コマンド番号 | 0xA0 のみ |
2 | uint8 | 応答ID | 送信側で指定した値 |
3 | uint32 | 送信元の拡張アドレス | シリアルIDの先頭へ0x8 を加えた値 |
7 | uint32 | 送信先の拡張アドレス | 論理デバイスID使用時は0xFFFFFFFF |
11 | uint8 | LQI | 受信時の電波通信品質 |
12 | uint16 | 続くバイト列の長さ | バイト数\(M\)を表す |
14 | [uint8] | 任意のデータ | 長さ\(M\)のバイト列 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:78A0028201015AFFFFFFFFA8000700112233AABBCCC6
| # | データ | 内容 | 備考 |
---|
: | | char | ヘッダ | : |
78 | 0 | uint8 | 送信元の論理デバイスID | ID未設定子機 |
A0 | 1 | uint8 | コマンド番号 | 0xA0 |
02 | 2 | uint8 | 応答ID | 0x02 |
8201015A | 3 | uint32 | 送信元の拡張アドレス | 0x201015A |
FFFFFFFF | 7 | uint32 | 送信先の拡張アドレス | 論理デバイスID指定 |
A8 | 11 | uint8 | LQI | 168/255 |
0007 | 12 | uint16 | 続くバイト列の長さ | 7 バイト |
00112233AABBCC | 14 | [uint8] | 任意のデータ | そのまま |
C6 | | uint8 | チェックサム | 0xC6 |
| | char | フッタ | |
| | char | フッタ | |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがシリアル通信アプリ(書式モード:拡張形式)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint8 | 送信元の論理デバイスID | 0x64 以下もしくは0x78 であること |
1 | uint8 | コマンド番号 | 0xA0 であること |
2 | uint8 | 応答ID | 0x80 未満であること |
3 | uint32 | 送信元の拡張アドレス | MSBが1であること(0x8??????? ) |
12 | uint16 | 続くバイト列の長さ | ペイロードのサイズ - 14 バイトであること |
パーサの実装例
1.1.1.4 - パル/キュー/アリアアプリからの出力(親機・中継機アプリ)
パル/キュー/アリアアプリからデータを受信した際の出力書式
1.1.1.4.1 - パルアプリからの出力(親機・中継機アプリ)
パルアプリからデータを受信した際の出力書式
全般
パルアプリから受信したデータは、センサ種別とその値からなるセンサーデータの羅列によって表現します。
パルアプリに共通する書式の詳細については、
共通書式の詳細をご覧ください。
以降では、製品の種別に応じた具体的な例を取り上げます。
開閉センサーパル
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしの場合80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | 0x8??????? |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | 0x80 のみ |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x81 のみ |
14 | uint8 | センサーデータの数 | 3 のみ |
| | センサーデータ1 | |
15 | uint8 | 情報ビット | 0x11 のみ |
16 | uint8 | データソース | 0x30 のみ |
17 | uint8 | 拡張バイト | 0x08 のみ |
18 | uint8 | データ長 | 2 のみ |
19 | uint16 | データ | 電源電圧(mV) |
| | センサーデータ2 | |
21 | uint8 | 情報ビット | 0x11 のみ |
22 | uint8 | データソース | 0x30 のみ |
23 | uint8 | 拡張バイト | 0x01 のみ |
24 | uint8 | データ長 | 2 のみ |
25 | uint16 | データ | ADC1の電圧(mV) |
| | センサーデータ3 | |
27 | uint8 | 情報ビット | 0x00 のみ |
28 | uint8 | データソース | 0x00 のみ |
29 | uint8 | 拡張バイト | 0x00 のみ |
30 | uint8 | データ長 | 1 のみ |
31 | uint8 | データ | 磁気データ |
| | センサーデータの末端 | |
32 | uint8 | チェックサム1 | 直前までのCRC8 |
| uint8 | チェックサム2 | チェックサム1までのLRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:80000000A8001C82012B1E01808103113008020D0C1130010203E40000000101EC6E
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
A8 | 4 | uint8 | LQI | 168 /255 |
001C | 5 | uint16 | 続き番号 | 28 |
82012B1E | 7 | uint32 | 送信元のシリアルID | 0x2012B1E |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x01 |
80 | 12 | uint8 | センサー種別 | |
81 | 13 | uint8 | PAL基板バージョンとPAL基板ID | 開閉パルV1 |
03 | 14 | uint8 | センサーデータの数 | 3 つ |
| | | センサーデータ1 | |
11 | 15 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 16 | uint8 | データソース | 電圧 |
08 | 17 | uint8 | 拡張バイト | 電源 |
02 | 18 | uint8 | データ長 | 2 バイト |
0D0C | 19 | uint16 | データ | 3340 mV |
| | | センサーデータ2 | |
11 | 21 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 22 | uint8 | データソース | 電圧 |
01 | 23 | uint8 | 拡張バイト | ADC1 |
02 | 24 | uint8 | データ長 | 2 バイト |
03E4 | 25 | uint16 | データ | 996 mV |
| | | センサーデータ3 | |
00 | 27 | uint8 | 情報ビット | 拡張バイトなしuint8 |
00 | 28 | uint8 | データソース | 磁気 |
00 | 29 | uint8 | 拡張バイト | なし |
01 | 30 | uint8 | データ長 | 1 バイト |
01 | 31 | uint8 | データ | N極が近づいた |
| | | センサーデータの末端 | |
EC | 32 | uint8 | チェックサム1 | 0xEC |
6E | | uint8 | チェックサム2 | 0x6E |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがパルアプリ(開閉センサーパル)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x81 であること |
- | - | ペイロードのサイズ | 33バイトであること |
パーサの実装例
環境センサーパル
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしの場合80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | 0x8??????? |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | 0x80 のみ |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x82 のみ |
14 | uint8 | センサーデータの数 | 5 のみ |
| | センサーデータ1 | |
15 | uint8 | 情報ビット | 0x11 のみ |
16 | uint8 | データソース | 0x30 のみ |
17 | uint8 | 拡張バイト | 0x08 のみ |
18 | uint8 | データ長 | 2 のみ |
19 | uint16 | データ | 電源電圧(mV) |
| | センサーデータ2 | |
21 | uint8 | 情報ビット | 0x11 のみ |
22 | uint8 | データソース | 0x30 のみ |
23 | uint8 | 拡張バイト | 0x01 のみ |
24 | uint8 | データ長 | 2 のみ |
25 | uint16 | データ | ADC1の電圧(mV) |
| | センサーデータ3 | |
27 | uint8 | 情報ビット | 0x05 のみ |
28 | uint8 | データソース | 0x01 のみ |
29 | uint8 | 拡張バイト | 0x00 のみ |
30 | uint8 | データ長 | 2 のみ |
31 | int16 | データ | 温度データ |
| | センサーデータ4 | |
33 | uint8 | 情報ビット | 0x01 のみ |
34 | uint8 | データソース | 0x02 のみ |
35 | uint8 | 拡張バイト | 0x00 のみ |
36 | uint8 | データ長 | 2 のみ |
37 | uint16 | データ | 湿度データ |
| | センサーデータ5 | |
39 | uint8 | 情報ビット | 0x02 のみ |
40 | uint8 | データソース | 0x03 のみ |
41 | uint8 | 拡張バイト | 0x00 のみ |
42 | uint8 | データ長 | 4 のみ |
43 | uint32 | データ | 照度データ |
| | センサーデータの末端 | |
47 | uint8 | チェックサム1 | 直前までのCRC8 |
| uint8 | チェックサム2 | チェックサム1までのLRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:8000000084811F810EFF6D04808205113008020AEB11300102035A0501000209E3010200020E3A02030004000001BE6C00
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
84 | 4 | uint8 | LQI | 132 /255 |
811F | 5 | uint16 | 続き番号 | 33055 |
810EFF6D | 7 | uint32 | 送信元のシリアルID | 0x10EFF6D |
04 | 11 | uint8 | 送信元の論理デバイスID | 0x04 |
80 | 12 | uint8 | センサー種別 | |
82 | 13 | uint8 | PAL基板バージョンとPAL基板ID | 環境パルV1 |
05 | 14 | uint8 | センサーデータの数 | 5 つ |
| | | センサーデータ1 | |
11 | 15 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 16 | uint8 | データソース | 電圧 |
08 | 17 | uint8 | 拡張バイト | 電源 |
02 | 18 | uint8 | データ長 | 2 バイト |
0AEB | 19 | uint16 | データ | 2795 mV |
| | | センサーデータ2 | |
11 | 21 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 22 | uint8 | データソース | 電圧 |
01 | 23 | uint8 | 拡張バイト | ADC1 |
02 | 24 | uint8 | データ長 | 2 バイト |
035A | 25 | uint16 | データ | 858 mV |
| | | センサーデータ3 | |
05 | 27 | uint8 | 情報ビット | 拡張バイトなしint16 |
01 | 28 | uint8 | データソース | 温度 |
00 | 29 | uint8 | 拡張バイト | なし |
02 | 30 | uint8 | データ長 | 2 バイト |
09E3 | 31 | int16 | データ | 25.31°C |
| | | センサーデータ4 | |
01 | 33 | uint8 | 情報ビット | 拡張バイトなしuint16 |
02 | 34 | uint8 | データソース | 湿度 |
00 | 35 | uint8 | 拡張バイト | なし |
02 | 36 | uint8 | データ長 | 2 バイト |
0E3A | 37 | uint16 | データ | 36.42% |
| | | センサーデータ5 | |
02 | 39 | uint8 | 情報ビット | 拡張バイトなしuint32 |
03 | 40 | uint8 | データソース | 照度 |
00 | 41 | uint8 | 拡張バイト | なし |
04 | 42 | uint8 | データ長 | 4 バイト |
000001BE | 43 | uint32 | データ | 446 lx |
| | | センサーデータの末端 | |
6C | 47 | uint8 | チェックサム1 | 0x6C |
00 | | uint8 | チェックサム2 | 0x00 |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがパルアプリ(環境センサーパル)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x82 であること |
- | - | ペイロードのサイズ | 48バイトであること |
パーサの実装例
動作センサーパル
データ形式
出力データの例
:80000000BA002382011CEF01808312113008020D0211300102055C1504400600100010045015044106000800100430150442060000001004381504430600080018043015044406000000180458150445060000002004381504460600080018042815044706FFE80010042015044806FFF00010043815044906FFE80018043015044A06FFF80018044015044B06FFF80018041815044C0600000010042015044D0600000028045015044E0600000008043815044F0600000018043828A5
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
BA | 4 | uint8 | LQI | 186 /255 |
0023 | 5 | uint16 | 続き番号 | 35 |
82011CEF | 7 | uint32 | 送信元のシリアルID | 0x2011CEF |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x01 |
80 | 12 | uint8 | センサー種別 | |
83 | 13 | uint8 | PAL基板バージョンとPAL基板ID | 動作パルV1 |
12 | 14 | uint8 | センサーデータの数 | 18 個 |
| | | センサーデータ1 | |
11 | 15 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 16 | uint8 | データソース | 電圧 |
08 | 17 | uint8 | 拡張バイト | 電源 |
02 | 18 | uint8 | データ長 | 2 バイト |
0D02 | 19 | uint16 | データ | 3330 mV |
| | | センサーデータ2 | |
11 | 21 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 22 | uint8 | データソース | 電圧 |
01 | 23 | uint8 | 拡張バイト | ADC1 |
02 | 24 | uint8 | データ長 | 2 バイト |
055C | 25 | uint16 | データ | 1372 mV |
| | | センサーデータ3 | |
15 | 27 | uint8 | 情報ビット | 拡張バイトありint16 |
04 | 28 | uint8 | データソース | 加速度 |
40 | 29 | uint8 | 拡張バイト | 100Hz, 0番サンプル |
06 | 30 | uint8 | データ長 | 6 バイト |
001000100450 | 31 | int16 | データ | X16 mG/Y16 mG/Z1104 mG |
| | | センサーデータ4 | |
15 | 37 | uint8 | 情報ビット | 拡張バイトありint16 |
04 | 38 | uint8 | データソース | 加速度 |
41 | 39 | uint8 | 拡張バイト | 100Hz, 1番サンプル |
06 | 40 | uint8 | データ長 | 6 バイト |
000800100430 | 41 | uint16 | データ | X8 mG/Y16 mG/Z1072 mG |
| | | センサーデータ5 | |
| | | <省略> | |
| | | センサデータ15 | |
15 | 177 | uint8 | 情報ビット | 拡張バイトありint16 |
04 | 178 | uint8 | データソース | 加速度 |
4F | 179 | uint8 | 拡張バイト | 100Hz, 15番サンプル |
06 | 180 | uint8 | データ長 | 6 バイト |
000000180438 | 181 | uint32 | データ | X0 mG/Y24 mG/Z1080 mG |
| | | センサーデータの末端 | |
28 | 187 | uint8 | チェックサム1 | 0x28 |
A5 | | uint8 | チェックサム2 | 0xA5 |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがパルアプリ(動作センサーパル)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x83 であること |
- | - | ペイロードのサイズ | 188バイトであること |
パーサの実装例
通知パル
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしの場合80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | 0x8??????? |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | 0x80 のみ |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x84 のみ |
14 | uint8 | センサーデータの数 | 3 のみ |
| | センサーデータ1 | |
15 | uint8 | 情報ビット | 0x11 のみ |
16 | uint8 | データソース | 0x30 のみ |
17 | uint8 | 拡張バイト | 0x08 のみ |
18 | uint8 | データ長 | 2 のみ |
19 | uint16 | データ | 電源電圧(mV) |
| | センサーデータ2 | |
21 | uint8 | 情報ビット | 0x11 のみ |
22 | uint8 | データソース | 0x30 のみ |
23 | uint8 | 拡張バイト | 0x01 のみ |
24 | uint8 | データ長 | 2 のみ |
25 | uint16 | データ | ADC1の電圧(mV) |
| | センサーデータ3 | |
27 | uint8 | 情報ビット | 0x12 のみ |
28 | uint8 | データソース | 0x05 のみ |
29 | uint8 | 拡張バイト | 0x04 のみ |
30 | uint8 | データ長 | 4 のみ |
31 | uint8 | データ | 加速度イベントデータ |
32 | [uint8] | | 未使用 |
| | センサーデータの末端 | |
35 | uint8 | チェックサム1 | 直前までのCRC8 |
| uint8 | チェックサム2 | チェックサム1までのLRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:80000000C9BBC082014C3501808403 113008020D0C 1130010203F9 1205040410000000 97C6
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
C9 | 4 | uint8 | LQI | 201 /255 |
BBC0 | 5 | uint16 | 続き番号 | 48064 |
82014C35 | 7 | uint32 | 送信元のシリアルID | 0x2014C35 |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x01 |
80 | 12 | uint8 | センサー種別 | |
84 | 13 | uint8 | PAL基板バージョンとPAL基板ID | 通知パルV1 |
03 | 14 | uint8 | センサーデータの数 | 3 つ |
| | | センサーデータ1 | |
11 | 15 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 16 | uint8 | データソース | 電圧 |
08 | 17 | uint8 | 拡張バイト | 電源 |
02 | 18 | uint8 | データ長 | 2 バイト |
0D0C | 19 | uint16 | データ | 3340 mV |
| | | センサーデータ2 | |
11 | 21 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 22 | uint8 | データソース | 電圧 |
01 | 23 | uint8 | 拡張バイト | ADC1 |
02 | 24 | uint8 | データ長 | 2 バイト |
03F9 | 25 | uint16 | データ | 1017 mV |
| | | センサーデータ3 | |
12 | 27 | uint8 | 情報ビット | 拡張バイトありuint32 |
05 | 28 | uint8 | データソース | イベント |
04 | 29 | uint8 | 拡張バイト | 加速度イベント |
04 | 30 | uint8 | データ長 | 4 バイト |
10 | 31 | uint8 | データ | ムーブ |
000000 | 32 | [uint8] | | |
| | | センサーデータの末端 | |
97 | 35 | uint8 | チェックサム1 | 0x97 |
C6 | | uint8 | チェックサム2 | 0xC6 |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがパルアプリ(通知パル)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x84 であること |
- | - | ペイロードのサイズ | 36バイトであること |
1.1.1.4.2 - キューアプリからの出力(親機・中継機アプリ)
キューアプリからデータを受信した際の出力書式
TWELITE CUE モード
データ形式
出力データの例
:80000000CF7F7382019E3B0180050F003400038135001205040406000000113008020B8611300102042E000000018015044006FFF00010FC1815044106FFF00018FC1815044206FFF00010FC0015044306FFF80000FC1015044406FFF00010FC1815044506FFE00018FBF815044606FFE80000FC0015044706FFE80010FBF815044806FFE80010FC0815044906FFE80010FC080C0E
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
CF | 4 | uint8 | LQI | 207 /255 |
7F73 | 5 | uint16 | 続き番号 | 32627 |
82019E3B | 7 | uint32 | 送信元のシリアルID | 0x2019E3B |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x01 |
80 | 12 | uint8 | センサー種別 | |
05 | 13 | uint8 | PAL基板バージョンとPAL基板ID | TWELITE CUE |
0F | 14 | uint8 | センサーデータの数 | 15 個 |
| | | センサーデータ1 | |
00 | 15 | uint8 | 情報ビット | 拡張バイトなしuint8 |
34 | 16 | uint8 | データソース | パケットプロパティ |
00 | 17 | uint8 | 拡張バイト | なし |
03 | 18 | uint8 | データ長 | 3 バイト |
813500 | 19 | [uint8] | データ | ID129 、タイマイベント発生 |
| | | センサーデータ2 | |
12 | 22 | uint8 | 情報ビット | 拡張バイトありuint32 |
05 | 23 | uint8 | データソース | イベント |
04 | 24 | uint8 | 拡張バイト | 加速度イベント |
04 | 25 | uint8 | データ長 | 4 バイト |
06000000 | 26 | uint32 | データ | サイコロ:6 |
| | | センサーデータ3 | |
11 | 30 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 31 | uint8 | データソース | 電圧 |
08 | 32 | uint8 | 拡張バイト | 電源電圧 |
02 | 33 | uint8 | データ長 | 2 バイト |
0B86 | 34 | uint16 | データ | 2950 mV |
| | | センサーデータ4 | |
11 | 36 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 37 | uint8 | データソース | 電圧 |
01 | 38 | uint8 | 拡張バイト | ADC1の電圧 |
02 | 39 | uint8 | データ長 | 2 バイト |
042E | 40 | uint16 | データ | 1070 mV |
| | | センサーデータ5 | |
00 | 42 | uint8 | 情報ビット | 拡張バイトなしuint8 |
00 | 43 | uint8 | データソース | 磁気 |
00 | 44 | uint8 | 拡張バイト | なし |
01 | 45 | uint8 | データ長 | 1 バイト |
80 | 46 | uint8 | データ | 磁石なし(定期送信) |
| | | センサーデータ6 | |
15 | 47 | uint8 | 情報ビット | 拡張バイトありint16 |
04 | 48 | uint8 | データソース | 加速度データ |
40 | 49 | uint8 | 拡張バイト | 100Hz, 0番サンプル |
06 | 50 | uint8 | データ長 | 6 バイト |
FFF00010FC18 | 51 | [int16] | データ | X-16 mG/Y16 mG/Z-1000 mG |
| | | センサーデータ7 | |
15 | 57 | uint8 | 情報ビット | 拡張バイトありint16 |
04 | 58 | uint8 | データソース | 加速度データ |
41 | 59 | uint8 | 拡張バイト | 100Hz, 1番サンプル |
06 | 60 | uint8 | データ長 | 6 バイト |
FFF00018FC18 | 61 | [int16] | データ | X-16 mG/Y24 mG/Z-1000 mG |
| | | センサーデータ8 | |
| | | <省略> | |
| | | センサーデータ15 | |
15 | 137 | uint8 | 情報ビット | 拡張バイトありint16 |
04 | 138 | uint8 | データソース | 加速度データ |
49 | 139 | uint8 | 拡張バイト | 100Hz, 9番サンプル |
06 | 140 | uint8 | データ長 | 6 バイト |
FFE80010FC08 | 141 | int16 | データ | X-24 mG/Y16 mG/Z-1016 mG |
| | | センサーデータの末端 | |
0C | 147 | uint8 | チェックサム1 | 0x0C |
0E | | uint8 | チェックサム2 | 0x0E |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがキューアプリ(TWELITE CUEモード)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x05 であること |
- | - | ペイロードのサイズ | 148バイトであること |
パーサの実装例
開閉センサーパルモード
動作センサーパルモード(加速度計測モード)
動作センサーパルモード(ムーブ/ダイスモード)
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしの場合80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | 0x8??????? |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | 0x80 のみ |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x03 のみ |
14 | uint8 | センサーデータの数 | 04 のみ |
| | センサーデータ1 | |
15 | uint8 | 情報ビット | 0x00 のみ |
16 | uint8 | データソース | 0x34 のみ |
17 | uint8 | 拡張バイト | 0x00 のみ |
18 | uint8 | データ長 | 3 のみ |
19 | [uint8] | データ | パケットプロパティデータ |
| | センサーデータ2 | |
22 | uint8 | 情報ビット | 0x12 のみ |
23 | uint8 | データソース | 0x05 のみ |
24 | uint8 | 拡張バイト | 0x04 のみ |
25 | uint8 | データ長 | 4 のみ |
26 | uint32 | データ | イベントデータ |
| | センサーデータ3 | |
30 | uint8 | 情報ビット | 0x11 のみ |
31 | uint8 | データソース | 0x30 のみ |
32 | uint8 | 拡張バイト | 0x08 のみ |
33 | uint8 | データ長 | 2 のみ |
34 | uint16 | データ | 電源電圧(mV) |
| | センサーデータ4 | |
36 | uint8 | 情報ビット | 0x11 のみ |
37 | uint8 | データソース | 0x30 のみ |
38 | uint8 | 拡張バイト | 0x01 のみ |
39 | uint8 | データ長 | 2 のみ |
40 | uint16 | データ | ADC1の電圧(mV) |
| | センサーデータの末端 | |
42 | uint8 | チェックサム1 | 直前までのCRC8 |
| uint8 | チェックサム2 | チェックサム1までのLRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
ダイスモードの例を示します。ムーブモードの場合は、センサーデータ2
のイベントが異なります。
:80000000B400048106664801800304003400038035001205040403000000113008020D2011300102052C59B7
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
B1 | 4 | uint8 | LQI | 177 /255 |
0008 | 5 | uint16 | 続き番号 | 8 |
81066648 | 7 | uint32 | 送信元のシリアルID | 0x2019E3B |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x1066648 |
80 | 12 | uint8 | センサー種別 | |
03 | 13 | uint8 | PAL基板バージョンとPAL基板ID | TWELITE CUE ダイス/ムーブ |
04 | 14 | uint8 | センサーデータの数 | 4 つ |
| | | センサーデータ1 | |
00 | 15 | uint8 | 情報ビット | 拡張バイトなしuint8 |
34 | 16 | uint8 | データソース | パケットプロパティ |
00 | 17 | uint8 | 拡張バイト | なし |
03 | 18 | uint8 | データ長 | 3 バイト |
803500 | 19 | [uint8] | データ | ID128 、イベント発生(他ADC1と電源のみ) |
| | | センサーデータ2 | |
12 | 22 | uint8 | 情報ビット | 拡張バイトありuint32 |
05 | 23 | uint8 | データソース | イベント |
04 | 24 | uint8 | 拡張バイト | 加速度イベント |
04 | 25 | uint8 | データ長 | 4 バイト |
03000000 | 26 | uint32 | データ | ダイスモード、サイコロ:3 |
| | | センサーデータ3 | |
11 | 30 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 31 | uint8 | データソース | 電圧 |
08 | 32 | uint8 | 拡張バイト | 電源電圧 |
02 | 33 | uint8 | データ長 | 2 バイト |
0D20 | 34 | uint16 | データ | 3360 mV |
| | | センサーデータ4 | |
11 | 36 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 37 | uint8 | データソース | 電圧 |
01 | 38 | uint8 | 拡張バイト | ADC1の電圧 |
02 | 39 | uint8 | データ長 | 2 バイト |
052C | 40 | uint16 | データ | 1324 mV |
| | | センサーデータの末端 | |
59 | 42 | uint8 | チェックサム1 | 0x0C |
B7 | | uint8 | チェックサム2 | 0x0E |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがキューアプリ(動作センサーパルモードのムーブあるいはダイスモード)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x03 であること |
- | - | ペイロードのサイズ | 43バイトであること |
パーサの実装例
1.1.1.4.3 - アリアアプリからの出力(親機・中継機アプリ)
アリアアプリからデータを受信した際の出力書式
TWELITE ARIA モード
データ形式
出力データの例
:80000000CF00028201BAA201800607003400038135001205350401000000113008020D201130010204ED00000001800501000209D0010200020F347934[CR][LF]
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
CF | 4 | uint8 | LQI | 207 /255 |
0002 | 5 | uint16 | 続き番号 | 2 |
8201BAA2 | 7 | uint32 | 送信元のシリアルID | 0x201BAA2 |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x01 |
80 | 12 | uint8 | センサー種別 | |
06 | 13 | uint8 | PAL基板バージョンとPAL基板ID | TWELITE ARIA |
07 | 14 | uint8 | センサーデータの数 | 7 つ |
| | | センサーデータ1 | |
00 | 15 | uint8 | 情報ビット | 拡張バイトなしuint8 |
34 | 16 | uint8 | データソース | パケットプロパティ |
00 | 17 | uint8 | 拡張バイト | なし |
03 | 18 | uint8 | データ長 | 3 バイト |
813500 | 19 | [uint8] | データ | ID129 、タイマイベント発生 |
| | | センサーデータ2 | |
12 | 22 | uint8 | 情報ビット | 拡張バイトありuint32 |
05 | 23 | uint8 | データソース | イベント |
35 | 24 | uint8 | 拡張バイト | タイマイベント |
04 | 25 | uint8 | データ長 | 4 バイト |
01000000 | 26 | uint32 | データ | タイマによる起床 |
| | | センサーデータ3 | |
11 | 30 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 31 | uint8 | データソース | 電圧 |
08 | 32 | uint8 | 拡張バイト | 電源電圧 |
02 | 33 | uint8 | データ長 | 2 バイト |
0D20 | 34 | uint16 | データ | 3360 mV |
| | | センサーデータ4 | |
11 | 36 | uint8 | 情報ビット | 拡張バイトありuint16 |
30 | 37 | uint8 | データソース | 電圧 |
01 | 38 | uint8 | 拡張バイト | ADC1の電圧 |
02 | 39 | uint8 | データ長 | 2 バイト |
04ED | 40 | uint16 | データ | 1261 mV |
| | | センサーデータ5 | |
00 | 42 | uint8 | 情報ビット | 拡張バイトなしuint8 |
00 | 43 | uint8 | データソース | 磁気 |
00 | 44 | uint8 | 拡張バイト | なし |
01 | 45 | uint8 | データ長 | 1 バイト |
80 | 46 | uint8 | データ | 磁石なし(定期送信) |
| | | センサーデータ6 | |
05 | 47 | uint8 | 情報ビット | 拡張バイトなしint16 |
01 | 48 | uint8 | データソース | 温度 |
00 | 49 | uint8 | 拡張バイト | なし |
02 | 50 | uint8 | データ長 | 2 バイト |
09D0 | 51 | int16 | データ | 25.12 °C |
| | | センサーデータ7 | |
01 | 53 | uint8 | 情報ビット | 拡張バイトなしuint16 |
02 | 54 | uint8 | データソース | 湿度 |
00 | 55 | uint8 | 拡張バイト | なし |
02 | 56 | uint8 | データ長 | 2 バイト |
0F34 | 57 | uint16 | データ | 38.92 % |
| | | センサーデータの末端 | |
79 | 59 | uint8 | チェックサム1 | 0x79 |
34 | | uint8 | チェックサム2 | 0x34 |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
データの判別条件
親機・中継機アプリは、さまざまな種類の子機からデータを受信することができます。
出力されたデータがアリアアプリ(TWELITE ARIAモード)のものであるかを確認するには、次の箇所を参照してください。
# | データ | 項目 | 条件 |
---|
0 | uint32 | 中継機のシリアルID | MSBが1であること |
7 | uint32 | 送信元のシリアルID | MSBが1であること |
12 | uint8 | センサー種別 | 0x80 であること |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x06 であること |
- | - | ペイロードのサイズ | 60バイトであること |
パーサの実装例
開閉センサーパルモード
1.1.1.4.4 - パル・キュー・アリアアプリからの出力の詳細(親機・中継機アプリ)
パル・キュー・アリアアプリに共通する出力書式の詳細
パル・キュー・アリアアプリの子機から受信したデータは、共通の書式に沿って出力されます。ここには、その詳細を記しています。それぞれの具体的な出力例は、
各アプリのページをご覧ください。
全体
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしの場合80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | 0x8??????? |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | 0x80 のみ |
13 | uint8 | PAL基板バージョンとPAL基板ID | 0x81 など |
14 | uint8 | センサーデータの数 | |
15 | [uint8] | センサーデータの羅列 | 長さ\(N\)のバイト列 |
15+\(N\) | uint8 | チェックサム1 | 直前までのCRC8 |
| uint8 | チェックサム2 | チェックサム1までのLRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:80000000A8001C82012B1E01808103113008020D0C1130010203E40000000101EC6E
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
A8 | 4 | uint8 | LQI | 168/255 |
001C | 5 | uint16 | 続き番号 | 28 |
82012B1E | 7 | uint32 | 送信元のシリアルID | 0x2012B1E |
01 | 11 | uint8 | 送信元の論理デバイスID | 0x01 |
80 | 12 | uint8 | センサー種別 | - |
81 | 13 | uint8 | PAL基板バージョンとPAL基板ID | 0x81 |
03 | 14 | uint8 | センサーデータの数 | 3 つ |
1130...0101 | 15 | [uint8] | センサーデータの羅列 | 長さ17のバイト列 |
EC | 15+17 | uint8 | チェックサム1 | 0xEC |
6E | | uint8 | チェックサム2 | 0x6E |
| | char | フッタ | '\r' |
| | char | フッタ | '\n' |
センサーデータ
データ形式
# | データ | 内容 | 備考 |
---|
0 | uint8 | 情報ビット | データの型や拡張バイトの有無 |
1 | uint8 | データソース | センサー値の種類 |
2 | uint8 | 拡張バイト | センサー値の付加情報 |
3 | uint8 | データ長 | センサー値の長さ |
4 | [uint8] | データ | センサー値 |
出力データの例
情報ビット
センサー値のデータ型や拡張バイトの有無、読み込みエラーの有無を示します。
bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|
機能 | ERR | - | - | EXT | - | TYP:2 | TYP:1 | TYP:0 |
各機能は次の内容を示します。
機能 | 説明 | 値 | 内容 |
---|
ERR | 読み込みエラーの有無 | 0 | 正常 |
| | 1 | エラーあり |
EXT | 拡張バイトの有無 | 0 | 拡張バイトなし |
| | 1 | 拡張バイトあり |
TYP | データ型 | 000 | uint8 |
| | 001 | uint16 |
| | 010 | uint32 |
| | 011 | N/A |
| | 100 | int8 |
| | 101 | int16 |
| | 110 | int32 |
| | 111 | [uint8] |
データソース
センサー値の種類を示します。
値 | 内容 |
---|
0x00 | 磁気 |
0x01 | 温度 |
0x02 | 湿度 |
0x03 | 照度 |
0x04 | 加速度 |
0x05 | イベント |
0x30 | 電圧 |
0x34 | パケットプロパティ |
拡張バイト
連続データのインデックスなど、センサー値の付加情報を示します。
データソースが磁気/温度/湿度/照度/パケットプロパティの場合
なし
データソースが加速度の場合
加速度サンプルデータの属性を示します。
bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|
機能 | SFQ:2 | SFQ:1 | SFQ:0 | SNM:4 | SNM:3 | SNM:2 | SNM:1 | SNM:0 |
各機能は次の内容を示します。
機能 | 説明 | 値 | 内容 |
---|
SFQ | サンプリング周波数 | 000 (0x00|SNM ) | 25Hz |
| | 001 (0x20|SNM ) | 50Hz |
| | 010 (0x40|SNM ) | 100Hz |
| | 011 (0x60|SNM ) | 190Hz |
| | 100 以上 | 未定義 |
SNM | サンプル番号 | 0 -31 | 古い順 |
データソースがイベントの場合
イベントの発生要因を示します。
値 | 内容 |
---|
0x00 | 磁気 |
0x01 | 温度 |
0x02 | 湿度 |
0x03 | 照度 |
0x04 | 加速度 |
0x31 | デジタル入力 |
0x35 | タイマ |
データソースが電圧の場合
対象を示します。
値 | 内容 |
---|
0x01 | ADC1 |
0x02 | ADC2 |
0x03 | ADC3 |
0x04 | ADC4 |
0x08 | 電源 |
データ長
続くデータのバイト数を示します。
データ
センサー値を表します。
データソースが磁気の場合
データ型はuint8
です。
値 | 内容 |
---|
0x00 | 磁石なし |
0x01 | N極が近づいた |
0x02 | S極が近づいた |
0x80 | 磁石なし(定期送信) |
0x81 | N極が近くにある(定期送信) |
0x82 | S極が近くにある(定期送信) |
データソースが温度の場合
データ型はint16
です。
100倍されたセ氏の温度を表します。
データソースが湿度の場合
データ型はuint16
です。
100倍された相対湿度を表します。
データソースが照度の場合
データ型はuint32
です。
ルクスの値を表します。
データソースが加速度の場合
int16
のデータが3つ続きます。
X,Y,Z軸の値(mG)の合計は6バイトです。
byte | 0 | 1 | 2 | 3 | 4 | 5 |
---|
内容 | X:15-8 | X:7-0 | Y:15-8 | Y:7-0 | Z:15-8 | Z:7-0 |
データソースがイベントの場合
uint8
のデータが4つ続きます。
先頭のデータがイベントの内容を表し、残りは未使用です。
拡張バイトが磁気の場合
先頭の値 | 内容 |
---|
0x00 | 磁石なし |
0x01 | N極が近くにある |
0x02 | S極が近くにある |
拡張バイトが加速度の場合
先頭の値 | 内容 |
---|
0x01 | サイコロ:1 |
0x02 | サイコロ:2 |
0x03 | サイコロ:3 |
0x04 | サイコロ:4 |
0x05 | サイコロ:5 |
0x06 | サイコロ:6 |
0x08 | シェイク |
0x10 | ムーブ |
拡張バイトがタイマの場合
データソースが電圧の場合
データ型はuint16
です。
mV単位の電圧を表します。
データソースがパケットプロパティの場合
uint8
のデータが3つ続きます。
byte | 0 | 1 | 2 |
---|
データ | パケットID | 起床要因の根源 | 起床要因の条件 |
各データは次の内容を表します。
データ | 値 | 内容 |
---|
パケットID | 0 | イベントなし、ADC1と電源の電圧のみ |
| 1 -127 | イベントなし、その他のデータあり |
| 128 | イベントあり、ADC1と電源の電圧のみ |
| 129 -255 | イベントあり、その他のデータあり |
起床要因の根源 | 0x00 | 磁気 |
| 0x01 | 温度 |
| 0x02 | 湿度 |
| 0x03 | 照度 |
| 0x04 | 加速度 |
| 0x31 | デジタル入力 |
| 0x35 | タイマ |
起床要因の条件 | 0x00 | イベントが発生した |
| 0x01 | 値が変化した |
| 0x02 | 値がしきい値を上回った |
| 0x03 | 値がしきい値を下回った |
| 0x04 | 値が範囲を満たした |
1.1.1.5 - actからの出力(親機・中継機アプリ)
act からデータを受信した際の出力書式
act から受信したデータ
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信元の論理デバイスID | |
1 | uint8 | コマンド種別 | 0xAA のみ |
2 | uint8 | 応答ID | 0x00 -0x7F |
3 | uint32 | 送信元のシリアルID | |
7 | uint32 | 送信先のシリアルID | 論理デバイスID指定時は00000000 |
11 | uint8 | LQI | 0 -255 |
12 | uint16 | データのバイト数 | |
14 | [uint8] | 任意のデータ | 長さ\(N\)のバイト列 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
出力データの例
:FEAA008201015A00000000B7000F424154310F0CEE000B03FF03FF03FF92
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
FE | 0 | uint8 | 送信元の論理デバイスID | 0xFE |
AA | 1 | uint8 | コマンド種別 | 0xAA |
00 | 2 | uint8 | 応答ID | 0x00 |
8201015A | 3 | uint32 | 送信元のシリアルID | 0x201015A |
00000000 | 7 | uint32 | 送信先のシリアルID | 論理デバイスID指定 |
B7 | 11 | uint8 | LQI | 183/255 |
000F | 12 | uint16 | データのバイト数 | 15 バイト |
424154310F0CEE000B03FF03FF03FF | 14 | [uint8] | 任意のデータ | そのまま |
92 | | uint8 | チェックサム | 0x92 |
| | char | フッタ | \r |
| | char | フッタ | \n |
1.1.1.6 - 無線タグアプリからの出力(親機・中継機アプリ)
無線タグアプリからデータを受信した際の出力書式
子機へ主なセンサーを接続した際の出力を記載します。
アナログセンサー
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしは80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | |
13 | uint8 | 電源電圧(mV) | 電源電圧の計算を参照 |
14 | uint16 | ADC1の電圧 | |
16 | uint16 | ADC2の電圧 | |
18 | uint32 | 未使用 | |
22 | uint8 | チェックサム | |
出力データの例
:80000000B700628201015A0010DF08FD09A300000000E9
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
B7 | 4 | uint8 | LQI | 183/255 |
0062 | 5 | uint16 | 続き番号 | 98 |
8201015A | 7 | uint32 | 送信元のシリアルID | 0x201015A |
00 | 11 | uint8 | 送信元の論理デバイスID | 0x00 |
10 | 12 | uint8 | センサー種別 | アナログセンサー |
DF | 13 | uint8 | 電源電圧(mV) | 3330 mV |
08FD | 14 | uint16 | ADC1の電圧 | 2301 mV |
09A3 | 16 | uint16 | ADC2の電圧 | 2467 mV |
00000000 | 18 | uint32 | 未使用 | |
E9 | 22 | uint8 | チェックサム | 0xE9 |
| | char | フッタ | \r |
| | char | フッタ | \n |
加速度センサー(ADXL34x / TWELITE 2525A)
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしは80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | |
13 | uint8 | 電源電圧(mV) | 電源電圧の計算を参照 |
14 | uint16 | ADC1の電圧 | |
16 | uint16 | ADC2の電圧 | |
18 | uint8 | センサーモード番号 | |
19 | int16 | X軸の加速度 | 単位はmG*10 |
21 | int16 | Y軸の加速度 | 単位はmG*10 |
23 | int16 | Z軸の加速度 | 単位はmG*10 |
25 | uint8 | チェックサム | |
出力データの例
:8000000063001781013C850035DF057702F2000000FF96FFF0BB
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | : |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
63 | 4 | uint8 | LQI | 99/255 |
0017 | 5 | uint16 | 続き番号 | 23 |
81013C85 | 7 | uint32 | 送信元のシリアルID | 0x1013C85 |
00 | 11 | uint8 | 送信元の論理デバイスID | 0x00 |
35 | 12 | uint8 | センサー種別 | 加速度センサー(ADXL34x) |
DF | 13 | uint8 | 電源電圧(mV) | 3330 mV |
0577 | 14 | uint16 | ADC1の電圧 | 1399 mV |
02F2 | 16 | uint16 | ADC2の電圧 | 754 mV |
00 | 18 | uint8 | センサーモード番号 | 通常 |
0000 | 19 | int16 | X軸の加速度 | 0 mG |
FF96 | 21 | int16 | Y軸の加速度 | -1060 mG |
FFF0 | 23 | int16 | Z軸の加速度 | -160 mG |
BB | 25 | uint8 | チェックサム | 0xBB |
| | char | フッタ | \r |
| | char | フッタ | \n |
スイッチ
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint32 | 中継機のシリアルID | 中継なしは80000000 |
4 | uint8 | LQI | 0 -255 |
5 | uint16 | 続き番号 | |
7 | uint32 | 送信元のシリアルID | |
11 | uint8 | 送信元の論理デバイスID | |
12 | uint8 | センサー種別 | |
13 | uint8 | 電源電圧(mV) | 電源電圧の計算を参照 |
14 | uint16 | ADC1の電圧 | |
16 | uint16 | ADC2の電圧 | |
18 | uint8 | センサーモード番号 | 0 がHi→Lo、1 がLo→Hi |
19 | uint8 | DI1 の状態 | 1 がLo |
20 | uint8 | 未使用 | |
21 | uint8 | チェックサム | |
出力データの例
:800000009C00118201015A00FEDF000709A300010064
| # | データ | 内容 | 値 |
---|
: | | char | ヘッダ | |
80000000 | 0 | uint32 | 中継機のシリアルID | 中継なし |
9C | 4 | uint8 | LQI | 156/255 |
0062 | 5 | uint16 | 続き番号 | 98 |
8201015A | 7 | uint32 | 送信元のシリアルID | 0x201015A |
00 | 11 | uint8 | 送信元の論理デバイスID | 0x00 |
FE | 12 | uint8 | センサー種別 | スイッチ |
DF | 13 | uint8 | 電源電圧(mV) | 3330 mV |
0007 | 14 | uint16 | ADC1の電圧 | 7 mV |
09A3 | 16 | uint16 | ADC2の電圧 | 2467 mV |
00 | 18 | uint8 | センサーモード番号 | Hi→Lo |
01 | 19 | uint8 | DI1 の状態 | Lo |
00 | 20 | uint8 | 未使用 | |
64 | 21 | uint8 | チェックサム | 0x64 |
| | char | フッタ | \r |
| | char | フッタ | \n |
電源電圧の計算
電源電圧 \(V_{cc}\) は、受信した値 \(e_{cc}\) を使って次のように表すことができます。
$$\begin{cases}
V_{cc} = 1950+5e_{cc} & (e_{cc} <= 170) \\
V_{cc} = 2800+10(e_{cc}-170) & (e_{cc} > 170)
\end{cases}$$
単位は mV
1.1.2 - 親機・中継機アプリの送信コマンド
子機へデータを送信する際の入力
既定の書式でシリアルポートから入力されたコマンドを子機へ送信します。
1.1.2.1 - 超簡単!標準アプリへの入力(親機・中継機アプリ)
超簡単!標準アプリの出力を制御するためのコマンド
超簡単!標準アプリの出力を制御できます。
デジタル・アナログ入出力
0x80
:相手端末の出力変更
相手端末の出力信号を制御します。
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信先の論理デバイスID | 親機0x00 ,子機0x01 -0x64 ,全子機0x78 |
1 | uint8 | コマンド番号 | 0x80 のみ |
2 | uint8 | 書式バージョン | 0x01 のみ |
3 | uint8 | デジタル信号 | LSBからDOx に対応、0 でHigh |
4 | uint8 | デジタル信号マスク | LSBからDOx に対応、1 で有効 |
5 | uint16 | PWM1 信号 | 0 -1024 ,0xFFFF で無効 |
7 | uint16 | PWM2 信号 | 0 -1024 ,0xFFFF で無効 |
9 | uint16 | PWM3 信号 | 0 -1024 ,0xFFFF で無効 |
11 | uint16 | PWM4 信号 | 0 -1024 ,0xFFFF で無効 |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
1.1.2.2 - シリアル通信アプリへの入力(親機・中継機アプリ)
シリアル通信アプリへデータを送信するコマンド
シリアル通信アプリの子機へデータを送信できます(書式モード、簡易形式)
UART
書式モード:アスキー・簡易形式
App_Wings v1.3 以降では、書式モード(A)の簡易形式に対応しています。
2024年9月現在、公開中の SDK に App_Wings v1.3 は含まれていません。
次のリンクから App_Wings v1.3 をダウンロードし、ファイルを指定して書き込むことで使用できます。
データ形式
# | データ | 内容 | 備考 |
---|
| char | ヘッダ | : のみ |
0 | uint8 | 送信先の論理デバイスID | 親機0x00 ,子機0x01 -0x64 ,全子機0x78 |
1 | uint8 | コマンド番号 | 0x80 未満の任意の値 |
2 | [uint8] | 任意のデータ | 長さ\(N\)のバイト列(\(N\leqq80\)を推奨) |
| uint8 | チェックサム | LRC8 |
| char | フッタ | CR (0x0D /'\r' ) |
| char | フッタ | LF (0x0A /'\n' ) |
1.1.2.3 - パルアプリ(通知パル)への入力(親機・中継機アプリ)
通知パルのLEDを制御するためのコマンド
通知パルのLEDを制御できます。
:0190010004000169[CR][LF]
^1^2^3^^^^^^^4^5
番号 | バイト数 | 意味 | データ例 | 備考 |
---|
1 | 1 | 送信先の論理デバイスID | 01 | 送信先のTWELITE PALの論理デバイスIDを指定します。 0x01から0x64まで指定可能です。 |
2 | 1 | コマンド種別 | 90 | |
3 | 1 | コマンドパラメータ数 | 01 | コマンドパラメータの数を指定します。例えば、コマンドパラメータを1つだけ指定するなら1に、2つ指定するには2にします。 |
4 | コマンド数x4 | コマンドパラメータ | 00040001 | イベントやLEDの色などを指定するためのパラメータを指定します。 詳細はコマンドパラメータを参照してください。 |
5 | 1 | チェックサム | 69 | 1~4の各バイトの和を8ビット幅で計算し2の補数をとります。つまりデータ部の各バイトの総和+チェックサムバイトを8ビット幅で計算すると0になります。 チェックサムバイトをアスキー文字列2文字で表現します。 例えば 00A01301FF123456 では 0x00 + 0xA0 + … + 0x56 = 0x4F となり、この二の補数は0xB1 です。(つまり 0x4F + 0xB1 = 0) チェックサムをXにすることでチェックサムを省略可能です。 |
6 | 2 | フッター | [CR][LF] | [CR] (0x0D) [LF] (0x0A) を指定します。ただし、チェックサムをXで省略する場合はフッターも省略可能です。 |
コマンドパラメータ
4バイトのコマンドパラメータを組み合わせてコマンドを指定します。
0x00:イベントIDを送信する
TWELITE PALは受信したイベントIDごとの振る舞いが設定されております。 本パラメータでは送信先のTWELITE PALにイベントIDを送信し、設定した動作を行います。
イベント毎の振る舞いを変更するにはTWELITE PALの設定を変更してください。
番号 | バイト数 | 内容 | 備考 |
---|
1 | 1 | コマンドパラメータID | 0x00 |
2 | 1 | 送信先PAL ID | 送信先のPAL IDを指定します。 0x04:通知パル 0xFF:すべてのTWELITE PAL |
3 | 1 | 未使用領域 | 0x00固定 |
4 | 1 | イベントID | 0~16までのイベントIDを指定します。 |
0x01 : LEDの色、点滅パターン、明るさを送信する
送信先の通知パルにLEDの色、点滅パターン、明るさを送信します。
番号 | バイト数 | 内容 | 備考 |
---|
1 | 1 | コマンドパラメータID | 0x01 |
2 | 1 | 色
| 0:赤 1:緑 2:青 3:黄色 4:紫 5:水色 6:白 7:暖かい白
|
3 | 1 | 点滅パターン | 0:常時点灯 1~3:点滅パターン(数値が大きくなるほど点滅が早くなる。) |
4 | 1 | 明るさ | 0:消灯 0x01~0x0F:明るさ(数値が大きいほど明るくなる。) |
0x02 : 点灯時間を送信する
通知パルのLEDの点灯時間を送信します。
本コマンドパラメータは、LEDの色、点滅パターン、明るさのパラメータが含まれないので、コマンドパラメータ0x01または0x03と組み合わせて使用します。
本コマンドパラメータを使用する場合は、送信間隔を必ず点灯時間より大きく設定してご使用ください。
番号 | バイト数 | 内容 | 備考 |
---|
1 | 1 | コマンドパラメータID | 0x02 |
2 | 1 | 未使用領域
| 0xFF固定 |
3 | 1 | 未使用領域 | 0x00固定 |
4 | 1 | 点灯時間 | 秒で指定(0は常時点灯) |
0x03:LEDの色をRGBWで指定する
通知パルのLEDの点灯色をRGBWで送信します。
コマンドパラメータ0x00および0x01とは同時に使用できません。
番号 | バイト数 | 内容 | 備考 |
---|
1 | 1 | コマンドパラメータID | 0x03 |
2 | 1 | 未使用領域
| 0xFF固定 |
3 | 2 | LEDの点灯色 | LSBからRGBWの順番で4ビットずつ指定する。 数値が大きいほど明るい |
0x04:点滅パラメータを指定する。
通知パルのLEDの点滅周期と点滅Dutyを送信します。
本コマンドパラメータは、LEDの色のパラメータが含まれないので、コマンドパラメータ0x03と組み合わせて使用します。
コマンドパラメータ0x00および0x01とは同時に使用できません。
番号 | バイト数 | 内容 | 備考 |
---|
1 | 1 | コマンドパラメータID | 0x04 |
2 | 1 | 未使用領域
| 0xFF固定 |
3 | 1 | 点滅時間の割合 | 0x00~0xFFで指定する。 数値が大きいほど1周期当たりの点灯時間が長くなる。 1周期の半分だけ点灯させるには0x7Fを指定する。 |
4 | 1 | 点滅周期 | 0x00~0xFFで指定する。 設定値が1大きくなるごとに点滅の周期が約0.04sずつ増える。 1周期1秒にするには0x17を指定する。 |
コマンド例
例1:イベントを送信する
論理デバイスIDが1のNOTICE PALに対してイベント1を送信するコマンド例です。
:0190010004000169
^1^2^3^4^5^6^7^8
番号 | バイト数 | 意味 | データ例 | データ例の内容 | 備考 |
---|
1 | 1 | 送信先の論理デバイスID | 01 | 送信先の論理デバイスIDは0x01 | |
2 | 1 | コマンド種別 | 90 | 0x90コマンド | 90固定 |
3 | 1 | コマンド数 | 01 | コマンドは1個 | |
4 | 1 | コマンドID | 00 | コマンド00 | |
5 | 1 | 送信先PAL ID | 04 | 通知パルに対して送信する | |
6 | 1 | 未使用領域 | 00 | | |
7 | 1 | イベントID | 01 | イベント1 | 0x00~0x10まで |
8 | 1 | チェックサム | 69 | | |
例2:通知パルのLEDの点灯色を送信する
論理デバイスIDが1のNOTICE PALに対して明るさ8で白色にゆっくり点滅させるためのコマンドです。
:019001010601085E
^1^2^3^4^5^6^7^8
番号 | バイト数 | 意味 | データ例 | データ例の内容 | 備考 |
---|
1 | 1 | 送信先の論理デバイスID | 01 | 送信先の論理デバイスIDは0x01 | |
2 | 1 | コマンド種別 | 90 | 0x90コマンド | 90固定 |
3 | 1 | コマンド数 | 01 | コマンドは1個 | |
4 | 1 | コマンドパラメータID | 01 | コマンドパラメータID 0x01 | |
5 | 1 | 色 | 06 | 白 | |
6 | 1 | 点滅パターン | 01 | 点滅 | |
7 | 1 | 明るさ | 08 | 明るさ8 | 0x00~0x0Fまで |
8 | 1 | チェックサム | 5E | | |
例3:通知パルのLEDの点灯色と点灯時間を送信する
論理デバイスIDが1のNOTICE PALに対して紫に点灯させ、点灯後1秒で消灯させるコマンドです。
本コマンドを試す場合、送信間隔を必ず点灯時間より大きく設定してご使用ください。
:0190020104000802FF00015E
^1^2^3^4^5^6^7^8^9^a^b^c
番号 | バイト数 | 意味 | データ例 | データ例の内容 | 備考 |
---|
1 | 1 | 送信先の論理デバイスID | 01 | 送信先の論理デバイスIDは0x01 | |
2 | 1 | コマンド種別 | 90 | 0x90コマンド | 90固定 |
3 | 1 | コマンド数 | 02 | コマンドは2個 | |
4 | 1 | コマンドパラメータID | 01 | コマンドパラメータID 0x01 | |
5 | 1 | 色 | 04 | 紫 | |
6 | 1 | 点滅パターン | 00 | 点灯 | |
7 | 1 | 明るさ | 08 | 明るさ8 | 0x00~0x0Fまで |
8 | 1 | コマンドパラメータID | 02 | コマンドパラメータID 0x02 | |
9 | 1 | 未使用領域 | FF | | |
a | 1 | 未使用領域 | 00 | | |
b | 1 | 点灯時間 | 01 | 点灯後1秒で消える | |
c | 1 | チェックサム | 5E | | |
例4:通知パルに詳細な点灯色を送信する
論理デバイスIDが1のNOTICE PALに対して紫に点灯させるコマンドです。
:01900103FF0F0459
^1^2^3^4^5^^^6^7
番号 | バイト数 | 意味 | データ例 | データ例の内容 | 備考 |
---|
1 | 1 | 送信先の論理デバイスID | 01 | 送信先の論理デバイスIDは0x01 | |
2 | 1 | コマンド種別 | 90 | 0x90コマンド | 90固定 |
3 | 1 | コマンド数 | 01 | コマンドは2個 | |
4 | 1 | コマンドパラメータID | 03 | コマンドパラメータID 0x03 | |
5 | 1 | 未使用 | FF | | |
6 | 2 | LEDの点灯色 | 0F04 | 青:15、赤4の明るさで点灯させる。 | LSBからRGBWの順番で各色4bitずつ(0~15)で指定する。 数値が大きいほど明るい |
7 | 1 | チェックサム | 59 | | |
例5:通知パルのLEDの点灯色と点灯時間を送信する
論理デバイスIDが1のNOTICE PALに対して紫に点灯させ、点灯後1秒で消灯させるコマンドです。
本コマンドを試す場合、送信間隔を必ず点灯時間より大きく設定してご使用ください。
:0190020104000802FF00015E
^1^2^3^4^5^6^7^8^9^a^b^c
番号 | バイト数 | 意味 | データ例 | データ例の内容 | 備考 |
---|
1 | 1 | 送信先の論理デバイスID | 01 | 送信先の論理デバイスIDは0x01 | |
2 | 1 | コマンド種別 | 90 | 0x90コマンド | 90固定 |
3 | 1 | コマンド数 | 02 | コマンドは2個 | |
4 | 1 | コマンドパラメータID | 01 | コマンドパラメータID 0x01 | |
5 | 1 | 色 | 04 | 紫 | |
6 | 1 | 点滅パターン | 00 | 点灯 | |
7 | 1 | 明るさ | 08 | 明るさ8 | 0x00~0x0Fまで |
8 | 1 | コマンドパラメータID | 02 | コマンドパラメータID 0x02 | |
9 | 1 | 未使用領域 | FF | | |
a | 1 | 未使用領域 | 00 | | |
b | 1 | 点灯時間 | 01 | 点灯後1秒で消える | |
c | 1 | チェックサム | 5E | | |
1.2 - 親機・中継機アプリの中継機モード
子機や親機から受信したデータを再送信する
中継機モードでは、受信したパケットを再送信することで、子機と親機の通信距離を延ばすことができます。
中継したとき、親機が受信するパケットの順番が入れ替わってしまうことがあります。
100ms程度など短い間隔で連続的に送信する子機がいる際には、中継が間に合わない場合があります。本番環境でよく検証のうえご利用ください。
設定例
中継機として使用するには、インタラクティブモードの動作モードを1
以上としてください。
中継方式
TWELITE NETでは無線パケットの中継配送について、大きく分けて下表で示す2つの方式を用意しており、アプリケーションごとに異なります。本アプリでは下表で示すアプリケーションのパケットを識別し、中継することができます。
中継方式 | 対応アプリ |
---|
単純ネット | 超簡単!標準アプリ、リモコンアプリ、シリアル通信アプリ、アクト |
中継ネット | 無線タグアプリ、パルアプリ、キューアプリ |
単純ネットを使用した中継
単純ネットを使用するアプリの中継を行う場合、動作モードの値を1以上に設定することで3回まで中継することができます。
例えば、1. のように親機と子機の間に中継機が3台以内であれば親機にデータが届きますが、2. ように中継機が4台以上ある場合は親機にデータが届きません。
1. 子機 ---> 中継機 ---> 中継機 ---> 中継機 ---> 親機
→ 親機が子機のデータを3回中継して受信できる。
2. 子機 ---> 中継機 ---> 中継機 ---> 中継機 ---> 中継機 -x-> 親機\
→ 中継4回目で中継することをやめる。
単純ネットによる中継は、基本的に同報通信を使用して通信を行い、受信したパケットをすべて中継を行います。そのため、中継ネットワークを形成、維持するための通信が必要ないという利点がありますが、中継機が増えるほど爆発的に通信量が多くなることがあるという欠点もあります。
詳しくは こちら を参照ください。
中継ネットを使用した中継
中継ネットを使用するアプリのデータを1段の中継を行う場合、動作モードの値を1に設定してしてください。
複数回の中継を行う場合は、親機から遠くなるにつれて動作モードの設定値を大きくしてください。(設定値が昇順になっていれば設定値が飛んでもかまいません。)
本方式の最大中継回数は63回までです。
例1:1回の中継を行う場合\
子機 ---> 中継機(動作モード:1) ---> 親機
例2:2回の中継を行う場合\
子機 ---> 中継機(動作モード:2) ---> 中継機(動作モード:**1**) ---> 親機
例3:3回の中継を行う場合\
子機 ---> 中継機(動作モード:6) ---> 中継機(動作モード:3) ---> 中継機(動作モード:1) ---> 親機
中継ネットは上り方向の配送を効率的に実施する目的を持って設計されたツリー型ネットワークで、中継機は上位レイヤ(より動作モードの設定値が小さい親機もしくは中継機)を探索し、発見した上位レイヤ1台に対して中継を行います。
そのため、中継機の台数が増えても単純ネットほどは通信量が多くなりにくいですが、接続先を探索、維持するための通信が発生します。
詳しくは こちら をご覧ください。
静的ルーティング(中継先を直接指定)をする場合
中継ネットでの中継を行うときに、下図のような配置を考えた場合、中継機2の接続先は親機もしくは中継機1のどちらかを自動的に選択します。
基本的には、中継する回数が少ない方が親機への配送率が高くなる場合が多いですが、中継機2の接続先として親機が選択されてしまった場合、親機と中継機2の間に障害物があるため、通信品質が悪くなり、親機への配送率が中継機1を経由するときより低くなる可能性が高くなります。
そのため、本アプリには中継機の接続先を TWELITE のシリアル番号で指定する機能 (静的ルーティング機能) があります。
静的ルーティングを行う場合は、中継機2→中継機1への経路を静的にする、または全ての経路を静的に設定します。
すべての経路の設定にはその分だけ設定が多くなり、また、中継機の故障や電波状況の変化といった状況を想定した冗長化に対応できない点がありますが、上位通信先を確定するまでの時間をなくし、速やかに中継動作に移行できる利点があります。
静的ルーティングをするには下表のように中継機1には親機のSID、中継機2には中継機1のSIDになるように接続先を設定してください。
例: 2段中継の場合 (親機 ← 中継機1 ← 中継機2 ← 子機)
| TWELITEのSID例 | 接続先(A: Access Point Address)の設定例 | 動作モード(l:Mode)の設定例 |
---|
親機 | 810F155E | - | 0 |
中継機1 | 810E18E8 | 810F155E (親機のSID)※ | 1 |
中継機2 | 810F17FF | 810E18E8 (中継機1のSID) | 2 |
※上図の壁による影響のみに対処したい場合は設定不要です。
2 - インタラクティブモード(親機・中継機アプリ)
インタラクティブモードによる詳細な設定変更
インタラクティブモードでアプリの詳細設定を行うことができます。
ここでは親機・中継機アプリ(App_Wings)に固有の機能を説明します。共通機能については、TWELITE APPS マニュアル のトップページを参照してください。
表示例
次のような画面を表示します。
[CONFIG MENU/App_Wings:0/v1-02-1/SID=820163B2]
a: (0x67720102) Application ID [HEX:32bit]
c: (18 ) Channels Set
x: ( 0x03) RF Power/Retry [HEX:8bit]
b: (38400,8N1 ) UART Baud [9600-230400]
o: (0x00000000) Option Bits [HEX:32bit]
k: (0xA5A5A5A5) Encryption Key [HEX:32bit]
m: ( 0) Mode (Parent or Router)
A: (0x00000000) Access point address [HEX:32bit]
[ESC]:Back [!]:Reset System [M]:Extr Menu
コマンド
各コマンドの詳細を次に示します。
a
:アプリケーションID
通信を行う端末はすべて同一の値とします。論理的にネットワークを分離します。
c
:周波数チャネル
通信を行う端末はすべて同一の値とします。物理的にネットワークを分離します。
x
:送信出力と再送回数
電波の送信出力と、パケットを追加で送信する回数を指定します。
b
:UART代替設定
オプションビットのUART代替設定の有効化を設定した場合のUARTオプションを指定します。
値にはボーレートとパリティの設定をカンマで区切って指定します。
ボーレートは、9600
/19200
/38400
/57600
/115200
/230400
から選択できます。他の値を指定すると、誤差が生じる可能性があります。
パリティはN
: 無し、O
: Odd(奇数)、E
: Even(偶数)を設定します。ハードウェアフローは設定できません。8N1, 7E2 などと設定できますが、8N1 以外の設定は未検証です。事前に動作をご確認ください。
o
:オプションビット
32bit の数値を指定します。各ビットに紐付いた設定を有効化できます。
k
:暗号化鍵
オプションビットの暗号化通信の有効化を設定した場合の暗号化鍵を32bitの16進数で指定します。
m
:動作モード
0
は親機モード、1
は中継機モードへ設定します。
中継機モードで多段中継を行うときには、2
-63
とすることで中継機のレイヤを指定できます。
A
:中継先
中継機モードで静的ルーティングを行うときに接続する上位段の端末のシリアルID(0x8???????
)を指定します。このとき、0x00000000
とした場合は自動検索します。
オプションビットの詳細
オプションビットの値の各ビットに紐付いた設定を解説します。
00000200
:UART代替設定の有効化
b
:UART代替設定を有効とします。
00000400
:定期送信パケットの出力を停止
超簡単!標準アプリとリモコンアプリの1秒毎の定期送信と連続モード時のUART出力を停止します。
00001000
:暗号化通信の有効化
暗号化通信を有効にします。相手側の暗号化通信も有効化する必要があります。
00002000
:暗号化通信時の平文受信を有効化
暗号化通信を有効とした際に、暗号化していないパケットも受信するようにします。