Skip to content
This repository was archived by the owner on Apr 29, 2025. It is now read-only.

Latest commit

 

History

History
55 lines (44 loc) · 2.28 KB

File metadata and controls

55 lines (44 loc) · 2.28 KB

Protocol

  • ブロック間の通信はシリアル通信を採用しています。
    • 受信(RxD)と送信(TxD)の2本の信号線で通信
  • 個々のブロックに含まれる情報
    • UID
      • 全てのブロックでユニーク(唯一無二)
      • 上位byte, 下位byteの順に送信する (UID_H(1B) -> UID_L(1B))
    • RoleID
      • ブロックの種類
  • 各ブロックはコマンドを送受信することで、ブロックの情報を伝搬させる。
    • 最終的にブロックの全情報はコアブロックに集約される。

コマンド

コマンド 内部名 意味等 プロトコル
0x0- 設定
0x01 COM_RST ブロックを初期状態にリセットする 0x01
0x81 COM_CFG ブロックを設定モードにする 0x81
0x82 COM_APL 設定の内容を適応・保存する(モードの変更、IDの変更など) 0x82
0x91 COM_SET ブロックの設定を変更する ※下記「COM_SET」を参照
0xA- ブロック探索
0xA0 COM_ASK 接続方向に接続されているブロックにIDを尋ねる 0xA0, 送信元RoleID(1B), 自UID(2B)
0xA1 COM_RET 接続方向以外の3方向にIDを知らせる 0xA1, 送信元RoleID(1B), 送信元UID(2B), 自RoleID(1B), 自UID(2B)
0xA2 COM_SWC 分岐/繰り返しブロックの探索方向を変更する 0xA2, 対象UID(2B), 0x01(True)/0x00(False)
0xD- データ転送
0xD0 COM_DAT コアブロックにデータを転送する 0xD0, 自UID(2B), データタイプ(1B), データ(1B)
0xD1 COM_TXD 指定されたIDにデータを転送する 0xD1, UID(2B), データタイプ(1B), データ(1B)

RoleID

データタイプ

データタイプ 意味 データの内容
0x01 LEDの点灯/消灯 0x01(点灯) / 0x00(消灯)

COM_SET

  • プロトコル
    • 0x91, 種別(1B), ... (各種別ごとに異なる)
ID 種別 内容 プロトコル
0x01 MODE 内部モードを変更する 0x91, 0x01, 新モード(1B)
0x02 ID ブロックのRoleID, UIDを変更する 0x91, 0x02, 新RoleID(1B), 新UID(2B)
モード 内部名 意味
0x01 PRODUCTION 通常動作モード
0x11 CONFIG 設定用モード
0x12 DEBUG デバッグモード(受信待機中にLEDが点滅する等)