Rainbird wifi timer/controller

Any chance to integrate​ the Rainbird wifi sprinkler controller?

I’ve created a pull request to implement my currently working implementation with the Rainbird WiFi LNK Stick.

You can always then implement some GUI elements like in: HASS sprinkler

I tried to setup your rainbird plugin, however it seems to stall out while trying to connect to the rainbird controller. I don’t receive any errors. Any idea what’s going on? Here’s my config. Yes - I blanked out the ip and pass with xxx. I also have all of my zones, but only included the first one here.

switch:
platform: rainbird
host: ‘xxx.xxx.xxx.xxx’
password: ‘xxxxxx’
sprinkler_1:
zone: 1
friendly_name: “Sp1”
trigger_time: 10
scan_interval: 10

Do you have any reference in your logging? There should be some from HAAS about trying to setup the switch. If you put your logging on debug, there should hopefully be more detailed info about it’s communication.

Hi, i just made the switch from domoticz to hass. One of the things i am realy happy with is the component Rainbird. But i can’t get it work. I hope you can help.

HASS version: 0.59.1

  • the app on my iphone can get a connection with the rainbird computer
  • between testing the app and rebooting hass, i rebooted the rainbird computer
  • after rebooting hass with the component loaded i get some errors in the log file (below). If i try to connect with the Rainbird app on my iphone i get an error connection. so it looks like that Hass made some kind of connection… but that’s all.

configuration.yaml
switch:

  • platform: rainbird
    host: ‘192.168.1.15’
    password: ‘*********’
    sprinkler_1:
    zone: 1
    friendly_name: “Sproeier gazon voor”
    trigger_time: 45
    scan_interval: 10
    sprinkler_2:
    friendly_name: “Sproeier gazon zijkant”
    zone: 2
    trigger_time: 45
    scan_interval: 10
    sprinkler_3:
    zone: 3
    friendly_name: “Sproeier gazon achter”
    trigger_time: 45
    scan_interval: 10
    sprinkler_4:
    friendly_name: “Druppelslang borders”
    zone: 4
    trigger_time: 90
    scan_interval: 10
    sprinkler_5:
    zone: 5
    friendly_name: “sprinkler_5”
    trigger_time: 15
    scan_interval: 10
    sprinkler_6:
    friendly_name: “sprinkler_6”
    zone: 6
    trigger_time: 15
    scan_interval: 10

logging:
2017-12-07 12:44:28 WARNING (MainThread) [homeassistant.components.switch] Setup of platform rainbird is taking over 10 seconds.
2017-12-07 12:44:48 WARNING (Thread-19) [homeassistant.components.switch.rainbird] Request resulted in no response
2017-12-07 12:44:48 ERROR (Thread-19) [homeassistant.components.switch.rainbird] Error getting state. Possible configuration issues
2017-12-07 12:44:48 WARNING (MainThread) [homeassistant.components.switch] Platform rainbird not ready yet. Retrying in 30 seconds.
20

Alright. First things first. Concurrency with the wifi stick is an issue. The current version (as per request from the HAAS devs) will do requests per switch… very annoying but ok, this will result in some concurrency, but as long as it is only HAAS it’s fine. Can you first try with 1 zone?

What I see in above logs, is that the initial connection fails and there is no response. Or an error. So I will need to see the logging in debug. Can you provide that?

Also please do not use the APP in between or just before. Sometimes it takes about 30 - 60 seconds for the stick to respond to another client and this will result in HAAS disabling the component.

hi, i changed config to 1 zone but with the same error.
i know for sure that the IP is correct

logging: debug

2017-12-07 15:08:49 INFO (MainThread) [homeassistant.components.switch] Setting up switch.rainbird
2017-12-07 15:08:49 DEBUG (Thread-13) [homeassistant.components.switch.rainbird] Rain Bird Controller set to 192.168.1.15
2017-12-07 15:08:49 DEBUG (Thread-13) [homeassistant.components.switch.rainbird] Requesting current Irrigation station
2017-12-07 15:08:49 DEBUG (Thread-13) [homeassistant.components.switch.rainbird] Request to line: {“id”:9,“jsonrpc”:“2.0”,“method”:“tunnelSip”,“params”:{“data”:“3F00”,“length”:2}}
2017-12-07 15:08:59 WARNING (MainThread) [homeassistant.components.switch] Setup of platform rainbird is taking over 10 seconds.
2017-12-07 15:09:19 WARNING (Thread-13) [homeassistant.components.switch.rainbird] Request resulted in no response
2017-12-07 15:09:19 ERROR (Thread-13) [homeassistant.components.switch.rainbird] Error getting state. Possible configuration issues
2017-12-07 15:09:19 WARNING (MainThread) [homeassistant.components.switch] Platform rainbird not ready yet. Retrying in 30 seconds.

