esphome / feature-requests

ESPHome Feature Request Tracker
https://esphome.io/
418 stars 26 forks source link

Add support for the ac remote Fujitsu AR-JE5 #780

Open danimart1991 opened 4 years ago

danimart1991 commented 4 years ago

Describe the problem you have/What new integration you would like

The AC Remote Fujitsu AR-JE5 is not included in the list of compatible Fujitsu remotes of component climate fujitsu_general.

Please describe your use case for this integration and alternatives you've tried:

Additional context

Maybe the SmartIR Broadlink integration could help to identify the codes: https://github.com/smartHomeHub/SmartIR/blob/master/codes/climate/1286.json

danimart1991 commented 4 years ago

News here. It seems that these remote models are the same (including Fujitsu, General, Hiyasu and Fuji Electric) AR-DJ5, AR-JE5, AR-JE4, AR-JE3, AR-PV1, AR-PV2, AR-PV4, AR-JE7, AR-JE8, AR-JE9, AR-JE11, 9AGF03033, 9AGF01238, 9AGF6040,

And all of these AC models:

migabit commented 1 year ago

Hello everyone. In the latest versions of ESPHome, I was able to read the codes for the AR-JE5 remote. It would be great if this somehow helps in the implementation of a full-fledged component for "IR Remote Climate" Fujitsu AR-JE5 Remote IR codes. (AEHA)

vicfergar commented 1 year ago

I'm interested in it too. Did anyone here make any progress on that? I tried some codes contained in the project referenced by @migabit and works well (I tried the on/off codes with a template switch)

vicfergar commented 1 year ago

I made some progress modifying the existing fujitusu_general component to support this type of remotes. Changes can be found here: https://github.com/vicfergar/esphome/tree/feat/fujitsu-ar-je5

I'm using this board from dudanov with the following config:

esphome:
  name: bedroom-climate
  friendly_name: bedroom-climate

esp8266:
  board: esp01_1m

external_components:
  - source: overriden_components
    components: [ fujitsu_general ]

# Enable logging
logger:
  baud_rate: 0
  #level: VERBOSE

# Enable Home Assistant API
api:
  encryption:
    key: "encryption_key"

ota:
  password: "ota_password"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Bedroom-Climate Fallback Hotspot"
    password: "ap_password"

captive_portal:

# IR remote transmitter (IR- pad connected to TSOP output of controlled device)
remote_transmitter:
  pin: GPIO13
  carrier_duty_percent: 100%

remote_receiver:
  id: rcvr
  pin:
    number: GPIO12
    inverted: true
  #dump: aeha

climate:
  - platform: fujitsu_general
    name: "Climatizador dormitorio"
    receiver_id: rcvr

Hope it helps!

mspiridakis commented 11 months ago

Please add support for the Fujitsu AR-JE5. A lot of Fujitsu models use these codes.

mspiridakis commented 11 months ago

I made some progress modifying the existing fujitusu_general component to support this type of remotes. Changes can be found here: https://github.com/vicfergar/esphome/tree/feat/fujitsu-ar-je5

I'm using this board from dudanov with the following config:

esphome:
  name: bedroom-climate
  friendly_name: bedroom-climate

esp8266:
  board: esp01_1m

external_components:
  - source: overriden_components
    components: [ fujitsu_general ]

# Enable logging
logger:
  baud_rate: 0
  #level: VERBOSE

# Enable Home Assistant API
api:
  encryption:
    key: "encryption_key"

ota:
  password: "ota_password"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Bedroom-Climate Fallback Hotspot"
    password: "ap_password"

captive_portal:

# IR remote transmitter (IR- pad connected to TSOP output of controlled device)
remote_transmitter:
  pin: GPIO13
  carrier_duty_percent: 100%

remote_receiver:
  id: rcvr
  pin:
    number: GPIO12
    inverted: true
  #dump: aeha

climate:
  - platform: fujitsu_general
    name: "Climatizador dormitorio"
    receiver_id: rcvr

Hope it helps!

Newbie question: How do you properly reference the modified components in "external_components:" from https://github.com/vicfergar/esphome/tree/feat/fujitsu-ar-je5 ? Do I need to download the component folder locally ?

migabit commented 11 months ago

@mspiridakis

Do I need to download the component folder locally ?

Yes, look at an example of my config

external_components:
  - source:
      type: local
      path: C:\1\esphome\components\
    components: [ fujitsu_general ]

@vicfergar Thank you for your work. I've been using the modification from your repository for several months and everything works great. I hope it gets into the main development branch.

mspiridakis commented 10 months ago

Thank you for your time on this @migabit !

hldh214 commented 9 months ago

I made some progress modifying the existing fujitusu_general component to support this type of remotes. Changes can be found here: https://github.com/vicfergar/esphome/tree/feat/fujitsu-ar-je5

I'm using this board from dudanov with the following config:

esphome:
  name: bedroom-climate
  friendly_name: bedroom-climate

esp8266:
  board: esp01_1m

external_components:
  - source: overriden_components
    components: [ fujitsu_general ]

# Enable logging
logger:
  baud_rate: 0
  #level: VERBOSE

# Enable Home Assistant API
api:
  encryption:
    key: "encryption_key"

ota:
  password: "ota_password"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Bedroom-Climate Fallback Hotspot"
    password: "ap_password"

captive_portal:

# IR remote transmitter (IR- pad connected to TSOP output of controlled device)
remote_transmitter:
  pin: GPIO13
  carrier_duty_percent: 100%

remote_receiver:
  id: rcvr
  pin:
    number: GPIO12
    inverted: true
  #dump: aeha

climate:
  - platform: fujitsu_general
    name: "Climatizador dormitorio"
    receiver_id: rcvr

Hope it helps!

Hello @vicfergar , thank you for your work, it is greatly appreciated. I currently have a Fujitsu model designed for domestic use in Japan, with the remote control model "ar-rlb2j". I have tried the official "fujitsu_general" and "heatpumpir" libraries from esphome, as well as your modified version, but unfortunately, none of them can control my air conditioner. Therefore, I plan to follow @migabit 's approach and record all possible combinations of temperature and mode using a receiver. My question is, how can I convert these combinations into a cpp code similar to what you have written? Thank you.

============

Update: I found another repository that solved my problem: https://github.com/crankyoldgit/IRremoteESP8266/pull/2030 My yaml:

esphome:
  includes:
    - fujitsu_ir.h
  libraries:
    - https://github.com/shimmy-void/IRremoteESP8266.git#bce5c0b0eeda8431a95d95c9947e4008bb0b982f

# ...

climate:
  - platform: custom
    lambda: |-
      auto fujitsu_ac = new FujitsuAC();
      App.register_component(fujitsu_ac);
      return {fujitsu_ac};

    climates:
      - name: "Living Room Fujitsu AC"
alextessier6 commented 5 months ago

Thank you @migabit && @vicfergar !! Worked perfectly for a Fujitsu model ASU9CQ (remote model AR-JW28)

Also, external components can be directly loaded from git which makes things a bit easier :

external_components:
  - source: 
      type: git
      url: https://github.com/vicfergar/esphome.git
      ref: feat/fujitsu-ar-je5
    components: [ fujitsu_general ]