如何获取设备的真实MAC地址

了解更多常见问题教程

10个帖子/ 0个新帖子
最后发表
HarishKumar
离线
最后看到:7个月2小时前
加入:2020-02-17 06:31
如何获取设备的真实MAC地址

大家好!

我们有25台DA14580设备。我们希望在通告包中广播自己的MAC地址。如何获得自己的MAC地址每个设备的?

因为IOS应用程序由于安全原因无法获取广播设备的MAC地址。

问候,

哈瑞

设备:
PM_Dialog
离线
最后看到:32分29秒前
工作人员
加入:2018-02-08 11:03
嗨HarishKumar,

嗨HarishKumar,

为了确认我是否理解你想要完成的目标,让我问:

你指的是设备发布的BLE BD地址吗?

>>>如何获取每个设备的自己的MAC地址?

你的意思是如何获取申请代码中的BD地址?

如果您能就您的需求提供一些额外的信息,那将非常有帮助。

谢谢,PM_Dialog

HarishKumar
离线
最后看到:7个月2小时前
加入:2020-02-17 06:31
是的

是的

如何获得自己的应用程序代码中的BD地址?

问候,

哈瑞

PM_Dialog
离线
最后看到:32分29秒前
工作人员
加入:2018-02-08 11:03
嗨,哈瑞,

嗨,哈瑞,

BD地址保存在cmd->op.addr中。请检查user_app_advertise()函数中的CMD。

Gapm_air_operation结构体包括bd_addr addr结构体,该结构体提供自己的静态私有随机地址。

谢谢,PM_Dialog

HarishKumar
离线
最后看到:7个月2小时前
加入:2020-02-17 06:31
我该打到哪里

我需要在哪里调用这个结构?你能给出其中的逻辑吗?

问候,

哈瑞

PM_Dialog
离线
最后看到:32分29秒前
工作人员
加入:2018-02-08 11:03
嗨,哈瑞,

嗨,哈瑞,

您在代码中使用的是哪种BD地址?

谢谢,PM_Dialog

HarishKumar
离线
最后看到:7个月2小时前
加入:2020-02-17 06:31

我用GAPM_PUBLIC_ADDR。

Static const struct advertise_configuration user_adv_conf = {
///设备自己的BD地址来源:
/// - GAPM_PUBLIC_ADDR:公共地址
.addr_src = GAPM_PUBLIC_ADDR,

请共享这行代码打印设备自己的MAC地址。

问候,

哈瑞。

PM_Dialog
离线
最后看到:32分29秒前
工作人员
加入:2018-02-08 11:03
嗨,哈瑞,

嗨,哈瑞,

因此,如果我理解正确,设备开始发布在CFG_NVDS_TAG_BD_ADDRESS宏中设置的BB。那是正确的吗?你想打印那个宏?

谢谢,PM_Dialog

bojanpotocnik
离线
最后看到:2个月2周以前
加入:2019-11-26他们就
亲爱的PM_Dialog,

亲爱的PM_Dialog,

> gapm_air_operation结构体包括bd_addr addr结构体,该结构体提供自己的静态私有随机地址。

这个结构只包含地址类型,不包含地址:

///空操作的默认参数struct gapm_air_operation{///操作代码。uint8_t代码;/** *设备自己的BD地址源:* - GAPM_STATIC_ADDR: Public or Random Static address according to device address configuration * - GAPM_GEN_RSLV_ADDR: Generated Random non-Resolvable Private address * - GAPM_GEN_NON_RSLV_ADDR: Generated Random non-Resolvable Private address */ uint8_t addr_src;//使用虚拟数据来获取内部操作状态(应该设置为0)};

HarishKumar,如果在app_on_init(),使用

Void user_app_init(Void) {extern struct bd_addr dev_bdaddr;/*< arch_system.c */ /*注意,MAC地址存储在大端字母中,但我们通常在小端字母中写入/use in */ arch_printf("%02x:%02x:%02x:%02x:%02x \n", dev_bdaddr. c */dev_bdaddr addr[5]。dev_bdaddr addr[4]。dev_bdaddr addr[3]。dev_bdaddr addr[2]。addr [1], dev_bdaddr.addr [0]);}

或随时后

struct bd_addr addr;lld_util_get_bd_address (addr);/*注意,MAC地址是用大端字母存储的,但我们通常用小端字母写/use in。addr addr[5]。addr addr[4]。addr addr[3]。addr addr[2]。addr [1], addr.addr [0]);

PM_Dialog
离线
最后看到:32分29秒前
工作人员
加入:2018-02-08 11:03
嗨bojanpotocnik,

嗨bojanpotocnik,

谢谢您的意见和指示。

谢谢,PM_Dialog