password is also correct? It doesn’t seem to get a respond. Which is normally because it doesn’t recognize the message (which is encrypted using your password)

hi the password was correct but i changed it from a complex (capitals etc) to easy password 12345678 now it gets a response but i don’t get devices or switches yet.

2017-12-07 16:16:35 DEBUG (Thread-20) [homeassistant.components.switch.rainbird] Rain Bird Controller set to 192.168.1.15
2017-12-07 16:16:35 DEBUG (Thread-20) [homeassistant.components.switch.rainbird] Requesting current Irrigation station
2017-12-07 16:16:35 DEBUG (Thread-20) [homeassistant.components.switch.rainbird] Request to line: {“id”:9,“jsonrpc”:“2.0”,“method”:“tunnelSip”,“params”:{“data”:“3F00”,“length”:2}}
2017-12-07 16:16:44 WARNING (MainThread) [homeassistant.components.switch] Setup of platform rainbird is taking over 10 seconds.
2017-12-07 16:16:45 DEBUG (Thread-20) [homeassistant.components.switch.rainbird] Response from line: {“jsonrpc”: “2.0”, “result”:{“length”:6, “data”:“BF0000000000”}, “id”: 9}
2017-12-07 16:16:45 DEBUG (Thread-20) [homeassistant.components.switch.rainbird] Initialized Rain Bird Controller

Communication seems to be OK. It retrieved the correct state, so the switch should be visible. Maybe after the last change restart haas completly

i’ve restarted hass completly and waited a long time but there are no new switches (switch.sprinkler_1 or something). Is there more to check on the Rain Bird Controller or in Hass?

In the log the Rain Bird Controller is still good initialized

hi i changed the configuration.yaml and now i have a switch. I can’t try if it works because i don’t have it connected cause of the cold weather. but can you confirm that it’s right to add switches: in the config? (its not on this page https://home-assistant.io/components/switch.rainbird/)

switch:
platform: rainbird
host: '192.168.1.15’
password: ‘*********’
switches: << add this?
sprinkler_1:
zone: 1
friendly_name: “Sproeier gazon voor”
trigger_time: 45
scan_interval: 10
sprinkler_2:
friendly_name: “Sproeier gazon zijkant”
zone: 2
trigger_time: 45
scan_interval: 10
sprinkler_3:
zone: 3
friendly_name: “Sproeier gazon achter”
trigger_time: 45
scan_interval: 10
sprinkler_4:
friendly_name: “Druppelslang borders”
zone: 4
trigger_time: 90
scan_interval: 10
sprinkler_5:
zone: 5
friendly_name: “sprinkler_5”
trigger_time: 15
scan_interval: 10
sprinkler_6:
friendly_name: “sprinkler_6”
zone: 6
trigger_time: 15
scan_interval: 10

Not sure. It shouldn’t be needed to function as I’ve tested it with the default config before.

I’m using a split configuration (separate yamls for everything) and haven’t got the controller on for now. You can if your controller is on, just turn it on and see if the controllers displays shows the irrigation starting.

Please note, i’ve pushed a new version out, which will include the rain sensor (if connected) and the configuration will be a bit different.

i’ve just did a test and it works for all the zones.

I also uses a split file switches.yaml.
but still i had to add Switches under platform:rainbird and then the 6 zone sprinklers that works for me.

thanks for the nice work! keep on going.

Any idea when the new version with the rain sensor integration will be released as standard. Then I can get you started on my next suggestion? Can we get a switch or sensor with the current state of the dial in the rainbird controller. For example, right now, mine is in “off” mode. I know that I can turn it on with the switch in HA, but I would like to have HA recognize that it’s turned off (in the winter in this case) and not allow it to be turned on. But to do that I need to know the current state of the dial.

Well, I upgraded to 0.60 and my rainbird no longer works. Where are we on getting the version that supported the rain sensor into the distro?

Figured out my problem. It rained the other night and my christmas lights got wet and tripped my cgfi switch. My rainbird was plugged into that same circuit so it wasn’t turned on. Grrrrr It would be nice if the component could still load even if the device doesn’t have power so that once it’s turned back on, it could start working without a reboot.

Hi,

I will have probably a rainbird installation. So I’m interested by this component. I can understand the purpose of the switch, but not the sensor. Have you a example of the returned data?