Hello everybody,
I want to share with you this small ESP32 powered board that I designed myself that was inspired by these projects on the web: https://github.com/revk/ESP32-Faikin
It’s just a tiny board that I installed inside my Daikin aircon and connected to the S21 port.
Loaded with ESPHome code found at https://github.com/joshbenner/esphome-daikin-s21 it allows full local control over my aircon like everyone of us like.
I also connected standard I2C BME280 and CCS811 modules to get more data and a bunch of IR led to control devices in the room.
The IR led are driven by a transistor on the cathode, while the anode is connected to the main S21 power supply through a resistor to limit the current flow ( the only through hole resistor in the picture ).
The position of the inside aircon unit is just perfect for the scope because can beam ir signals all around.
A footprint for an IR receiver is available, but I was not confident with drilling the aircon plastic chassis, so in the end I didn’t use it.
The board is connected to the S21 port with the correct JST connector, that provides supply and proper level shifting will prevent damage to the ESP.
Onboard general purpose blue led available and standard programming port for the ESP32.
There is also an NTC on the board because my original idea was to avoid any BME280, but I connected it to GPIO14 of the ESP, that can not be used as analog input with ESPHome…my fault of doing things before reading.
Some pictures of the installation where you can see how tiny is the board; I used some double side scotch tape to stick in this position so I can always have a look at it by just opening the front cover.
The final result is very clean and finally another device is cloud free.
I got 5 pieces with 5 JST cables, but I just need two of them.
If somebody from Italy is interested to get one just contact me in pm and we will find a solution, I will be happy to free others Daikin aircons from the cloud!!
What an amazing job! I am a beginner with ESP (just finished my first project: a D1 mini based LUX-meter in Home Assistant (#proud) and would like to add my Daikin in HA. I am not in Italy (currently), but would like to take your project as an inspiration. I have a Daikin FTXP35 but don’t have the Wifi module. Is that required for this setup or can I just connect your solution to the S21 port?
if your split has the S21 port, it’s likely gonna work. No need for the wifi module at all
you can find a lot of different works on s21 port, here on github, honestly you would not even need a JST cable to connect (i used plain dupont cables to connect a common esp8266 mini)
Hmmm… mine is a Daikin Comfora, looking in the compatibility list it seems to be a bit troublesome due to power supply. Gonna have to read a bit deeper into this.
I used this github code with board ESP32-C3 Supermini. My heatpump is FTXS serries, When set mode to Auto / HeatCool the heatpump are acknowledge but board show mode : “OFF”. Other mode setting is OK.
Any one have that error ???
Hi, I’m trying to use an ESP32-C3 Supermini as well. I’ve connected directly to ports 1 and 5 of the S21 to power it with 5V, and ports 20 and 21 of the GPIO for RX and TX communications. Could you tell me what I’m doing wrong? I’m using the esphome-daikin-s21 integration.
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for F1 response
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for F5 response
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for RH response
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for RI response
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for Ra response
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for RL response
[22:36:58][E][uart:015]: Reading from UART timed out at byte 0!
[22:36:58][W][daikin_s21:257]: Timeout waiting for Rd response
[22:36:58][W][component:232]: Component daikin_s21 took a long time for an operation (899 ms).
[22:36:58][W][component:233]: Components should block for at most 30 ms.
Yes, I also used pins 4 and 5 with a Mini 560, but for some reason, I couldn’t achieve a 5V output. However, when I tested it with a 9V battery, it worked. That’s why I opted for pin 1.
Is really necessary a level shifter?
If you don’t want to buy/order a ‘special’ pcb, it can be done with off-the-shelf parts as well:
M5stamp + Dc-Dc 5V output + Levelshifter 5V-3V3 + a little soldering and heat shrink tubing.
Configure ESPHome with pins: RX 32 and TX 33 and S21 2 green - 3 yellow - 4 red - 5 black