Heated (Electric) Blanket Options?

It’s starting to get cold in the northern hemisphere and having the bed already warm before crawling in would be awfully nice. What are folks using? I initially thought this would be an easy/solved ‘problem’ but after a bit of searching I’ve come up empty. I’m in the US BTW.

A blanket with a physical switch would be the simplest to control with a smart outlet, but I’m not seeing any made this way anymore (they all have buttons to set modes, so presumably they are off when first plugged in). I’m not AGAINST a ‘smart’ blanket if it is actually controllable from HA and ideally is all local control (I’m also not keen on spending more on a blanket than I did on my mattress). And yes, while I COULD hack something together I’m not interested in electrically modifying this particular consumer appliance. :slight_smile:

The Sunbeam blanket is a Tuya device that works with Local Tuya with a little fiddling. I do wish it was Matter instead but… In any case it works. Locally.

Blankets and anything with heaters are hard to do. Commercially they require a LOT of safety features so you’re asking for someone to certify that thier device won’t cause a fire… …now we add… In case it’s accidentally activated, and left on… And.

Most electronics manufacturers don’t want that liability. The Sunbeam is the only one I know of in the Northamerican market. I personally wouldn’t automate a dumb blanket because of aforementioned safety concerns.

I did see the post about this option but initially kind of wrote it off since I’ve never used Tuya devices before (honestly kind of thought they were more exclusive to areas outside of North America too). Decided to go ahead and buy one to try out; seems like it should meet my needs and I can always return it to Amazon if not. Thanks for the tip!

Totally fair, and I would definitely only consider it with a brand new one and unplug it if I was away for an extended period. Regardless, this seems to be a mute point as they don’t seem to make them like this anymore. No garage sale bargains for me! Ha

1 Like

I just use a smart switch on my dumb Sunbeam electric blanket. Mine (in AU) has a display with up/down buttons, but when power is restored it goes back to the previous setting. The model number of the blanket controller is BL0500 - but that might be different in the US.

It also switches off automatically after 3 hours and flashes “0”, but I monitor the power use and turn it off and on to overcome that. I only ever have it on level 5 (of 9) to (hopefully) not burn the house down. It’s been fine for over 5 years. My Dad bought a similar blanket from a different manufacturer, and that turns off when power is restored. He replaced it for one he found with the old-fashioned sliding knob, so they still exist (in AU anyway).

I just finished smartifying my electric blanket. I bought a second controller off eBay, tapped the LED signals, the pull-ed up button sensor signal, and GND on the other side of the button. Hooked everything to an ESP32 (which are 5V-tolerant) and voila!

I defined a helper drop-down which triggers an automation to keep “clicking” the button until the desired power level is reached and Lovelace card for each that select the corresponding power level if not already on or turn off the blanket otherwise when tapped.

The controller remains fully manually working and I’m simply faking button presses. Its internal safety features like auto-shut off are still fully functional. I tried supplying the power for the ESP32 from the controller itself but it didn’t work.


See it in action here: Imgur: The magic of the Internet

binary_sensor:
  - platform: gpio
    pin: 32
    id: warm
    name: 'Warm'

  - platform: gpio
    pin: 21
    id: low
    name: 'Low'

  - platform: gpio
    pin: 25
    id: med
    name: 'Med'

  - platform: gpio
    pin: 22
    id: high
    name: 'High'

sensor:
  - platform: binary_sensor_map
    id: power_map
    name: 'Power Level'
    type: sum
    channels:
      - binary_sensor: warm
        value: 1
      - binary_sensor: low
        value: 2
      - binary_sensor: med
        value: 4
      - binary_sensor: high
        value: 8

output:
  - platform: gpio
    pin:
       number: 16
       inverted: true
       mode:
         output: true
         open_drain: true
    id: button_press

button:
  - platform: output
    name: "Button"
    output: button_press
    duration: 100ms

text_sensor:
  - platform: template
    name: "Power Level"
    id: power_level
    icon: mdi:bed
    lambda: |-
      if (id(power_map).state == 0) return {"Off"};
      if (id(power_map).state == 1) return {"Warm"};
      if (id(power_map).state == 2) return {"Low"};
      if (id(power_map).state == 4) return {"Medium"};
      if (id(power_map).state == 8) return {"High"};
      return {"ERROR!"};
    update_interval: 1s

select:
  - platform: template
    name: "Power Setting"
    id: power_setting
    icon: mdi:bed-outline
    optimistic: True
    options:
      - "Off"
      - "Warm"
      - "Low"
      - "Med"
      - "High"
    initial_option: "Off"
    set_action:
      then:
        - if:
            condition:
              lambda: 'return x == "Off";'
            then:
              - while:
                  condition:
                    or:
                      - binary_sensor.is_on: warm
                      - binary_sensor.is_on: low
                      - binary_sensor.is_on: med
                      - binary_sensor.is_on: high
                  then:
                    - output.turn_on: button_press
                    - delay: 100ms
                    - output.turn_off: button_press
                    - delay: 200ms
            else:
              - while:
                  condition:
                    lambda: |-
                      return
                        (x == "Warm" && !id(warm).state)
                        || (x == "Low" && !id(low).state)
                        || (x == "Med" && !id(med).state)
                        || (x == "High" && !id(high).state);
                  then:
                    - output.turn_on: button_press
                    - delay: 100ms
                    - output.turn_off: button_press
                    - delay: 200ms
3 Likes

Don’t even bother getting these “smart” heating blanket. Just use the old fashion ones with mechanical switch button and hook it to a smart plug. It’s working fine for me over two years.

2 Likes

That’s what I would have done, but as mentioned they don’t seem to sell that style anymore in the US (or at least I couldn’t find them).

Thanks for the suggestion! I’d never used a Tuya device before, but it still only took me about 30 minutes to get it all setup in Local Tuya. Been very happy with it, enough so that I’ve been tempted to upgrade to the larger ‘dual-zone’ one already (my wife likes it quite a bit warmer than I’d prefer). Will definitely enjoy having this when it actually gets cold and I’ve already been able to drop the furnace setpoint lower than I previously had it while still staying comfy.

For anyone else, I essentially used this post as a guide:

This is literally the only Tuya device I own. If it wasn’t for my wife - I’d not have it because I really dislike how Tuya wants to lock in clients. That said as long as local Tuya continues to connect it can stay in my home.

Non affiliated link: Aliexpress

What settings did you use to get it to work? Would you mind screenshotting them? When I added the items as switches, they would immediately go off after turning on and the app ceased to work until I power-cycled the blanket.

I used this thread to setup mine (mine is smaller and only has one zone, so it’s slightly different).

1 Like