This is a bunch of random stuff -- serial captures, notes, utility programs -- that I've been using to reverse engineer the serial protocol between the Pioneer WYT-series mini-split air conditioners and the Tuya-based WiFi module that they use.
The goal is to be able to control the air conditioner remotely without needing any Tuya cloud services.
msgs
binary captures of commands (or responses for files ending in_response
) sent to the air conditionerlogic
- captures in Salae Logic 2 format of serial communicationboot-log
- console log from the ESP8266-based Tuya module bootingcmds
- hex dumps of various commands sent to the air conditioner (C
) and responses (A
)header
- a map of all bytes in a response message from the air conditioner, and their meanings. This will be the most up to date source of information. Many things may be wrong or missing.monitor.py
- a script used to log the serial communications to a file before I started using a dedicated esp-link board to capture serial data continuouslypower-on-sequence
- some observations on what the system does as it powers on. This has been somewhat helpful for decoding some of the less-commonly changed fields.tuya.ksy
- a Kaitai Struct file that describes the structure of the command messages sent to the air conditioner. I haven't been putting as much effort into commands as responses, so it may be a little out of date. Works with files inmsgs
.tuya-response.ksy
- a Kaitai Struct file that describes the structure of the response messages from the air conditioner. Theheader
file is probably more up to date, but this is probably more readable, and it's nice to use for visualization. Works with response files inmsgs
.
- Serial protocol is 9600-8-E-1
- Each command sends the entire state of the air conditioner, not just the fields that have changed
- pioneer-uart beginnings of an Arduino library implementation based on this work
- pioneer_wyt_rs232 another library in Python based on a separate reverse engineering effort
- Pioneer WYT mini split wifi integration a thread on the Home Assistant forums giving some more background on the Tuya module