数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 5387|回复: 30

[STM] 研究海信变频空调内外机通信协议,发现stm32的vcp固件bug

[复制链接]
发表于 2022-8-12 14:46:43 来自手机浏览器 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x
本帖最后由 wwb2002 于 2022-8-12 16:14 编辑

     2020年6月产的大1.5匹海信变频分体空调,想弄个单片机接外机设置压缩机频率,先得有内外机通讯协议(信号通过零线和si线半双工通信),网上找了几天都没找到。
        拆开外机,找到电路板上sirx和sitx检测点(板子上有标记),用一个pl2303的usb转ttl板子,rx接到空调的sirx上,插电开空调,电脑串口通信软件用的stcisp,把波特率调到最低600bps捕获的16进制数据个数每次都不固定,用stm32f103核心板刷了一个示波器一看sirx波形,发现波特率是300bps。换用另一个串口通信软件,300bps,8,n,1设置用pl2303能接收解码空调sitx的数据,这是空调外机发给内机的状态报告,每次26字节。pl2303rx接空调sirx却没反应,还让空调外机不启动(应该是干扰通讯了,让外机收不到内机的开机指令),万用表量pl2303的rx(悬空) 有5v高电平,跟一般芯片0v不一样(这个pl2303后面还接有rs232电平转换芯片),奇怪的是sitx信号能接收解码。由于手头没有其他usbttl板子,只好把stm核心板刷了一个vcp虚拟串口固件(就是stm32单片机核心板当作usb转TTL,相关文档um0424),先把stmvcp的rx和tx短接,测试300bps能自发自收,最高的几百kbps也正常。接入空调外机板sirx却傻了眼,数据感觉不对,再接sitx,解码输出跟前面pl2303收到的规则数据包完全不一样,想了一下,认为是300bps不常见vcp固件实现没测试有bug。接着用声卡mic信号接上stmvcp的tx,串口发送连续单字节,声卡示波器一测,真的是300bps实为1700bps,再试110bps,也不对直到高至1200bps才正常。硬件软件问题真多,协议破解还得更多时间。
      晚上上图
 楼主| 发表于 2025-1-8 17:31:29 | 显示全部楼层
pineshen 发表于 2024-12-3 09:20
兄弟协议搞得咋样了? 用串口录了下, 300的波特率, 外机发26字节,内机回36字节。类似: 外: 28 00 00 00 00  ...

还没,看到咸鱼上有人搞这个改装,可以安卓手机蓝牙控制空调,查看空调传感器数据,但是价格比较高
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-1-8 17:30:44 | 显示全部楼层
jcdzxh 发表于 2025-1-7 20:22
36x1000000/65565=549
72x1000000/65535=1098
这就是原因,stm32不能支持很低的波特率

你没看仔细,vcp固件改好能300bps了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-1-8 17:29:45 | 显示全部楼层
18373242687 发表于 2024-1-17 19:04
联系我。我都搞了好久了。一年多了。

还没,看到咸鱼上有人搞这个改装,可以安卓手机蓝牙控制空调,查看空调传感器数据,但是价格比较高
回复 支持 反对

使用道具 举报

 楼主| 发表于 2025-1-8 17:28:39 | 显示全部楼层
mengkoh2025 发表于 2025-1-7 16:30
海信的数据分析出来了么

还没,看到咸鱼上有人搞这个改装,可以安卓手机蓝牙控制空调,查看空调传感器数据,但是价格比较高
回复 支持 反对

使用道具 举报

发表于 2025-1-7 20:22:09 来自手机浏览器 | 显示全部楼层
36x1000000/65565=549
72x1000000/65535=1098
这就是原因,stm32不能支持很低的波特率
回复 支持 反对

使用道具 举报

发表于 2025-1-7 16:30:56 | 显示全部楼层
海信的数据分析出来了么
回复 支持 反对

使用道具 举报

发表于 2024-12-3 09:20:33 | 显示全部楼层
兄弟协议搞得咋样了? 用串口录了下, 300的波特率, 外机发26字节,内机回36字节。类似: 外: 28 00 00 00 00 00 04 0A 00 00 00 01 DF 00 00 24 47 17 00 00 00 00 00 00 00 98, 内: 81 56 47 48 80 00 08 00 00 02 00 00 32 24 00 46 91 02 92 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 B3。协议还没开始研究。
回复 支持 反对

使用道具 举报

发表于 2024-1-20 10:33:44 | 显示全部楼层
学习大佬经验
回复 支持 反对

使用道具 举报

发表于 2024-1-19 18:15:49 来自手机浏览器 | 显示全部楼层
有个东西叫逻辑分析仪
回复 支持 反对

使用道具 举报

发表于 2024-1-19 16:59:42 | 显示全部楼层
wwb2002 发表于 2022-8-19 14:18
已经改了stm32的虚拟串口固件,300bps已经读出数据包了,只是没看到空调内机给外机发运行频率指令。所以 ...

有没有可能内机是不发送频率的,只发送温度,频率在外机内部计算和调节?
回复 支持 反对

使用道具 举报

发表于 2024-1-17 19:04:41 来自手机浏览器 | 显示全部楼层
联系我。我都搞了好久了。一年多了。
回复 支持 反对

使用道具 举报

发表于 2024-1-17 19:03:22 来自手机浏览器 | 显示全部楼层
wwb2002 发表于 2022-8-12 16:00
真多。搞这个东西头大啊

联系我。我搞了一年了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-8-19 14:18:34 来自手机浏览器 | 显示全部楼层
深山老妖 发表于 2022-8-18 11:07
你需要逻辑分析仪,而不是示波器。

已经改了stm32的虚拟串口固件,300bps已经读出数据包了,只是没看到空调内机给外机发运行频率指令。所以需要的其实是成品检测仪连接空调发送的 频率指令捕获数据包,空调检测仪要几百块,我这个事用一次就没用了
回复 支持 反对

使用道具 举报

发表于 2022-8-19 14:03:10 | 显示全部楼层
美的空调有成品wifi模块呀,我4台空调都自带wifi了
回复 支持 反对

使用道具 举报

发表于 2022-8-18 11:07:51 | 显示全部楼层
你需要逻辑分析仪,而不是示波器。
回复 支持 反对

使用道具 举报

发表于 2022-8-13 08:58:00 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2022-8-12 23:59:45 | 显示全部楼层
欲善其事先利其器,你却器啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-8-12 17:16:59 来自手机浏览器 | 显示全部楼层
maithon 发表于 2022-8-12 17:03
类似RS232的话,示波器本身就带解码协议了。

成品示波器一直没选好
回复 支持 反对

使用道具 举报

发表于 2022-8-12 17:03:51 | 显示全部楼层
wwb2002 发表于 2022-8-12 17:00
用示波器看了,人工解码很累,数据量大

类似RS232的话,示波器本身就带解码协议了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-8-5 21:52 , Processed in 0.109200 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表