Fujitsu Airco not listening to ESPHome IR

I have a Fujitsu ASYG12LMCE airco in my kitchen.
I try to use ESPhome to control it by IR
I have this in my esphome-yaml file

remote_transmitter:
pin: GPIO12
carrier_duty_percent: 50%

climate:

  • platform: fujitsu_general
    name: “Keuken AC”

I see the LED flashing (with my phone camera) when I manipulate the climate card in HA …
But the unit doesn’t react at all … It seems to NOT understand the IR code …
Did I do something wrong ?

I just revisited this project because winter is coming again, so I really want to optimize the heating system in our house …

I have just connected a “normal”, red LED instead of the IR LED and I see it flashing every time I manipulate the AC-device in Home Assistant … so it looks like it’s actually sending out IR code …

Then, when I look through my phone camera at the IR LED I also see it flashing on manipulation … so it looks like the IR LED isn’t broken as well …

The IR LED is connected to 24V over a 1k Resistor to a Mosfet P16NF06 (with trigger voltage 2.5V) which is controlled by GPIO12 of the ESP32

The distance from the LED to the AC unit is only 4 meters in a straight line … the IR LED is mounted in a reflective holder directly opposite the AC unit just at the other side of the kitchen …

… so it looks like electronically everything seems to be working (the LED is flashing).

Could it be that the Fujitsu ASYG12LMCE does not react/listen to the fujitsu_general protocol ?
I have been googling around, but can’t find any decent info on it …

Therefore I tried the heatpumpir protocol …

# Example configuration entry
remote_transmitter:
  pin: GPIO12
  carrier_duty_percent: 50%

climate:
  - platform: heatpumpir
    protocol : fujitsu_awyz
    horizontal_default : middle
    vertical_default : middle
    max_temperature : 30
    min_temperature : 10
    name: "Keuken AC"

… but still no reaction from my AC :frowning:

Side note : Before I had this working wit EspEasy, back when I was still using Domoticz … same IR LED, same holder, same place …

very very strange …

could somebody please help me with this ?

Do you have a receiver attached to the ESP? Can you see what the original remote sends?

no, only an IR LED …

the remote is an AR-REB1E, if this is any help …

when I check IRremoteESP8266/SupportedProtocols.md at 55ce00262bcace187c97be14aca6536fa53bbd99 · crankyoldgit/IRremoteESP8266 · GitHub

my remote isn’t in the fujitsu_general protocol … look !

is this the problem ?
if so, what is the solution ?

I don’t know. Maybe this might be of use.

I must send raw codes through IR ?
if so where can I find these ?
how would this work ?
or is there another “platform” which does work ?

I’m kinda stuck …

It might work.

You could see if you can convert some of the codes here to raw values (maybe some online convertor).

But I am guessing a bit now. You could also try the ESPHOME Discord thread. There’s are some very knowledgeable people over there and you typically get fast responses.

Looking at this closer, this seems to be the likely cause!

FYI :

Before it worked with espeasy (back when I was till using Domoticz instead of Home Assistant) with this script :

--[[
Script created by hpapagaj and modified by bjacobse
to use with ToniA's heatpumpir lib + ESpeasy and _P115_heatpumpir 

Create the following dummy switches (Note that LUA are case sensitiv):
'AC Mode''AC Fan Speed''AC Set Temperature'

and if your AC/heatpoump support then also create:
'AC Hor dir''AC Vert dir'
And add -- in front of line 27. And remove -- in line 29


 https://github.com/ToniA/arduino-heatpumpir/blob/ed71d9c83de18d1dac9c37b8fd0806a175c60130/HeatpumpIR.h


Changelog:
 
    Version 1.0, 2017 January
    - Initial release
]]

--Set espeasy heatpump IP address
local ipadress = '192.168.20.21'
local model = 'fujitsu_awyz'

commandArray = {}
for key, value in pairs(devicechanged) do
  --if (key == 'AC Mode' or key == 'AC Fan Speed' or key == 'AC Set Temperature' or key == 'AC Hor dir' or key == 'AC Ver dir') then
  if (key == 'AC Keuken Mode' or key == 'AC Keuken Fan' or key == 'AC Keuken Temp' or key == 'AC Keuken Hor') then

    print ("HeatpumpIR event started")


-- Power mode is ON if operating modes are in use
--// Power state
--#define POWER_OFF   0
--#define POWER_ON    1
    local power = 1


