|
本帖最后由 zro22 于 2021-10-31 21:39 编辑
淘宝自己搜索
dart wz-s 或者wz-h2,是深圳一家公司将传感器加上驱动器件做成的模组,免标定。
我买的wz-H2 价格差不多相当于两个wz-S,据说抗酒精灯气体干扰更强,我测试将传感器放到酒瓶上,数据还是会飘很高。
模组的5V 红线接 esp的5v,GND黑线接 esp GND,绿线TX接esp的某一个GPIO,比如我接的esp32的GPIO13,黄线RX接esp的某一个GPIO,我接的ESP32 GPIO12.
连线完成后随意配置一个yeml文件然后编译一下,然后进入相应的文件夹找到如下这个文件。比如我用的是esphome32.yaml所以打开 esphome32\.piolibdeps\esphome-core\src\esphome\sensor\mhz19_component.cpp修改,
增加一个数组声明
static const uint8_t MHZ19_COMMAND_SET_QA[] = {0xFF, 0x01, 0x78, 0x41, 0x00, 0x00, 0x00, 0x00};
然后加一个函数
void MHZ19Component::setup() {
uint8_t response[MHZ19_RESPONSE_LENGTH];
if (!this->mhz19_write_command_(MHZ19_COMMAND_SET_QA, response)) {
ESP_LOGW(TAG, "Reading data from MHZ19 failed!");
this->status_set_warning();
return;
}
}
再打开.h文件
在[size=14.3999996185303px]void update() override;
前加一行
void setup() override;
这个是为了让甲醛模组切换到QA模式。
最后修改yaml文件加上如下配置这么好的教程居然总是埋没,所以价格回复可见,希望能顶起来
然后和其他传感器一样就可以读到数据了,更新时间自己修改。
效果如下
在房间内0.05mg,放入柜子就飙到0.3-0.4mg
新版的esphome已经不支持修改里面的文件了,只能用自定义的方式添加支持了。
|
评分
-
查看全部评分
|