登录/注册

esp32 小米温湿度计2

更多

使用ESP32与小米温湿度计2通信的关键步骤如下:


1. 确认通信协议

小米温湿度计2通过蓝牙BLE 4.2广播数据,ESP32需启用蓝牙低功耗(BLE)功能。无需配对或建立连接,直接解析广播数据即可获取温湿度信息。


2. 配置ESP32开发环境


3. 扫描设备并过滤广播数据


4. 解析广播数据

广播数据格式示例如下(需重点关注厂商数据字段):

// 示例广播数据(十六进制):
// 0x95 0xFE 0x70 0x20 0xAA 0x01 0x64 0x10 0x4C 0x5D 0x0C
// 解析关键点:
// - 第5-6字节(0xAA 0x01):温度(0.1°C为单位,小端序)
// - 第7字节(0x64):湿度(百分比)
float temperature = (0x01AA) * 0.1; // 转换为42.6°C
int humidity = 0x64;                // 转换为100%

5. 完整代码示例

#include <BLEDevice.h>
#include <BLEUtils.h>
#include <BLEScan.h>

void parseXiaomiData(uint8_t* data, size_t length) {
  if (data[0] == 0x95 && data[1] == 0xFE) { // 确认厂商ID为0xFE95
    if (length >= 7) {
      int16_t rawTemp = (data[5] << 8) | data[4];
      float temperature = rawTemp * 0.1;
      int humidity = data[6];
      Serial.printf("温度: %.1f°C, 湿度: %d%%\n", temperature, humidity);
    }
  }
}

class MyAdvertisedDeviceCallbacks : public BLEAdvertisedDeviceCallbacks {
  void onResult(BLEAdvertisedDevice device) {
    if (device.getAddress().toString().startsWith("58:2D:34")) {
      if (device.haveManufacturerData()) {
        std::string mData = device.getManufacturerData();
        parseXiaomiData((uint8_t*)mData.data(), mData.length());
      }
    }
  }
};

void setup() {
  Serial.begin(115200);
  BLEDevice::init("ESP32");
  BLEScan* pScan = BLEDevice::getScan();
  pScan->setAdvertisedDeviceCallbacks(new MyAdvertisedDeviceCallbacks());
  pScan->setActiveScan(true);
  pScan->start(10); // 扫描10秒
}

void loop() {
  delay(10000); // 每10秒扫描一次
  BLEScan* pScan = BLEDevice::getScan();
  pScan->clearResults();
  pScan->start(10);
}

6. 常见问题


优化建议

通过上述步骤,ESP32可高效读取小米温湿度计2的数据,适用于智能家居或环境监测项目。

基于51单片机和AHT10温湿度传感器的温湿度计源码

一款基于51单片机和AHT10温湿度传感器的温湿度计源码。

2023-10-09 08:39:42

英飞凌PSoC62 实现超低功耗温湿度计

一款超低功耗的温湿度计。

2023-06-03 10:13:24

CW32饭盒派开发板 日历温湿度计

CW32创建日历+温湿度计

2023-05-27 14:07:20

温湿度计(物联网)开源

电子发烧友网站提供《温湿度计(物联网)开源.zip》资料免费下载

资料下载 贾飞世 2022-11-08 09:37:19

DIY智能温湿度计(上)——数据获取

DHT11数字温湿度传感器模块,含有已校准数字信号输出的温湿度复合传感器,每个DHT11传感器都在极为精确的湿度校验室中进行校准,校准系...

资料下载 张辉 2022-02-07 11:24:29

ESP32-CAM高性价比温湿度监控系统配网与上网方案设计与实现

的设计与实现第四篇:ESP32-CAM创建热点构成并发式DNS服务器第五篇:ESP32-CAM高性价比温湿度监控系统第六篇:

资料下载 贾虎世 2021-12-29 19:05:21

德控森社DK3000-WS-N01温湿度计

基于德控森社DK3000-WS-N01温湿度计子VI;本人labview小白一枚,发上来赚点积分,并非为硬件打广告;程序简单,适配上面硬件可以实现温湿度采集。测试中,未对比

资料下载 jf_94335316 2021-08-20 16:53:02

ITH40N智能温湿度计的产品手册免费下载

使用本产品前,请仔细阅读本手册,并将其妥善保存,以便在您需要的时候查阅。此款智能温湿度计是深圳市力欣自动化有限公司推出的基于 NB-IoT(蜂窝物联网)网络的智能温湿度计,可以根据设置检测环境中

资料下载 sensor2000 2019-11-12 08:00:00

怎么实现基于ESP8266与点灯科技平台的温湿度计的设计?

怎么实现基于ESP8266与点灯科技平台的温湿度计的设计?

2021-10-28 07:04:42

怎样去设计一种基于ESP8266与点灯科技平台的温湿度计

物联网系列③——基于ESP8266与点灯科技平台的温湿度计设计(接入小爱同学)一、设计目标二、电路展示三、存在的问题四、代码五、需要注意的问题一、设计目标前一阵子偶然接触到点灯科技平台,产生了制作

2021-07-29 06:36:46

蓝牙温湿度计常用的场景

  目前市面上的蓝牙温湿度计有的直接带显示屏有的是不带显示屏,采用低功耗蓝牙技术一般使用锂亚电池的蓝牙温湿度计能用2-3年的时间。如云里物里的S

2021-01-05 16:46:45

工业级温湿度传感器与日常温湿度计的区别

。如今,民用温湿度传感器的应用也越来越普遍,但是,工业级温湿度传感器仍然占据着主导地位。 都是用于温湿度测量,工业级

2020-06-12 16:29:21

温湿度计怎么使用_温湿度计怎么调

本文首先阐述了温湿度计的使用方法,其次介绍了温湿度计的调节,最后介绍了家用指针式温湿度计调校方法。

2020-02-28 11:16:41

温湿度计校准_温湿度计选购指南

本文主要阐述了温湿度计校准的方法及选购指南。

2020-02-28 11:13:22

米家蓝牙温湿度计2今日开售,可联动其他智能设备调整室内温湿

12月12日消息,小米米家蓝牙温湿度计2今天发布,售价29元,已经正式开卖。

2019-12-12 15:47:18

7天热门专题 换一换
相关标签