--// Operating modes
--#define MODE_AUTO   1
--#define MODE_HEAT   2
--#define MODE_COOL   3
--#define MODE_DRY    4
--#define MODE_FAN    5
--#define MODE_MAINT  6
    local mode = 2
    if (otherdevices['AC Keuken Mode']) == 'Off' then
        mode = 0
        power = 0
    elseif (otherdevices['AC Keuken Mode'] == 'Auto') then
        mode = 1        
    elseif (otherdevices['AC Keuken Mode'] == 'Heat') then
        mode = 2        
    elseif (otherdevices['AC Keuken Mode'] == 'Cool') then
        mode = 3        
    elseif (otherdevices['AC Keuken Mode'] == 'Dry') then
        mode = 4        
    elseif (otherdevices['AC Keuken Mode'] == 'fan') then
        mode = 5        
    elseif (otherdevices['AC Keuken Mode'] == 'Maint') then
        mode = 6        
    end

--print (otherdevices_svalues['AC Keuken Mode'])
 --for i, v in pairs(devicechanged) do print(i, v) end

--// Fan speeds. Note that some heatpumps have less than 5 fan speeds
--#define FAN_AUTO    0
--#define FAN_1       1
--#define FAN_2       2
--#define FAN_3       3
--#define FAN_4       4
--#define FAN_5       5
    local fan = 1
    if (otherdevices['AC Keuken Fan']) == 'Auto' then
        fan = 0
    elseif (otherdevices['AC Keuken Fan']) == '1' then
        fan = 1        
    elseif (otherdevices['AC Keuken Fan']) == '2' then
        fan = 2        
    elseif (otherdevices['AC Keuken Fan']) == '3' then
        fan = 3        
    elseif (otherdevices['AC Keuken Fan']) == '4' then
        fan = 4        
    elseif (otherdevices['AC Keuken Fan']) == '5' then
        fan = 5
    end

--Set temperature
    local settemperature = 23
    settemperature = tonumber(otherdevices['AC Keuken Temp'])


--// Vertical air directions. Note that these cannot be set on all heat pumps
--#define VDIR_AUTO   0
--#define VDIR_MANUAL 0
--#define VDIR_SWING  1
--#define VDIR_UP     2
--#define VDIR_MUP    3
--#define VDIR_MIDDLE 4
--#define VDIR_MDOWN  5
--#define VDIR_DOWN   6
    local verdir = 0
    if (otherdevices['AC Keuken Ver']) == 'Auto' then
        verdir = 0
    elseif (otherdevices['AC Keuken Ver']) == 'Manual' then
        verdir = 0        
    elseif (otherdevices['AC Keuken Ver']) == 'Swing' then
        verdir = 1        
    elseif (otherdevices['AC Keuken Ver']) == 'Up' then
        verdir = 2        
    elseif (otherdevices['AC Keuken Ver']) == 'Mup' then
        verdir = 3        
    elseif (otherdevices['AC Keuken Ver']) == 'Middle' then
        verdir = 4        
    elseif (otherdevices['AC Keuken Ver']) == 'Mdown' then
        verdir = 5
    elseif (otherdevices['AC Keuken Ver']) == 'Down' then
        verdir = 6
    end


--// Horizontal air directions. Note that these cannot be set on all heat pumps
--#define HDIR_AUTO   0
--#define HDIR_MANUAL 0
--#define HDIR_SWING  1
--#define HDIR_MIDDLE 2
--#define HDIR_LEFT   3
--#define HDIR_MLEFT  4
--#define HDIR_MRIGHT 5
--#define HDIR_RIGHT  6
    local hordir = 0
    if (otherdevices['AC Keuken Hor']) == 'Auto' then
        hordir = 0
    elseif (otherdevices['AC Keuken Hor']) == 'Manual' then
        hordir = 0        
    elseif (otherdevices['AC Keuken Hor']) == 'Swing' then
        hordir = 1        
    elseif (otherdevices['AC Keuken Hor']) == 'Middle' then
        hordir = 2        
    elseif (otherdevices['AC Keuken Hor']) == 'Left' then
        hordir = 3        
    elseif (otherdevices['AC Keuken Hor']) == 'Mleft' then
        hordir = 4        
    elseif (otherdevices['AC Keuken Hor']) == 'Mright' then
        hordir = 5
    elseif (otherdevices['AC Keuken Hor']) == 'Right' then
        hordir = 6
    end
 

    print ("HeatpumpIR event transmitted")

    print ('http://' ..ipadress.. '/control?cmd=heatpumpir,' .. model..','..power..','..mode..','..fan..','..settemperature..','..verdir..','..hordir)
    commandArray['OpenURL'] = 'http://' ..ipadress.. '/control?cmd=heatpumpir,' .. model..','..power..','..mode..','..fan..','..settemperature..','..verdir..','..hordir
    end
