如何在SUOTA后保留MAC地址

9个帖子/ 0个新
最后发表
fn654
离线
最后看到:1年11个月前
加入:2016-06-14 13:27
如何在SUOTA后保留MAC地址

我不想改变我的设备mac地址后SUOTA。那么如何在SUOTA后保持MAC地址。
谢谢

设备:
Gongyu_Dialog
离线
最后看到:3天22小时前
加入:2016-04-27 07:07
mac地址是否为

mac地址是否更改,取决于新映像的nvds部分。

一般情况下,地址不会发生变化。

fn654
离线
最后看到:1年11个月前
加入:2016-06-14 13:27
我有个新图像要更新

我有一个新的形象更新,但一些设备需要更新,我不想改变这些设备的mac地址到nvds部分的新形象。我如何确认这些设备剩余的mac地址与旧图像一致。有好的方法来做吗?
谢谢

Gongyu_Dialog
离线
最后看到:3天22小时前
加入:2016-04-27 07:07
在我看来,在索塔之后

在我看来,是在索塔应用完成后,但在软件重置之前。你可以添加一些代码来复制原来的地址到存储在flash中的新的图像地址部分。还可能需要重新计算crc值。

原始地址可以在寄存器0x40000024和0x40000028中获取。或者直接从变量"dev_bdaddr"获取

fn654
离线
最后看到:1年11个月前
加入:2016-06-14 13:27


有两个问题使我迷惑不解。
首先,根据你的方法,我观察变量“dev_bdaddr”在nvds.c,但我只是得到一个充满0的数组。有什么问题吗?
另外,flash store mac地址中0x40000024 ~ 0x40000028的地址是否存在,如何对flash进行读写操作?有什么文件可以指导我吗?
非常感谢

Gongyu_Dialog
离线
最后看到:3天22小时前
加入:2016-04-27 07:07
是,“dev_bdaddr”的值

是,如果不涉及otp,则“dev_bdaddr”的值均为0。

地址寄存器:0x40000024(4字节)和0x40000028(仅低2字节)。

如果你在OTP中存储地址,suota升级不会覆盖地址。

但如果只使用闪存部分。这是相当困难的。我还需要时间考虑。

Gongyu_Dialog
离线
最后看到:3天22小时前
加入:2016-04-27 07:07
如果没有otp参与,

如果不涉及到otp,您需要修改函数“custom_nvds_get_func”,以便从外部flash中自定义的位置而不是NVDS部分获取地址。

在新的图像代码中,它从(0x40000024/0x40000028)获取原始设备地址,并将地址存储在外部flash中自定义的位置。

fn654
离线
最后看到:1年11个月前
加入:2016-06-14 13:27


我可以存储mac地址在OTP和使用它,而我的设备启动形式flash?
谢谢

MT_dialog
离线
最后看到:三个月两个星期前
工作人员
加入:2015-06-08 34
嗨fn654,

嗨fn654,

是的,你可以。SDK首先检查OTP头(设备唯一ID字段)的bd地址,如果在OTP中有一个有效的bd地址,它使用它,否则它使用在源代码中定义的地址。

由于MT_dialog