leaps_mac_addr_get
MAC アドレス リストを取得します。デバイスは、ユーザーが指定したアドレスまたはデフォルトのアドレスを使用します。各インターフェイスのデフォルトの MAC アドレスは、leaps_mac_addr_set_once を呼び出すことによって 1 回だけ変更できます。この場合、アドレスは OTP メモリに書き込まれ、新しいデフォルトの MAC アドレスになります。ユーザーは、leaps_mac_addr_set を呼び出すことによってカスタム MAC アドレスを設定できます。デフォルトの MAC アドレスは、ユーザーが変更した後、工場出荷時設定にリセットすることで復元できます (leaps_factory_reset を参照)。特定のインターフェイスへの MAC アドレスのマッピングは、次のリストの順序に基づいています。
UWB
BLE
イーサネット
无线网络
BLE アドレスは、ランダム BLE アドレスまたはパブリック BLE アドレスにすることができます。特定のインターフェースがサポートされていない場合、リスト内の対応する MAC アドレスは空になります。
(なし)
type_0、type_1、type_2、type_3: 8 ビット符号なし整数 (リスト内の MAC アドレス番号 0、1、2、3 を表すタイプ)
mac_addr_0、mac_addr_1、mac_addr_2、mac_addr_3: 48 ビット値 (リトル エンディアンの MAC アドレス番号 0、1、2、3)
SPI/UART の例
TLV 要求 |
|
---|---|
タイプ |
長さ |
0x83 |
0x00 |
タイプ 0x83 (131 dec) はコマンド Leaps_mac_addr_get を意味します
TLV 応答 |
|||||
---|---|---|---|---|---|
タイプ |
長さ |
価値 |
タイプ |
長さ |
価値 |
(バイト 0 ~ 4) リトル エンディアンの MAC アドレス リストのフラグ
(バイト 5-10) リトルエンディアンの MAC アドレス 0
(バイト 11-16) リトルエンディアンの MAC アドレス 1
(バイト 17-22) リトルエンディアンの MAC アドレス 2
(バイト 23-28) リトルエンディアンの MAC アドレス 3
|
|||||
0x40 |
0x01 |
0x00 |
0x41 |
0x0D |
... |
タイプ 0x40 は、直前のコマンドの err_code を意味する
タイプ 0xC1(193 dec) は MAC アドレスリストを意味します
MAC アドレス フラグのエンコーディング
MAC アドレス リストのフラグ** |
||||||||
---|---|---|---|---|---|---|---|---|
バイト 0 |
バイト1 |
バイト2 |
バイト3 |
|||||
ビット 2 ~ 7 |
ビット0~1 |
ビット 11 ~ 15 |
ビット10 |
ビット 8 ~ 9 |
ビット 18 ~ 23 |
ビット 16 ~ 17 |
ビット 26-31 |
ビット 24-25 |
予約済み |
T_0 |
予約済み |
P_1 |
T_1 |
予約済み |
T_2 |
予約済み |
T_3 |
T_0、T_1、T_2、T_3 は MAC アドレスのタイプを表します。
0 - 空の MAC アドレス
1 - OTP メモリからのデフォルトの MAC アドレス。
2 - ユーザーが指定した MAC アドレス
3 - 変更可能なデフォルト MAC アドレス。leaps_mac_addr_set_once を使用して 1 回だけ書き換えることができます。
BLE アドレスがパブリック BLE アドレスの場合、P_1 が設定されます。 BLE MAC アドレスがランダムな場合、フラグはクリアされます。BLE アドレス タイプの詳細については、BLE 仕様を参照してください。