end
return commandArray

… on Discord somebody said : “ok, so someone needs to compare the espeasy heatpumpir lib with what esphome has and see what the difference is.”
I really hope some smart people can take a look at this, I’m too “newbie” for this …

Then …

recently ESPHome update … in changelog :
“daikin_brc Climate : The Daikin BRC remotes are used by the ceiling cassette model of Daikin heatpumps. Added component Daikin BRC to support ceiling cassette heatpumps esphome#3743 by @hagak (new-integration)”

So, should I submit a feature request for “my” Fujitsu A/C ? How and where should I do this ?

Meanwhile, couldn’t I just use an ON/OFF switch in HA with a custom code to switch the AC On and Off for now ? If so how should I do this ?

If it was me I would probably get an ir receiver and see if I could learn the right codes and then send them. IR receivers are cheap and an investment anyway.

Basically do something like this.

I would also find a second remote/device I could test with (TV etc), to make sure hardware is working ok before I got too deep into debugging protocols.

I’m trying to let Home Assistant switch my AC ON/OFF for now, hoping that one day a full control protocol will be added to ESPHome …

So, I used a TSOP 4838 IR Receiver, and hooked it up to an ESP32 and used the IR receiver through ESPHome

remote_receiver:
  pin:
    number: D5
    inverted: true
  dump: all

Then I used my IR remote control to push the power ON/OFF button, pointing it towards the TSOP 4838

These are the resulting entries in the log from reading the IR :

1st learning from IR remote - Power ON

[15:41:24][D][remote.pronto:238]: Received Pronto: data=0000 006D 0082 0000 0081 003C 0011 000E 0012 000E 0010 002E 0011 000E 0011 002D 0011 000E 0011 000E 0012 000E 0010 002E 0012 002D 0012 000E 0010 000E 0011 000E 0011 002D 0011 002D 0011 000E 0011 000E 0011 000E 0011 000E 0012 000E
[15:41:24][D][remote.pronto:240]: 0010 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 000E 0011 002C 0011 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 002D 0011 000F 0010 000E 0011 000E 0011 000E 0012 002C 0011 002D 0012 002D 0011 002E 0011 002E 0011 002E 0012 002C 0011 002D 0012 000E 0011 000E 0010 002E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000F 0010 002E 0011 002E 0011 000E 0011 000E 0011 002E 0012 000E 0010 000E 0011 000E 
[15:41:24][D][remote.panasonic:070]: Received Panasonic: address=0x28C6, command=0x0008087F
[15:41:24][D][remote.aeha:099]: Received AEHA: address=0x28C6, data=[0x00,0x08,0x08,0x7F,0x90,0x0C,0x82,0x00,0x00,0x00,0x00,0x00,0x04,0xF6]

2nd learning from IR remote - Power ON

[15:41:41][D][remote.pronto:238]: Received Pronto: data=0000 006D 0082 0000 0081 003C 0011 000E 0012 000E 0010 002D 0011 000E 0011 002D 0012 000E 0010 000E 0012 000E 0010 002D 0011 002E 0011 000E 0012 000E 0010 000E 0012 002D 0012 002C 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E
[15:41:41][D][remote.pronto:240]: 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0011 000E 0011 000E 0011 000E 0012 002D 0012 000E 0010 000E 0011 000E 0012 000E 0011 000E 0011 000E 0010 000E 0012 002D 0012 000E 0010 000E 0011 000E 0011 000E 0012 002D 0011 002E 0011 002E 0011 002D 0011 002D 0012 002C 0012 002C 0011 002D 0011 000E 0011 000E 0011 002E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0011 000E 0011 000E 0012 002C 0011 002D 0011 000E 0011 000E 0011 002E 0012 000E 0010 000E 0011 000E 
[15:41:41][D][remote.panasonic:070]: Received Panasonic: address=0x28C6, command=0x0008087F
[15:41:41][D][remote.aeha:099]: Received AEHA: address=0x28C6, data=[0x00,0x08,0x08,0x7F,0x90,0x0C,0x82,0x00,0x00,0x00,0x00,0x00,0x04,0xF6]

→ Notice that there are some differences between the first and second push … huh ?

1st learning from IR remote - Power OFF

