Custom Component: NeoSmartBlinds Cover

Custom Component for NeoSmartBlinds Integration on Home Assistant

The NeoSmartBlinds platform allows you to control a NeoSmartBlind / group of NeoSmartBlinds via a NeoSmartBlinds controller. ( MH-100 was used to develop this platform, if you have a different model and experance issues please post :slight_smile: )

Download Link

There is currently support for the following device types within Home Assistant:

  • Cover

Installation

To begin with it is recommended you ensure your NeoSmartBlinds controller has a static IP addresses, you may need to configure this via your routers DHCP options.

Download the custom component in to your folder <config_directory>/custom_components/neosmartblinds

Cover Configuration

Example of basic configuration.yaml

cover:
  - platform: neosmartblinds
    name: Blind One
    host: 192.168.0.13
    blind_code: 021.230-04-
    close_time: 65

Configuration variables

cover:

platform (string)(Required)
Must be set to neosmartblinds

host (string)(Required)
The IP of the NeoSmartBlinds controller, e.g., 192.168.0.10.

name (string)(Required)
The name you would like to give to the NeoSmartBlind.

blind_code (string)(Required)
The blind code. - this is available from the NeoSmartBlind app
Ensure you add the trailing ’ - ’

close_time (string)(Required)
Time taken in seconds to close this blind (use a stop watch to measure)

Supported features

Open
Up

Close
Down

Tilt-Up
Micro-Up

Tilt-Down
Micro-Down

Set-Position & Favorite Position - please note this is calculated using the close_time

Setting the position:

<= 49 will move the blind down for a set period. Example set position 25, moves the blind down and stops after 50% of your close_time

>=51 will move the blind up for a set period. Example set position 75, moves the blind up and stops after 50% of your close_time

==50 will set your blind to its stored favorite position

3 Likes

Getting your controller IP
The controller local IP can be found using the Neo Smart Blinds app, at “Your Controllers”.

Getting your blind code:
Using the app, go to each of the blinds advanced page to find the necessary ID numbers. See image below.

All blinds inside the same ROOM have the same unique combination of Controller ID code’s. Use CHANNEL = 15 to control all blinds as a group.

“​ID1.ID2-CHANNEL"
“ID1” : controller byte 1, from integer “000” to “255”
“.” : address separator
“ID2” : controller byte 2, from integer “000” to “255”
“-” : channel separator
“CHANNEL” : channel, individual channel from integer “01” to “14”, use channel “15” for a group

1 Like

awesome!! thank you
testing out now

hey,
ive got it showing in the UI but blinds dont seem to move?

so i think i maybe have the data wrong in this folder: \custom_components\neosmartblinds ??

##https://github.com/4n0nD3v3l0p3r/Home_Assistant_NeoSmartBlinds
cover:
  - platform: neosmartblinds
    name: Bedroom Blinds Big
    host: !secret IPBlindsHub
    blind_code: xxx-02
    close_time: 15
  - platform: neosmartblinds
    name: Bedroom Blinds Small
    host: !secret IPBlindsHub
    blind_code: xxx-01
    close_time: 17
  - platform: neosmartblinds
    name: Bedroom Blinds All
    host: !secret IPBlindsHub
    blind_code: xxx-15
    close_time: 17

Hi @Jamie_Pryer

looks like its just your locations, see below for the required structure:

  • cover.py sits inside <config_directory>/custom_components/neosmartblinds

  • neo_smart_blinds_remote.py sits inside <config_directory>/custom_components/neosmartblinds/neosmartblinds

image

also just to check your blind code should be xxx.xxx-xx-

thanks
blind code is correct? however you mentioned it should be “xxx.xxx-xx-” but mine is “xxx.xxx-xx”
however its still not working?
the devices show unknown

-------folders--------

image

image

add a ’ - ’ to the end of your blind code :slight_smile:

blind_code (string)(Required)
The blind code. - this is available from the NeoSmartBlind app
Ensure you add the trailing ’ - ’

P.s the state will always show as unknown, this is due to limitations in the controller (it doesn’t know the blind position) and to make both up/down/stop available at any time

1 Like

Nice!! This works now! Thank you :slight_smile:

Might be worth adding a big note about this to the Read me

Also, thought about adding this to HACS?

:+1: glad it’s working !

I should probably just tweak the code so the ‘ - ‘ is added, without you needing to do it in the config… my excuse is it was late yesterday when I put it together hah.

As for HACS I’m looking into it

1 Like

This works amazingly. Thank you so much for this! I was just about to sit down and work on creating a component, but you already did the hard work.

1 Like

Works with Neo Smart C-R200 controller in Australia fine.
Would be great if it could display the open/closed status.

Did that controller come with your blinds? Or did you get it separately / afterwards and if so where from and how much?

The blinds installer recommended it and provided.
It was $370 Australian - for a box not much bigger than a matchbox. A bit expensive for one blind, but can handle a whole house full.

Hi Guys! New to HA - I have been tossing up for 6 months but finally bit the bullet on trying to transfer everything from Google Home.

I have checked my folder structure and yaml file, it seems to all check out ok (and shows up in HA), however the blind doesn’t move.

The controller I am using is PR19AG**** so I am not sure if it could be a limitation of the code due to varying controller hardware? I had a quick look over the code but couldn’t see anything I could modify except maybe a port etc.

Any help would be greatly appreciated (even something basic I may have missed in setting up HA). I currently only have Philips Hue, Sonos, Plex (all installed using HA built in integrations) and HACS (using the custom components folder).

Thank you in advance.

I wanted to say thanks for this custom component. I just installed a Blindsgalore blind with the Neo Smart C-R200 controller this weekend, and it is working great. FYI I’m in the US. Next I need a sensor to tell when its open and closed by the remote or Google Home.
Thanks Again,
Rob

This is great! Might be ordering some Blinds Galore blinds this weekend while there’s still a sale.

Does anyone know if this integration supports top down bottom up shades?

For some reason in 0.109 this stopped working. The entities still show up under entities, but uneditable or controllable with an error about a ‘missing entity id’. Any ideas?

hey all,
anyone added this to an automation?
im trying to press a button my ikea switch, to make blinds go down
but not sure how to do that part?

also, thoughts on adding this to HACS?

ignore
got it

- alias: 'Ikea Switch: Blinds Down'
  initial_state: 'on'
  trigger:
    platform: event
    event_type: deconz_event
    event_data:
      id: ikea_remote_control
      event: 5002
  action:
    service: cover.close_cover
    entity_id: cover.blinds_all