dwm_status_get

システムステータスを取得します。次のフラグが使用可能です。

  • 位置データの準備ができました

  • ノードが UWB ネットワークに参加しました

  • 新しいバックホール データの準備ができました

  • バックホールのステータスが変更されました

  • バックホールルートが初期化されました

  • UWB スキャン結果の準備ができました

  • UWB 経由でユーザー データを受信しました

  • UWB 経由で送信されたユーザー データ

  • ファームウェアのアップデートが進行中です

以下を除き、フラグは呼び出し後にクリアされます。

  • ノードが UWB ネットワークに参加しました

  • バックホールルートが初期化されました

  • ファームウェアのアップデートが進行中です

int dwm_status_get(dwm_status_t*)
パラメータ
  • input -- (なし)

  • output -- ステータスコード,ステータス

  • status -- loc_ready, uwbmac_joined, bh_data_ready, bh_initialized, bh_status_changed, uwb_scan_ready, usr_data_ready

  • loc_ready -- '0' | 1 (新しい位置データが準備できました)

  • uwbmac_joined -- '0' | 1 (ノードは UWB ネットワークに接続されています)

  • bh_data_ready -- '0' | 1 (UWB MAC バックホール データ準備完了)

  • bh_status_changed -- '0' | 1 (UWB MAC ステータスが変更され、バックホールで使用されます)

  • bh_initialized -- '0' | 1 (ノードは UWB バックホール経由でルートを初期化しました)

  • uwb_scan_ready -- '0' | 1 (UWB スキャン結果は準備完了)

  • usr_data_ready -- '0' | 1 (UWB 経由で受信したユーザー データ)

  • usr_data_sent -- '0' | 1 (UWB 経由で送信されたユーザー データ)

  • fwup_in_progress -- '0' | 1 (ファームウェアアップデート中)

Cコード例

dwm_status_t status;
int rv;
rv = dwm_status_get(&status);
if (rv == DWM_OK) {
    printf("loc_data: %d\n", status.loc_dat1);
    printf("uwbmac_joined: %d\n", status.uwbmac_joined);
    printf("bh_data_ready: %d\n", status.bh_data_ready);
    printf("bh_status_changed: %d\n", status.bh_status_changed);
    printf("bh_initialized: %d\n", status.bh_initialized);
    printf("uwb_scan_ready: %d\n", status.uwb_scan_ready);
    printf("usr_data_ready: %d\n", status.usr_data_ready);
    printf("usr_data_sent: %d\n", status.usr_data_sent);
    printf("fwup_in_progress: %d\n", status.fwup_in_progress);
}
else {
    printf("error\n");
}

SPI/UART 例

TLV 要求

タイプ

長さ

0x32

0x00

タイプ 0x32 はコマンド dwm_status_get を意味します

TLV 応答

タイプ

長さ

値(エラーコードを参照)

タイプ

長さ

価値

0x40

0x01

0x00

0x5A

0x02

loc_ready (ビット 0) uwbmac_joined (ビット 1) bh_status_changed (ビット 2) bh_data_ready (ビット 3) bh_initialized (ビット 4) uwb_scan_ready (ビット 5) usr_data_ready (ビット 6) usr_data_sent (ビット 7) fwup_in_progress(ビット 8) 予約済み (ビット 9 ~ 15)

0x01 0x00

タイプ 0x5A はステータスを意味します
タイプ0x40は、直前のコマンドの ステータスコード を意味する