[15:41:35][D][remote.pronto:238]: Received Pronto: data=0000 006D 003A 0000 0081 003C 0012 000E 0010 000E 0011 002E 0012 000E 0010 002D 0012 000E 0011 000E 0011 000E 0010 002D 0011 002D 0011 000E 0012 000E 0010 000E 0011 002E 0012 002D 0012 000E 0010 000E 0011 000E 0011 000F 0011 000E
[15:41:35][D][remote.pronto:240]: 0010 000F 0010 000E 0012 000E 0010 000F 0011 000E 0010 000F 0010 000E 0012 000E 0011 002D 0012 000E 0010 000F 0010 000E 0011 000F 0010 000E 0011 000F 0010 000E 0012 002D 0012 000E 0010 000E 0011 000F 0010 000E 0012 002D 0011 000F 0010 000E 0011 000F 0010 000E 0011 000F 0011 000E 0010 002D 0011 000F 0010 002E 0011 002E 0011 002E 0012 002D 0011 002E 0011 002E 0011 06C3
[15:41:35][D][remote.panasonic:070]: Received Panasonic: address=0x28C6, command=0x00080840
[15:41:35][D][remote.aeha:099]: Received AEHA: address=0x28C6, data=[0x00,0x08,0x08,0x40,0xBF]

2nd learning from IR remote - Power OFF

[15:41:59][D][remote.pronto:238]: Received Pronto: data=0000 006D 003A 0000 0080 003D 0012 000E 0010 000F 0010 002E 0011 000F 0011 002D 0012 000E 0010 000F 0011 000E 0011 002C 0011 002D 0011 000F 0010 000E 0012 000E 0010 002D 0011 002D 0011 000F 0010 000F 0011 000E 0010 000E 0012 000E
[15:41:59][D][remote.pronto:240]: 0010 000F 0011 000E 0010 000F 0011 000E 0011 000E 0010 000E 0012 000E 0010 000F 0011 002D 0011 000E 0011 000F 0010 000E 0011 000F 0010 000F 0011 000E 0010 000F 0010 002E 0011 000F 0010 000F 0010 000F 0011 000E 0011 002D 0012 000E 0011 000E 0011 000E 0010 000F 0010 000F 0010 000F 0011 002D 0011 000F 0010 002D 0011 002E 0011 002E 0011 002E 0011 002E 0012 002D 0011 06C3
[15:41:59][D][remote.panasonic:070]: Received Panasonic: address=0x28C6, command=0x00080840
[15:41:59][D][remote.aeha:099]: Received AEHA: address=0x28C6, data=[0x00,0x08,0x08,0x40,0xBF]

→ Notice that there are some differences in the read-outs between the first and second push … huh ?

1st Pronto code for ON

0000 006D 0082 0000 0081 003C 0011 000E 0012 000E 0010 002E 0011 000E 0011 002D 0011 000E 0011 000E 0012 000E 0010 002E 0012 002D 0012 000E 0010 000E 0011 000E 0011 002D 0011 002D 0011 000E 0011 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 000E 0011 002C 0011 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 002D 0011 000F 0010 000E 0011 000E 0011 000E 0012 002C 0011 002D 0012 002D 0011 002E 0011 002E 0011 002E 0012 002C 0011 002D 0012 000E 0011 000E 0010 002E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000F 0010 002E 0011 002E 0011 000E 0011 000E 0011 002E 0012 000E 0010 000E 0011 000E

2nd Pronto code for ON

0000 006D 0082 0000 0081 003C 0011 000E 0012 000E 0010 002D 0011 000E 0011 002D 0012 000E 0010 000E 0012 000E 0010 002D 0011 002E 0011 000E 0012 000E 0010 000E 0012 002D 0012 002C 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0011 000E 0011 000E 0011 000E 0012 002D 0012 000E 0010 000E 0011 000E 0012 000E 0011 000E 0011 000E 0010 000E 0012 002D 0012 000E 0010 000E 0011 000E 0011 000E 0012 002D 0011 002E 0011 002E 0011 002D 0011 002D 0012 002C 0012 002C 0011 002D 0011 000E 0011 000E 0011 002E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0011 000E 0011 000E 0012 002C 0011 002D 0011 000E 0011 000E 0011 002E 0012 000E 0010 000E 0011 000E

1st Pronto code for OFF

