構造体
BarePacket
親機が子機から受信したパケットの電文情報から得た素のデータを格納します。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t* | u8Payload | バイナリ変換したペイロードデータ(: とチェックサム、CRLF を除く) |
uint16_t | u16PayloadSize | 上記データのバイト数 |
uint8_t | u8Checksum | 上記データのチェックサム |
手続き
型と名称 | 内容 |
---|---|
uint8_t* u8From(int) | 指定位置以降のペイロードデータを取得する |
uint8_t u8At(int) | 指定位置のペイロードデータを8ビット非不整数として取得する |
int8_t i8At(int) | 指定位置のペイロードデータを8ビット整数として取得する |
uint16_t u16At(int) | 指定位置のペイロードデータを16ビット非不整数として取得する |
int16_t i16At(int) | 指定位置のペイロードデータを16ビット整数として取得する |
uint32_t u32At(int) | 指定位置のペイロードデータを32ビット非不整数として取得する |
int32_t i32At(int) | 指定位置のペイロードデータを32ビット整数として取得する |
mwings::ParsedPacketBase
親機が子機から受信したパース済みデータを格納する構造体の抽象型です。
データ
型 | 名称 | 内容 |
---|---|---|
uint32_t | u32SourceSerialId | 送信元のシリアルID |
uint8_t | u8SourceLogicalId | 送信元の論理デバイスID |
uint16_t | u16SequenceNumber | シーケンス番号 |
uint8_t | u8Lqi | LQI |
uint16_t | u16SupplyVoltage | 電源電圧 (mV) |
この抽象型には、共通して利用されるデータを記述しています。
この抽象型から派生した構造体(例:ParsedAppTwelitePacket
)では、この抽象型のデータを併せて利用できます。
ParsedAppTwelitePacket
親機が超簡単!標準アプリの子機から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8DestinationLogicalId | 送信先の論理デバイスID |
uint8_t | u8RelayCount | 中継回数 |
bool | bPeriodic | 定期送信パケットならtrue |
bool[4] | bDiChanged | 各 DI1-4 が変化したならtrue |
bool[4] | bDiState | 各 DI1-4 が Low 状態ならtrue |
uint16_t[4] | u16AiVoltage | 各 AI1-4 の入力電圧 (mV) |
ParsedAppIoPacket
親機がリモコンアプリの子機から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8RelayCount | 中継回数 |
bool[12] | bDiState | 各 DI が Low 状態ならtrue |
bool[12] | bDiValid | 各 DI が有効ならtrue |
bool[12] | bDiInterrupt | 各 DI が割り込みにより変化したならtrue |
ParsedAppAriaPacket
親機がアリアアプリの子機(TWELITE ARIA モード)から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
int16_t | i16Temp100x | 100倍された温度(摂氏) |
uint16_t | u16Humid100x | 100倍された相対湿度 (%) |
uint8_t | u8MagnetState | 磁気イベントID |
bool | bMagnetStateChanged | 磁気センサの状態が変化したならtrue |
磁気イベントID
ID | 内容 |
---|---|
0x00 | 近くに磁石がない |
0x01 | N極が近くにある |
0x02 | S極が近くにある |
ParsedAppCuePacket
親機がキューアプリの子機(TWELITE CUE モード)から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
int16_t[10] | i16SamplesX | 各サンプルの X 軸加速度 (mG) |
int16_t[10] | i16SamplesY | 各サンプルの Y 軸加速度 (mG) |
int16_t[10] | i16SamplesZ | 各サンプルの Z 軸加速度 (mG) |
uint8_t | u8SampleCount | サンプル数 |
bool | bHasAccelEvent | 加速度イベントがあるならtrue |
uint8_t | u8AccelEvent | 加速度イベントID |
uint8_t | u8MagnetState | 磁気イベントID |
bool | bMagnetStateChanged | 磁気センサの状態が変化したならtrue |
加速度イベントID
ID | 内容 |
---|---|
0x01 ~0x06 | サイコロ |
0x08 | シェイク |
0x10 | ムーブ |
磁気イベントID
ID | 内容 |
---|---|
0x00 | 近くに磁石がない |
0x01 | N極が近くにある |
0x02 | S極が近くにある |
ParsedAppPalAmbPacket
親機がパルアプリの子機(環境センサーパル)から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint16_t | u16Ai1Voltage | AI1 の入力電圧 (mV) |
int16_t | i16Temp100x | 100倍された温度(摂氏) |
uint16_t | u16Humid100x | 100倍された相対湿度 (%) |
uint32_t | u32Illuminance | 照度(ルクス) |
ParsedAppPalMotPacket
親機がパルアプリの子機(動作センサーパル)から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint16_t | u16Ai1Voltage | AI1 の入力電圧 (mV) |
int16_t[16] | i16SamplesX | 各サンプルの X 軸加速度 (mG) |
int16_t[16] | i16SamplesY | 各サンプルの Y 軸加速度 (mG) |
int16_t[16] | i16SamplesZ | 各サンプルの Z 軸加速度 (mG) |
uint8_t | u8SampleCount | サンプル数 |
uint16_t | u16SamplingFrequency | サンプリング周波数 (Hz) |
ParsedAppPalOpenClosePacket
親機がパルアプリの子機(開閉センサーパル)から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint16_t | u16Ai1Voltage | AI1 の入力電圧 (mV) |
uint8_t | u8MagnetState | 磁気イベントID |
bool | bMagnetStateChanged | 磁気センサの状態が変化したならtrue |
磁気イベントID
ID | 内容 |
---|---|
0x00 | 近くに磁石がない |
0x01 | N極が近くにある |
0x02 | S極が近くにある |
ParsedAppUartAsciiPacket
親機がシリアル通信アプリの子機(Aモード)から受信したデータ(簡易形式)を格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8CommandId | コマンド種別(応答ID) |
uint8_t* | u8Data | データ |
uint16_t | u16DataSize | データ長 |
ParsedAppUartAsciiExtendedPacket
親機がシリアル通信アプリの子機(Aモード)から受信したデータ(拡張形式)を格納する構造体です。
AppUartAsciiExtendedPacketParser.h
データ
型 | 名称 | 内容 |
---|---|---|
uint32_t | u32DestinationSerialId | 送信先のシリアルID |
uint8_t | u8CommandId | コマンド種別(応答ID) |
uint8_t* | u8Data | データ |
uint16_t | u16DataSize | データ長 |
ParsedActPacket
親機がactの子機から受信したデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8CommandId | コマンド種別(応答ID) |
uint8_t* | u8Data | データ |
uint16_t | u16DataSize | データ長 |
mwings::CommandBase
親機から子機に送信するコマンドデータを格納する構造体の抽象型です。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8DestinationLogicalId | 送信先の論理デバイスID |
手続き
型と名称 | 内容 |
---|---|
bool isValid() | データが正常ならtrue を返す(純粋仮想関数) |
この抽象型には、共通して利用されるデータや手続きを記述しています。
この抽象型から派生した構造体(例:AppTweliteCommand
)では、この抽象型のデータや手続きを併せて利用できます。
AppTweliteCommand
mwings::CommandBase
から派生
親機から超簡単!標準アプリの子機へ送信するコマンドデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
bool[4] | bDiToChange | 各 DO1-4 の状態を変更する場合はtrue |
bool[4] | bDiState | 各 DO1-4 を Low 状態にする場合はtrue |
bool[4] | bPwmToChange | 各 PWM1-4 の状態を変更する場合はtrue |
uint16_t[4] | u16PwmDuty | 各 PWM1-4 のデューティ比 (0-1024) |
AppIoCommand
mwings::CommandBase
から派生
親機から超簡単!標準アプリの子機へ送信するコマンドデータを格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
bool[12] | bDiToChange | 各 O1-12 の状態を変更する場合はtrue |
bool[12] | bDiState | 各 O1-12 を Low 状態にする場合はtrue |
AppPalNoticeCommand
mwings::CommandBase
から派生
親機からパルアプリ(通知パル)の子機へ送信するコマンドデータを格納する構造体です。
AppPalNoticeCommandSerializer.h
データ
型 | 名称 | 内容 |
---|---|---|
AppPalNoticeColor | eColor | 点灯色 |
AppPalNoticeBlinkSpeed | eBlinkSpeed | 点滅速度 |
uint8_t | u8Brightness | 明るさ (0-15) |
uint16_t | u16DurationInSec | 点灯時間(秒) |
AppPalNoticeDetailedCommand
mwings::CommandBase
から派生
親機からパルアプリ(通知パル)の子機へ送信するコマンドデータを格納する構造体です(詳細形式)。
AppPalNoticeDetailedCommandSerializer.h
データ
型 | 名称 | 内容 |
---|---|---|
AppPalNoticeRGBWColor | sRGBWColor | 点灯色 (RGBW) |
uint8_t | u8BlinkDutyPercentage | 点灯時間の割合 (%) |
float | fBlinkPeriodInSec | 点滅周期(秒) |
uint16_t | u16DurationInSec | 点灯時間(秒) |
AppPalNoticeEventCommand
mwings::CommandBase
から派生
親機からパルアプリ(通知パル)の子機へ送信するコマンドデータ(詳細形式)を格納する構造体です。
AppPalNoticeEventCommandSerializer.h
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8EventId | イベントID (0x00-0x10) |
AppUartAsciiCommand
mwings::CommandBase
から派生
親機からシリアル通信アプリ(Aモード)の子機へ送信するコマンドデータ(簡易形式)を格納する構造体です。
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | u8CommandId | コマンド種別(応答ID) |
uint8_t* | u8Data | データ |
uint16_t | u16DataSize | データ長 |
AppUartAsciiCommand
で表される簡易形式のコマンドデータは、シリアライズする必要がありません。
下記のようにして、Twelite.send()
を直接呼び出してください。
Twelite.send(command.u8DestinationLogicalId, command.u8CommandId,
command.u8Data, command.u16DataSize);
AppPalNoticeRGBWColor
AppPalNoticeDetailedCommand
で使用する点灯色(RGBW)を定義した構造体です。
AppPalNoticeDetailedCommandSerializer.h
データ
型 | 名称 | 内容 |
---|---|---|
uint8_t | red | R (0-15) |
uint8_t | green | G (0-15) |
uint8_t | blue | B (0-15) |
uint8_t | white | W (0-15) |
手続き
型と名称 | 内容 |
---|---|
bool isValid() | データが正常ならtrue を返す |
uint16_t u16() | LSB から RGBW の順に4ビットずつ並べた16ビット非不整数を返す |
列挙型
AppPalNoticeColor
uint8_t
ベースの enum class
?
AppPalNoticeCommand
で使用する点灯色を定義した列挙型です。
AppPalNoticeCommandSerializer.h
識別子 | 値 | 内容 |
---|---|---|
AppPalNoticeColor::RED | 0 | 赤 |
AppPalNoticeColor::GREEN | 1 | 緑 |
AppPalNoticeColor::BLUE | 2 | 青 |
AppPalNoticeColor::YELLOW | 3 | 黄色 |
AppPalNoticeColor::PURPLE | 4 | 紫 |
AppPalNoticeColor::LIGHT_BLUE | 5 | 水色 |
AppPalNoticeColor::WHITE | 6 | 白 |
AppPalNoticeColor::WARM_WHITE | 7 | 暖かい白 |
AppPalNoticeBlinkSpeed
uint8_t
ベースの enum class
AppPalNoticeCommand
で使用する点滅速度を定義した列挙型です。
AppPalNoticeCommandSerializer.h
識別子 | 値 | 内容 |
---|---|---|
AppPalNoticeBlinkSpeed::ALWAYS_ON | 0 | 常時点灯 |
AppPalNoticeBlinkSpeed::SLOW | 1 | おちついた点滅 |
AppPalNoticeBlinkSpeed::MEDIUM | 2 | ほどほどの点滅 |
AppPalNoticeBlinkSpeed::FAST | 3 | せわしない点滅 |
その他のデータ型
手続き
GetAppTweliteSerializedCommandPayloadSize()
constexpr
関数 ?
AppTweliteCommand
をシリアライズしたあとの固定長データのペイロードサイズを返す関数です。
型と名称 | 内容 |
---|---|
int GetAppTweliteSerializedCommandPayloadSize() | バイト数を返します |
GetAppAppPalNoticeSerializedCommandPayloadSize()
constexpr
関数
AppPalNoticeCommand
をシリアライズしたあとの固定長データのペイロードサイズを返す関数です。
AppPalNoticeCommandSerializer.h
型と名称 | 内容 |
---|---|
int GetAppPalNoticeSerializedCommandPayloadSize() | バイト数を返します |
GetAppAppPalNoticeDetailedSerializedCommandPayloadSize()
constexpr
関数
AppPalNoticeDetailedCommand
をシリアライズしたあとの固定長データのペイロードサイズを返す関数です。
AppPalNoticeDetailedCommandSerializer.h
型と名称 | 内容 |
---|---|
int GetAppPalNoticeDetailedSerializedCommandPayloadSize() | バイト数を返します |
GetAppAppPalNoticeEventSerializedCommandPayloadSize()
constexpr
関数
AppPalNoticeEventCommand
をシリアライズしたあとの固定長データのペイロードサイズを返す関数です。
AppPalNoticeEventCommandSerializer.h
型と名称 | 内容 |
---|---|
int GetAppPalNoticeEventSerializedCommandPayloadSize() | バイト数を返します |