如何设置、查询 ESP32 设备的 MAC 地址

2023-11-15

设置、查询 ESP32 设备的 MAC 地址有多种方式,如下:

1 使用 AT 指令来设置、查询 ESP32 设备的 MAC 地址

1.1 使用 AT 指令设置、查询 Wi-Fi Station 模式的 MAC 地址


1.2 使用 AT 指令设置、查询 Wi-Fi SoftAP 模式的 MAC 地址


1.3 使用 AT 指令设置、查询 Ethernet 的 MAC 地址


1.4 使用 AT 指令设置、查询 BLE(BT)模式 的 MAC 地址


1.5 使用 ESP32 设备当前模式下的 MAC 地址

只有当 ESP32 设备获取到有效接口信息后,才能查询到它的 MAC 地址

  • 使用 AT+CIFSR 指令来查询 ESP32 设备当前模式下的 MAC 地址。

2 使用 esptool 工具来设置、查询 ESP32 设备的 MAC 地址

可先使用 espefuse.py -h 命令来查询相关命令的使用方法,如下
在这里插入图片描述

2.1 使用 esptool 工具来查询 ESP32 设备默认出厂写入 EFUSE BLOCK0 中的 MAC 地址

  • 使用 espefuse.py summary 命令可查询 ESP32 设备默认出厂写入 EFUSE BLOCK0 中的 MAC 地址,如下:
    在这里插入图片描述
  • 查询到的 EFUSE BLOCK0 中的 MAC 地址为 base_macbase_mac 默认是 Wi-Fi Station 模式的 MAC 地址。根据 Wi-Fi Station 模式的 MAC 地址可获取 Wi-Fi SoftAP 模式、蓝牙模式、以太网的 MAC 地址。可参考 MAC Address 说明。如下:

请添加图片描述

2.2 使用 esptool 工具向 EFUSE BLOCK3设置用户自定义的 MAC 地址

  • 使用 espefuse.py burn_custom_mac 12:22:33:44:55:66 命令可向 EFUSE BLOCK3设置用户自定义的 MAC 地址,如下:

注意:EFUSE BLOCK3Bit 1 不能为 1
在这里插入图片描述

2.3 使用 esptool 工具查询 EFUSE BLOCK3 中设置的用户自定义的 MAC 地址

  • 使用 espefuse.py get_custom_mac 命令可查询用户自定义设置的 EFUSE BLOCK3 中的 MAC 地址,如下:
    在这里插入图片描述
  • 也可以使用 espefuse.py summary 命令来查询用户自定义设置的 EFUSE BLOCK3 中的 MAC 地址,如下:
    在这里插入图片描述

3 使用相关 API 来设置、查询 Wi-Fi 的 MAC 地址

  • 使用 esp_base_mac_addr_set(uint8_t *mac); 设置用户自定义的 MAC 地址(base_mac)到 EFUSE BLOCK3 中,默认为 WI-Fi STA 的 MAC 地址。例如:

    	“ esp_base_mac_addr_set(1222334455:FF)“,
    
  • 对应的是:

    >  STA(FF)
    >  AP(FF + 1 -> 00)
    >  BT(FF + 2 -> 01)
    >  ETH(FF + 3 -> 02)`(末位不进位)`
    

注:可参考 MAC Address 说明。如下:
请添加图片描述


4 使用 NVS 写入 MAC 地址


