# Help identifying protocol for Midea AC daughter PCB communication

**URL:** https://discuss.saleae.com/t/help-identifying-protocol-for-midea-ac-daughter-pcb-communication/2774
**Category:** Support
**Created:** [March 8, 2024, 9:56pm UTC](https://discuss.saleae.com/t/help-identifying-protocol-for-midea-ac-daughter-pcb-communication/2774 "2024-03-08T21:56:25Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![chiconws](https://yyz2.discourse-cdn.com/flex030/user_avatar/discuss.saleae.com/chiconws/32/1727_2.png) [@chiconws](https://discuss.saleae.com/u/chiconws)
#### Post date: [March 8, 2024, 9:56pm UTC](https://discuss.saleae.com/t/help-identifying-protocol-for-midea-ac-daughter-pcb-communication/2774/1 "2024-03-08T21:56:25Z")

</div>

I have a basic Midea AC unit that lacks Wi-Fi connectivity, and I’m interested in making it smart. It consists of a main PCB, which I prefer not to tamper with, and a smaller daughter PCB responsible for receiving remote control inputs and communicating with the main PCB via four wires. The daughter PCB features a SinoWealth chip (SH79F1612A) ([SinoWealth 中颖电子](https://en.sinowealth.com/seach?search=sh79f1612a)).

I managed to intercept and analyze the signals on the four wires using a logic analyzer, but I’m struggling to identify the protocol being utilized.

Despite thorough research, I remain at an impasse.

 ![image](https://canada1.discourse-cdn.com/flex030/uploads/saleae/original/2X/8/893b49ca3dd4afde4ed1fa9dcbc5601522d29542.png)

It repeats every 270ms.

Here is the Logic session: [Session 1.sal - Google Drive](https://drive.google.com/file/d/1QbaE9Mh5UVACoj3hOT8B4BaaSTL8iYrq/view?usp=drive_link)

I used Saleae Logic 2 on win11. I measured before messing with anything, the logic is 5v.

---

<div class="post-metadata">

### Author: ![BitBob](https://avatars.discourse-cdn.com/v4/letter/b/ecb155/32.png) [@BitBob](https://discuss.saleae.com/u/BitBob)
#### Post date: [March 9, 2024, 1:51am UTC](https://discuss.saleae.com/t/help-identifying-protocol-for-midea-ac-daughter-pcb-communication/2774/2 "2024-03-09T01:51:34Z")

</div>

Which channel in your capture goes with which pins on the SH79F1612A?

[Edit] reviewing the data sheet – looks like the most common peripheral is UART:

Pins 17, 18 have RXD, TXD (EUART) and 7, 8 have RXD1, TXD1 (EUART1).  
Were any of these the ones captured?  
 ![image](https://canada1.discourse-cdn.com/flex030/uploads/saleae/original/2X/f/f0a412273101cccb9a2cfb7621eea53babb35e60.png)

Doing some quick measurements on Channel 0, you can observe:

 ![image](https://canada1.discourse-cdn.com/flex030/uploads/saleae/original/2X/2/29574a860e87587efc558f7a696f3a231573d012.png)

The period is 4.173 ms  
Assuming a standard [8N1 UART protocol](https://en.wikipedia.org/wiki/8-N-1), this means one bit period is 4.173 ms / 10, or 417.3 us/bit.

That works out to 1 / 417.3 us == ~2396 bits/s, which is close enough to assume a standard rate of 2400 bits/s.

To test that theory, you can decode with these settings (add an analyzer to channel 0):

 ![image](https://canada1.discourse-cdn.com/flex030/uploads/saleae/original/2X/f/fdcc8892d5b9dcfb9ff1dc21178168ceca9f9d4e.png)

… and use the same settings on channel 2 – which might just have more idle time between bytes. From this point, it’s a matter of studying the decoded data and trying to correlate that to the system (e.g., when something is on or off, displayed values, etc.)

---

<div class="post-metadata">

### Author: ![chiconws](https://yyz2.discourse-cdn.com/flex030/user_avatar/discuss.saleae.com/chiconws/32/1727_2.png) [@chiconws](https://discuss.saleae.com/u/chiconws)
#### Post date: [March 11, 2024, 1:52pm UTC](https://discuss.saleae.com/t/help-identifying-protocol-for-midea-ac-daughter-pcb-communication/2774/3 "2024-03-11T13:52:54Z")

</div>

Wow, I can’t thank you enough! I must have experimented with every async serial parameter, but none seemed to do the trick. Perhaps I should have taken a more analytical approach like you did.  
That push was all i needed, now I’ll try to decode the information, there are some github repos that are promising.  
Thank you again!

---

<div class="post-metadata">

### Author: ![hazard.saint](https://avatars.discourse-cdn.com/v4/letter/h/5fc32e/32.png) [@hazard.saint](https://discuss.saleae.com/u/hazard.saint)
#### Post date: [November 25, 2025, 2:04pm UTC](https://discuss.saleae.com/t/help-identifying-protocol-for-midea-ac-daughter-pcb-communication/2774/4 "2025-11-25T14:04:18Z")

</div>

Hello. I’m also interested in this topic. I have a DEXP air conditioner manufactured by Midea. The display board doesn’t have a connector for a WiFi dongle. I dumped the data exchange between the display board and the motherboard and used chatgpt to decode the protocol. In summary, I can say the following: it’s a 2400 baud 8N1 UART. Currently, I have an external component for ESPhome that allows me to collect system status (temperature, mode, fan speed) from the data exchange between the display and the motherboard. [GitHub - Ra3mbl/esphome-carrier-uart-ir](https://github.com/Ra3mbl/esphome-carrier-uart-ir)  
This is just a draft; for now, it only allows you to view the status in Home Assistant, but I wanted to add the ability to send commands to the air conditioner by modulating a signal to the IR receiver pin. The remote control protocol is detected as Carrier, so I named the library carrier-uart.

But the most interesting thing is this. I bought a Midea display board with a Wi-Fi connector. I connected it to my air conditioner’s motherboard, and it worked! This means it communicates with the control unit using the same protocol, and a Wi-Fi dongle can be connected directly to it.

Therefore, the easiest way to add Wi-Fi to this air conditioner is to simply replace the display and install a Wi-Fi dongle.
