打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
ESP32 快速入门(八):通过 espefuse.py 工具自定义客户 MAC 地址

一. 文章目的

实践:通过 esp-idf 自带的 espefuse.py 工具自定义 efuse 里的客户 MAC 地址。

注: efuse 里的修改是不可逆的(efuse 里的位变成 1 后不能再次变成 0,所以在同一块 ESP32 上我们基本上只有一次自定义客户 MAC 地址的机会)


二. 操作环境

为了保证测试结果的一致性,采用以下测试环境:

  • esp-idf
    编写本文时,使用的 esp-idf release 版本对应的 commit 为 2befd5c。可通过以下命令确认:

    git log --oneline -1

    结果为:

    2befd5c Merge branch 'feature/wifi_prov_ext_httpd_v3.3' into 'release/v3.3'

三. 实践过程

  1. 打开终端,进入到 esp-idf 自带的 espefuse.py 对应目录下,以下是参考指令:

    cd esp/esp-idf/components/esptool_py/esptool

    在这里,我们可以使用 python espefuse.py --port /dev/ttyUSB0 summary 指令来查询 efuse 当前的状态,在对应的输出中我们主要看 BLK3 的开头部分:

    BLK3                   Variable Block 3                                  = 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 R/W 

    第一组数据 00 代表 CRC 校验,第二到七组 00 00 00 00 00 00 代表客户 MAC 地址。这样说明 BLK3 还处在最初的干净状态。

  2. 使用 espefuse.py 自定义客户 MAC 地址,指令如下:

    python espefuse.py --port /dev/ttyUSB0 burn_custom_mac 11:22:33:44:55:66

    然后我们会在终端里看到以下信息:

    espefuse.py v2.8Connecting.....Burning efuse for custom MAC address 00:00:00:00:00:00 (version 0, CRC 0x0) -> 11:22:33:44:55:66 (version 1, CRC 0x48). This is an irreversible operation.Type 'BURN' (all capitals) to continue.

    此时在终端里输入 BURN,注意字母要全部大写,输入完成后按下回车即可。

  3. 确认 客户 MAC 地址是否已经被正确的自定义,在终端里再次使用查询 efuse 当前的状态指令:

    python espefuse.py --port /dev/ttyUSB0 summary

    在对应的输出中我们主要看 BLK3 的开头部分如下:

    BLK3                   Variable Block 3                                  = 48 11 22 33 44 55 66 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 00 R/W 

    第一组数据 48 代表 CRC 校验,第二到七组 11 22 33 44 55 66 代表客户 MAC 地址,可以看到我们已经成功进行自定义客户 MAC 地址。这部分对应的软件 API 指南请查看 eFuse Manager 官方文档

    注:如果需要查看对应的指令帮助,可以在指令最后加上 -h,如需要查看招录客户 MAC 地址的指令细节,可以输入 python espefuse.py --port /dev/ttyUSB0 burn_custom_mac -h,这样就能迅速的获得对应的帮助。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Dji TT无人机扩展件ESP32芯片(D2WDQ5)
乐鑫esp8266学习rtos3.0笔记:体验下官方推荐的在Linux搭建 ESP8266
解决Linux下USB设备节点ttyUSB名不固定的问题,生成固定USB转串口设备节点
stcflash跨平台的STC单片机烧写软件
AM5728 + Artix-7 FPGA开发板(DSP+ARM) 5G通信测试手册
ubuntu下qt串口通信设置
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服