0000 006D 003A 0000 0081 003C 0012 000E 0010 000E 0011 002E 0012 000E 0010 002D 0012 000E 0011 000E 0011 000E 0010 002D 0011 002D 0011 000E 0012 000E 0010 000E 0011 002E 0012 002D 0012 000E 0010 000E 0011 000E 0011 000F 0011 000E 0010 000F 0010 000E 0012 000E 0010 000F 0011 000E 0010 000F 0010 000E 0012 000E 0011 002D 0012 000E 0010 000F 0010 000E 0011 000F 0010 000E 0011 000F 0010 000E 0012 002D 0012 000E 0010 000E 0011 000F 0010 000E 0012 002D 0011 000F 0010 000E 0011 000F 0010 000E 0011 000F 0011 000E 0010 002D 0011 000F 0010 002E 0011 002E 0011 002E 0012 002D 0011 002E 0011 002E 0011 06C3

2nd Pronto code for OFF

0000 006D 003A 0000 0080 003D 0012 000E 0010 000F 0010 002E 0011 000F 0011 002D 0012 000E 0010 000F 0011 000E 0011 002C 0011 002D 0011 000F 0010 000E 0012 000E 0010 002D 0011 002D 0011 000F 0010 000F 0011 000E 0010 000E 0012 000E 0010 000F 0011 000E 0010 000F 0011 000E 0011 000E 0010 000E 0012 000E 0010 000F 0011 002D 0011 000E 0011 000F 0010 000E 0011 000F 0010 000F 0011 000E 0010 000F 0010 002E 0011 000F 0010 000F 0010 000F 0011 000E 0011 002D 0012 000E 0011 000E 0011 000E 0010 000F 0010 000F 0010 000F 0011 002D 0011 000F 0010 002D 0011 002E 0011 002E 0011 002E 0011 002E 0012 002D 0011 06C3

First I tried the “panasonic” mode to transmit the codes, but my AC didn’t react at all …

remote_transmitter:
  pin: GPIO12
  carrier_duty_percent: 50%

button:
  - platform: template
    name: "On Airco"
    on_press:
      - remote_transmitter.transmit_panasonic:
          address: 0x28C6
          command: 0x0008087F
          
  - platform: template
    name: "Off Airco"
    on_press:
      - remote_transmitter.transmit_panasonic:
          address: 0x28C6
          command: 0x00080840

Then I tried the “aeha” mode to transmit the codes, but my AC didn’t react at all …

remote_transmitter:
  pin: GPIO12
  carrier_duty_percent: 50%

button:
  - platform: template
    name: "On Airco"
    on_press:
      - remote_transmitter.transmit_aeha:
          address: 0x28C6
          data: [0x00,0x08,0x08,0x7F,0x90,0x0C,0x82,0x00,0x00,0x00,0x00,0x00,0x04,0xF6]
          
  - platform: template
    name: "Off Airco"
    on_press:
      - remote_transmitter.transmit_aeha:
          address: 0x28C6
          data: [0x00,0x08,0x08,0x40,0xBF]

Then I tried the “pronto” mode to transmit the 1st codes, but my AC didn’t react at all …

remote_transmitter:
  pin: GPIO12
  carrier_duty_percent: 50%

button:
  - platform: template
    name: "On Airco"
    on_press:
      - remote_transmitter.transmit_pronto:
          data: "000 006D 0082 0000 0081 003C 0011 000E 0012 000E 0010 002E 0011 000E 0011 002D 0011 000E 0011 000E 0012 000E 0010 002E 0012 002D 0012 000E 0010 000E 0011 000E 0011 002D 0011 002D 0011 000E 0011 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 000E 0011 002C 0011 000E 0011 000E 0011 000E 0012 000E 0010 000E 0011 000E 0011 000E 0012 002D 0011 000F 0010 000E 0011 000E 0011 000E 0012 002C 0011 002D 0012 002D 0011 002E 0011 002E 0011 002E 0012 002C 0011 002D 0012 000E 0011 000E 0010 002E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000F 0010 002E 0011 002E 0011 000E 0011 000E 0011 002E 0012 000E 0010 000E 0011 000E"
          
  - platform: template
    name: "Off Airco"
    on_press:
      - remote_transmitter.transmit_pronto:
          data: "0000 006D 003A 0000 0081 003C 0012 000E 0010 000E 0011 002E 0012 000E 0010 002D 0012 000E 0011 000E 0011 000E 0010 002D 0011 002D 0011 000E 0012 000E 0010 000E 0011 002E 0012 002D 0012 000E 0010 000E 0011 000E 0011 000F 0011 000E 0010 000F 0010 000E 0012 000E 0010 000F 0011 000E 0010 000F 0010 000E 0012 000E 0011 002D 0012 000E 0010 000F 0010 000E 0011 000F 0010 000E 0011 000F 0010 000E 0012 002D 0012 000E 0010 000E 0011 000F 0010 000E 0012 002D 0011 000F 0010 000E 0011 000F 0010 000E 0011 000F 0011 000E 0010 002D 0011 000F 0010 002E 0011 002E 0011 002E 0012 002D 0011 002E 0011 002E 0011 06C3"