【MAC 地址】

  • ESP32 模组出厂会将设备的 MAC 基地址(默认也是 Wi-Fi STA MAC 地址)写到 EFUSE BLOCK0 中(即:通过扫描模组二维码获取的是基地址
  • MAC 基地址加 “1” 即为 Wi-Fi AP MAC 地址;MAC 基地址加“2”即为蓝牙的 MAC 地址;MAC 基地址加“3”即为 Ethernet 的 MAC 地址。
  • MAC 地址是全球唯一的,且每个批次都不相同。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何设置、查询 ESP32 设备的 MAC 地址 的相关文章

随机推荐

  • 关于Vue.js组件巨详细的一篇文章

    文章目录 Vue js 组件 全局注册 组件基础 组件命名规则 template 选项 data 选项 局部注册 组件通信 父组件向子组件传值 props 命名规则 单项数据流 props 类型 props 验证 非 props 属性 子组
  • Iterative Shrinkage Thresholding Algorithm

    Iterative Shrinkage Thresholding Algorithm ISTA ISTA 对于一个基本的线性逆问题 y A x
  • 【Webpack5】从零开始学习基础配置

    基本使用 Webpack 是一个静态资源打包工具 它会以一个或多个文件作为打包的入口 将我们整个项目所有文件编译组合成一个或多个文件输出出去 输出的文件就是编译好的文件 就可以在浏览器段运行了 我们将 Webpack 输出的文件叫做 bun
  • [转帖]国产操作系统概念及历史,目前国产操作系统有哪些?

    国产操作系统概念及历史 目前国产操作系统有哪些 2018 05 19 21 20 18 作者 ywnz 稿源 云网牛站整理 https ywnz com linuxgcxt 1786 html 以下为你讲解国产操作系统概念 国产操作系统历史
  • 【链块观点01期】当区块链的风刮到教育行业,哪些变革是注定要发生的?

    原文链接 区块链应用案例 当区块链的风刮到教育行业 哪些变革是注定要发生的 一 教育是国之大计 古往今来 教育都在人类生活中占有着极其重要的位置 教育与社会的进步 文明的发展程度紧密相关 中国正在努力建设和谐社会 而如何达成社会主义和谐社会
  • Android Studio运行时自带签名配置过程详解

    文章转载自 http teachcourse cn 2053 html 摘要 Android Studio比Eclipse在配置Project签名文件时方便很多 可以同时指定debug和release两种模式下的签名文件 debug模式即A
  • SpringBoot的自动装配

    一 什么是SpringBoot自动装配 SpringBoot 定义了一套接口规范 这套规范规定 SpringBoot 在启动时会扫描外部引用 jar 包中的META INF spring factories文件 将文件中配置的类型信息加载到
  • Qt 交叉编译

    背景 本来Qt源码是可以直接使用交叉编译器编译通过 也可以使用编译通过的qmake生成可执行程序 但是可执行程序在没有Qt的环境下无法正常运行 因此我们不只是仅需要编译源码 还需要将依赖的环境编译出来 这样打包可执行程序的同时将相应的依赖拷
  • 爬虫项目二十一:需要简历吗?用Python轻松爬下上千份简历模板

    文章目录 前言 一 获取详情页url 二 获取下载链接 三 保存模板 前言 用Python对站长之家的上千个简历模板批量爬取保存 提示 以下是本篇文章正文内容 下面案例可供参考 一 获取详情页url 我们进入站长之家的免费模板网站 http
  • linux修改rc.local权限,CentOS7中rc.local中的指令不能生效问题。

    问题 在系统中 etc rc local设置自启动命令的时候 重启计算机 文件中的指令无法生效 我这里编译安装了一个mongodb数据库的服务 然后修改了环境变量 写入到了 bash profile 文件中 在shell中可以直接执行命令
  • idea创建python项目

    windows安装pyhon Window 安装 Python 哭哭啼的博客 CSDN博客下载官网地址 https www python org downloads windows 此处下载最新版本 64位 安装找到下载的文件解压文件即可配
  • 动态链接库和静态链接库的原理及区别

    静态连接库就是把 lib 文件中用到的函数代码直接链接进目标程序 程序运行的时候不再需要其它的库文件 动态链接就是把调用的函数所在文件模块 DLL 和调用函数在文件中的位置等信息链接进目标程序 程序运行的时候再从DLL中寻找相应函数代码 因
  • Ubuntu 下同局域网主机访问Tomcat 服务器

    转自 https blog csdn net zm yang article details 70483439 搭建Tomcat环境 自己写些小应用 需要用到服务器 便在Ubuntu环境下搭建了个Tomcat服务器 搭建方法很简单 去官网下
  • 数据转换之数据清洗

    一 实现对文本文件personnel data txt中的数据进行数据粒度的转换 即将文本文件personnel data txt中字段为household register的数据统一成省份 直辖市 并输出到文本文件personnel da
  • 大数据时代移动边缘计算架构中的差分隐私保护(二)

    大数据时代移动边缘计算架构中的差分隐私保护 二 实际上 给数据加拉普拉斯噪声或者是指数噪声是针对中心式的差分隐私处理框架的 对于本地化的差分隐私处理框架 现在已有的是采用随即相应技术 Bloom Filter等技术满足 本地化差分隐私 LD
  • 【iOS】—— SDWebImage源码学习

    SDWebImage源码 文章目录 SDWebImage源码 1 UIKit层 sd internalSetImageWithURL 1 取消之前下载操作 2 设置占位图 3 判断URL是否合法 2 工具层 SDWebImageManage
  • 毕业设计 - 基于单片机的智能水箱

    文章目录 1 简介 2 概述 2 1 系统描述 2 2 系统目标 3 具体实现 3 1 系统组成架构 3 2 系统功能 3 3 系统特点 3 4 水位检测及自动供水实现 3 5 水箱盖监控实现 3 6 信息实时传输实现 3 7 安卓客户端实
  • 【PIC单片机】2.编译器下载

    XC8 XC16和XC32对应8位 16位和32位PIC单片机 按实际使用的单片机选择下载最新版本即可 官网链接 https www microchip com en us development tools tools and softw
  • 目录:四种Qt程序的架构设计方法

    四种常见的关于Qt程序的架构设计方法 使用MVC设计模式MVC是Model View Controller的缩写 是应用程序开发中常用的设计模式 在Qt中 可以使用QAbstractItemModel和QTreeView等类来实现MVC模式
  • 如何设置、查询 ESP32 设备的 MAC 地址

    设置 查询 ESP32 设备的 MAC 地址有多种方式 如下 1 使用 AT 指令来设置 查询 ESP32 设备的 MAC 地址 1 1 使用 AT 指令设置 查询 Wi Fi Station 模式的 MAC 地址 使用 AT CIPSTA