SmartIR - Control your Climate, TV and Fan devices via IR/RF controllers

I tried your JSON and it works well for me.

Wow!. Thanks Vassilis for the quick reply. So which one the original or the formatted .json?

Could I get a step by step. What am I missing? Sorry for the dumb questions.

  1. Copy the 11111.json to the code/climate folder
  2. Make sure the code below is correct
  3. Restart HA?
- platform: smartir
    name: Office AC Heatpump
    unique_id: office_ac
    device_code: 11111
    controller_data: 10.55.1.150
    temperature_sensor: sensor.broadlink_sensor_temperature_4

Download this file:
https://gist.githubusercontent.com/vassilis-panos/75107b6810598c09049778594a33ac3e/raw/55b4cc1312c5be892b59874ae5d061e2907eea00/11111.json

Place it to smartir/codes/climate and restart HA

2 Likes

Awesome so that worked. Thanks so much. I imagine you can add this to the other codes on the smartir page? Do you need anything else added to it for that to happen?

I assume you cannot have swing?

Good evening everyone, I made the firmware modification of my R1-UFO smart ir docooler with tasmota and now it is a YTF IR Bridge Module. Integrated into Home Assistant through mqtt and regularly recognized, I then installed the SmartIR plugin and tried to put it in communication with my Daikin air conditioner model FTXS25CV. In the configuration.yaml I entered the 1100 code inherent to my model (unfortunately, however, it is for broadlinq and not for mqtt, for that model I have not found any mqtt code) is there a way to integrate it? do I have to do something with its original remote control? thank you in advance

I did smartir.check_updates and smartir.update_component to manually. My configuration.yml
fan:

  • platform: smartir
    name: Living room fan
    unique_id: living_room_fan
    device_code: 1000 # branch panasonic
    controller_data: 192.168.1.6
    power_sensor: binary_sensor.fan_power

I test service: fan.turn_on, entity_id: fan.living_room_fan but log error:

Log Details (ERROR)
Logger: custom_components.smartir.fan
Source: core.py:1207
First occurred: 10:18:23 (1 occurrences)
Last logged: 10:18:23
Unable to find service broadlink/send
Traceback (most recent call last):
File ‘/config/custom_components/smartir/fan.py’, line 242, in send_command
await self._controller.send(command)
File ‘/config/custom_components/smartir/controller.py’, line 82, in send
‘broadlink’, ‘send’, service_data)
File ‘/usr/src/homeassistant/homeassistant/core.py’, line 1207, in async_call
raise ServiceNotFound(domain, service) from None
homeassistant.exceptions.ServiceNotFound: Unable to find service broadlink/send

Hi @Vassilis, great work man. Really appreciate it.
I have 2 ACs - 1 is an old Samsung - ASH series and one’s a Vortex (newer) - VOR 12C3 series. I already have the Broadlink IR codes learned, but your method is a lot easier. Where can I give you the codes for both ACs, so that if anyone else has these ACs, you can implement the models in your code?

Thank you.

Is anyone able to control tv volume using google home?

Does anyone’s smartir devices work in HomeKit in hassio 0.109.0?

Log Details (WARNING)

Logger: homeassistant.util.async_
Source: util/async_.py:120
First occurred: 6:57:44 PM (1 occurrences)
Last logged: 6:57:44 PM

Detected I/O inside the event loop. This is causing stability issues. Please report issue to the custom component author for smartir doing I/O at custom_components/smartir/init.py, line 68: request = requests.get(MANIFEST_URL.format(branch), stream=True, timeout=10)

^ Just noticed the above. Running smart.ir latest version as per the service: smartir.check_updates HA version 1.09

Hi all,
I am using this component about 6-8 months. I haven never updated and it is working fine since then.
I am wondering if I should be better update the component sometime or to add in my configuration the following as per instructions.

smartir:
  update_branch: rc

What is your experience with this?
I am more in “if it is not broken don’t try to fix it” but sometimes updates are good

Please if possible someone to tell me how I can do the update because I am not sure I know

Hi all,

I have a couple of errors for SmartIR, besides the “Detected I/O inside the event loop”. It also throws:

Logger: custom_components.smartir.climate
Source: custom_components/smartir/climate.py:351
Integration: SmartIR (documentation)
First occurred: 11:36:46 AM (2 occurrences)
Last logged: 11:36:46 AM

Unable to update from humidity sensor: could not convert string to float: 'unavailable'

And also:

Logger: custom_components.smartir.climate
Source: custom_components/smartir/climate.py:343
Integration: SmartIR (documentation)
First occurred: 11:36:46 AM (2 occurrences)
Last logged: 11:36:46 AM

Unable to update from temperature sensor: could not convert string to float: 'unavailable'

Both sensors report values of 23.6 / 24.5 and so on, they do not seem to be str - but integers

HA 0.109
Any ideas?

i have had that for a long time, i think its due to the sensor not being available before the smartir component is

You should try to convert your sensor data into float, (depend on sensor type), for example with MQTT sensor and json data I am using something like:

temperature: '{{ SENSOR.sensor1 | float }}'

You need to do that in sensor configuration. Simply SmartIR expect this to be float type already.

P.S.: 23.6 / 24.5 Doesn’t really seems like integers :-))))

@Vassilis, thank you for great work! I just received my humidifier with IR control and I’ve started to play with idea if I can use SmartIR to control it as well. I am curious, if these devices use as well ‘all in one’ IR command. Do you have any experience with it? Do you plan to extend SmartIR with such functionality?

I update here on first test results. :wink:

Thank you for the idea, I created template sensors and placed those sensors in the SmartIR config - no more errors.

  - platform: template
    sensors:
      liv_temp:
        friendly_name: "LivingRoom Temperature"
        unit_of_measurement: "°C"
        value_template: "{{float(states('sensor.livingroom_temperature'))}}"
  
  - platform: template
    sensors:
      liv_humid:
        friendly_name: "LivingRoom Humidity"
        unit_of_measurement: "%"
        value_template: "{{float(states('sensor.livingroom_humidity'))}}"

PS: you are right, they are not integers, I meant that they are numbers :frowning: - my bad -

2 Likes

Μπράβο Βασίλη!
that did the trick! I had also the same problem and now it is solved
thanks again

Haha, in the meantime I just noticed your nickname :slight_smile:

is it possible to create a new json for my AC and add a different device_code? mainly because my AC model doesn’t support under the list, hopefully could be done that way with its flexibility?

any info on how to include the oscillate fan support in our existing smartir configuration?