ESPHome log says :

[10:26:17][D][button:013]: 'On Airco' Pressed.
[10:26:17][D][remote.pronto:101]: Send Pronto: frequency=38kHz
[10:26:17][D][remote.pronto:106]: Send Pronto: intros=260
[10:26:17][D][remote.pronto:107]: Send Pronto: repeats=0
[10:26:17][E][remote.pronto:109]: Inconsistent data, not sending
[10:26:17][E][remote_transmitter:117]: Empty data

… inconsistent data ?
So I tried the second set of pronto codes from the second readout …

remote_transmitter:
  pin: GPIO12
  carrier_duty_percent: 50%

button:
  - platform: template
    name: "On Airco"
    on_press:
      - remote_transmitter.transmit_pronto:
          data: "0000 006D 0082 0000 0081 003C 0011 000E 0012 000E 0010 002D 0011 000E 0011 002D 0012 000E 0010 000E 0012 000E 0010 002D 0011 002E 0011 000E 0012 000E 0010 000E 0012 002D 0012 002C 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0011 000E 0011 000E 0011 000E 0012 002D 0012 000E 0010 000E 0011 000E 0012 000E 0011 000E 0011 000E 0010 000E 0012 002D 0012 000E 0010 000E 0011 000E 0011 000E 0012 002D 0011 002E 0011 002E 0011 002D 0011 002D 0012 002C 0012 002C 0011 002D 0011 000E 0011 000E 0011 002E 0011 000E 0012 000E 0010 000E 0012 000E 0010 000E 0011 000E 0011 000E 0011 000E 0012 002C 0011 002D 0011 000E 0011 000E 0011 002E 0012 000E 0010 000E 0011 000E"
          
  - platform: template
    name: "Off Airco"
    on_press:
      - remote_transmitter.transmit_pronto:
          data: "0000 006D 003A 0000 0080 003D 0012 000E 0010 000F 0010 002E 0011 000F 0011 002D 0012 000E 0010 000F 0011 000E 0011 002C 0011 002D 0011 000F 0010 000E 0012 000E 0010 002D 0011 002D 0011 000F 0010 000F 0011 000E 0010 000E 0012 000E 0010 000F 0011 000E 0010 000F 0011 000E 0011 000E 0010 000E 0012 000E 0010 000F 0011 002D 0011 000E 0011 000F 0010 000E 0011 000F 0010 000F 0011 000E 0010 000F 0010 002E 0011 000F 0010 000F 0010 000F 0011 000E 0011 002D 0012 000E 0011 000E 0011 000E 0010 000F 0010 000F 0010 000F 0011 002D 0011 000F 0010 002D 0011 002E 0011 002E 0011 002E 0011 002E 0012 002D 0011 06C3"
[11:16:23][D][button:013]: 'On Airco' Pressed.
[11:16:23][D][remote.pronto:101]: Send Pronto: frequency=38kHz
[11:16:23][D][remote.pronto:106]: Send Pronto: intros=260
[11:16:23][D][remote.pronto:107]: Send Pronto: repeats=0
[11:16:23][E][remote.pronto:109]: Inconsistent data, not sending
[11:16:23][E][remote_transmitter:117]: Empty data

Same thing … it’s not working … grrrrr

Then I found a forum posting about missing bits in learned codes from Fujitsu remotes : RC: Fujitsu Inverter Air Conditioners (Page 2 of 4)

This forum post refers to this document : http://old.ercoupe.com/audio/FujitsuIR.pdf

But I don’t understand all this math stuff …

Could this be the problem ?

What a rabbit-hole I’ve fallen into, just switch my AC on and off … omg !

I really hope some of you experts (I’m just a newbie) can help me wiuth this …

Greetings

AC protocols can be more complex to learn/send.

Do you have another device you can test your learn/send rig with?

Once you’ve confirmed that is ok then you can move back to your AC codes. TVs tend to be quite simple.

I’ve also experienced variation in what is captured. I think that’s quite common. I often take 10 learnings and scan them for consistency.

I’ve also found that changing ESPs can definitely help too.