IR blaster

Hi all,

I have a new wall mounted IR heater. But it’s not “smart” and is not WiFi / BT connected. Fittingly it’s controlled by an IR remote control. An IR controlled IR heater. lol.

So, apart from buying ready built, can anyone recommend a DIY home-assistant compatible IR blaster device. I guess it will have to learn the existing remote codes and then replay on command. “Too much effort”? I quickly read up on the topic and don’t want to end up with someone Tuya or over specced and over price if we just need components we have in stock. Maybe it’s a springboard to other HA devices I could build later.

Thanks!

It may be easier to open the device, remove its controller, and make it a completely dumb non-controllable device. At least that’s what I ended up doing. It can then be switched with any remote controlled socket outlet that integrates nicely with your home automation setup.

(Note: IR panels should only be switched on and off (slowly), because they’re much less effective when dimmed.)

It’s quite an expensive (and in warranty) so I’m going for non-voiding hacks only. The heater has thermostat setting and hi/low power modes as wall as display on/off. So it’s a little more complicated than an on/off thing.

The grand plan might be a current sensor on the power supply (or basic IR sensor) to detect state, then at least on of and automation control to start and stop, and add a zigbee remote as well.

Ah, I got mine from Marktplaats so I didn’t mind hacking it to pieces. There are always plenty of IR panels on Marktplaats because many are disappointed with these things: people buy them not really understanding what they are and how you should use them, and there are people who discover that they prefer convection over radiant heat. (To anyone shopping for these things: avoid the ceramic ones; those are heavy and older style; also avoid every “IR panel” that has convection cooling perforations/holes, like the one that was sold at Action.)

If your IR heater has a low power mode, then I wonder if it’s really IR, or maybe really a convection based thing. Low power does not seem to make a lot of sense for IR heaters since the heater has to be within a specific temperature range (95-110 °C if I recall correctly) to function mostly through radiation.

Either way, good luck finding an IR blaster, and please keep us informed of what you find that works :slight_smile:

This is the thing:

It has multiple elements so I assume low power mode is less than all of them.

I’ll be interested to know if anyone got an off the shelf IR thing and if it was any good for the price…

Ah, that’s a completely different kind of IR heating. I was thinking about the ones that use much less power, and stay ~100 °C all the time. The kind you linked is more common for outside use I think, and gets much hotter.

Yeah this is a cheaper alternative to a new windows/stove/fire… quite nice mounted above the sofa!

If you want a few basic functions, copy those few buttons should not take a long time.
Perhaps a cheap ESP32 board with an IR transmitter is the way to go.
On YT there is a tutorial made by ResinChemTech that helped me out big time when I want my remote controlled fake candle lights to turn on/off by voice and at a certain time.

Am I correct in thinking that the M5 stack device gifted by revspace during corona time has both wifi and IR transmission?!

I think you are correct!

That’s pretty cool! Has anyone already ESP32Home’d it? That’s now my next project…

1 Like

Haven’t heard about it in the space, but google tells me this:

https://gist.github.com/abmantis/7ccca3ea1793226058cd975f75ad7d58

1 Like

Thanks :slight_smile: I was too exceted and just dig it out of the drawer and am installing a pre-built esp32home setup on it to see what happens. I’m not sure where to put the config yet, but that’s just saved me a lot of time :smiley:

1 Like

Magic!
image

1 Like

Welke binary zit daar in?

1 Like

Next step was to add the ESPHome portal to my home assistant docker compose:

 esphome:
        container_name: esphome
        image: esphome/esphome
        volumes:
          - /opt/homeassistant/esp32home-config:/config
          - /etc/localtime:/etc/localtime:ro
        restart: unless-stopped
        privileged: true
        network_mode: host

And now I’m ready to configure it :slight_smile: shockingly simple so far!

substitutions:
  name: esphome-web-5d2aa8
  friendly_name: Atom

esphome:
  name: ${name}
  friendly_name: ${friendly_name}
  min_version: 2024.6.0
  name_add_mac_suffix: false
  project:
    name: esphome.web
    version: dev

esp32:
  board: m5stack-atom

# Enable logging
logger:

# Enable Home Assistant API
api:

# Allow Over-The-Air updates
ota:
- platform: esphome

# Allow provisioning Wi-Fi via serial
improv_serial:

wifi:
  # Set up a wifi access point
  ap: {}

# In combination with the `ap` this allows the user
# to provision wifi credentials to the device via WiFi AP.
captive_portal:

dashboard_import:
  package_import_url: github://esphome/example-configs/esphome-web/esp32.yaml@main
  import_full_config: true

# Sets up Bluetooth LE (Only on ESP32) to allow the user
# to provision wifi credentials to the device.
esp32_improv:
  authorizer: none

# To have a "next url" for improv serial
web_server:

sensor:
  - platform: wifi_signal
    id: wifi_value
    name: "WiFi Signal Sensor"
 
binary_sensor:
  - platform: gpio
    pin:
      number: 39
      inverted: true
    name: 'M5 Button'

light:
  - platform: fastled_clockless
    chipset: WS2812B
    pin: 27
    num_leds: 25
    rgb_order: GRB
    id: status_led
    color_correct: [50%, 50%, 50%]
    name: 'M5 Light'
    effects:
      - random:
      - flicker:
      - addressable_rainbow:
      - pulse
      - strobe:
              name: Strobe Effect With Custom Values
              colors:
                - state: true
                  brightness: 50%
                  red: 100%
                  green: 90%
                  blue: 0%
                  duration: 500ms
                - state: false
                  duration: 250ms
                - state: true
                  brightness: 50%
                  red: 0%
                  green: 100%
                  blue: 0%
                  duration: 500ms

remote_transmitter:
  pin: GPIO12
  carrier_duty_percent: 50%

Now to get the remote codes and it’s close to being a thing!

2 Likes

On the quest to receive IR signals, I went down a historical rabbit hole the past 2 days, trying to get an old Samsung Galaxy Tab 8 (Android 4.4) to work because of it’s built in IR. After installing very old Android Studio Build (2.3.3 / 2017), realising that the device only connects to my laptop with that one “magic” USB cable, and hacking the code of an old sample app https://github.com/MarkPaxton/ir-app to test the API, I realised that there’s no IR receiver here either.

(Even more annoying that I built such a device using a PIC microcontroller in 1997 and it’s sitting in a box somewhere in an attic in the UK!)

I have emailed the manufacturer to ask for the codes, in case they are hack-friendly… otherwise maybe it’s brute force time… or alternatively crack open the remote and temporarily wire the IR out to a GPIO on the M5 stack, but that might be hard and destructive…