Integration with Orbit B-Hyve Irrigation System

Do you by chance have a list of all api endpoints?

Would love to see this component added! I have several hubs and hose faucet timers and happy to help test.

+1 would love that too !

Add me to the custom component testing when it’s ready! Now that the snow is finally melted I’ll be using my sprinkler system again :slight_smile:

About to buy a B-Hyve from Bunno’s here is Australia. Let me know if you want me to test with a presumably international unit!

Excited for the outcome of all the hard work you guys are doing.

1 Like

@Swiftnesses how did you finally integrate the B-Hyve? I just bought one, and would love to monitor it in HA. TIA.

Also happy to test! Thanks for the hard work.

Same here. I would be happy to help test as well. This would be really nice to have in HA.

me too! I would be happy to help test :grinning:

While we’re waiting does anyone know whether it’s possible to have bothered the B-hyve sprinkler system AND b-hyve smart faucet and trigger the faucet via Alexa? I can start/ stop a sprinkler zone but have a misting irrigation system setup to the smart faucet device and can’t seem to find a way to trigger it via Alexa.

Appreciate any thoughts!

Would love to see this working… Have the orbit in the back yard, and somewhat tempted to get for the front if we can get this going

Please, if you are looking for testers, I am a willing participant. I would really like to have my B-Hyve sprinkler system integrated with Hass.io. While I lack a lot of the technical skills of programming, I am a critical thinker, and good at problem solving.

So many things are going one, I won’t have time til end of May.

I have something working. But it is a bit of a hack. I have an echo dot sitting right near the pc running Home Assistant. I’m using google_translate_say and VLC media player to tell my orbit to run Program A. I use meteorological season to decide how often to run. I use Dark_Sky precipitation prediction and current temperature as conditions so I won’t water below 40 degrees or if the rain chance is above 50%. If anyone is interested I can post code.Like I said it’s a hack but it does work…

I can’t seem to get this to work. I used Postman to establish the session and got back the “orbit_session_token” along with other info just fine. Then I used the Chrome “Smart Websocket Client” to connect to “wss://api.orbitbhyve.com/v1/events” and then send the event “app_connection” as you said, using the session token from the first connection. I got no reply. I continued, however, and sent the “ping” event. No reply. Finally, the socket closed. Any ideas?

I started a project for mqtt integration with BHyve.

Can see the details there, might help.

9 Likes

Thanks for this! I’ve been meaning to integrate my BHyve system, and this is a great start.

I would personally much prefer direct integration rather than go through mqtt broker. But good work nonetheless. Thanks!

That’s certainly nice work, but I have to say, a little over my head for setup.
I do have MQTT installed, but never did any integrations, so I would have no idea where to start to implement this.

Today I researched the bluetooth communication as an alternative of the web socket connection.

The bluetooth side communication is not that simple to reverse engineer… The bluetooth packets are encrypted with mCrypCipher using AES algorithm (from what I gather reading the unpacked source code from .apk). I can recommend @billchurch to look at the unpacked source code for the mqtt integration as it was a big help for understanding the bluetooth communication :slight_smile:

Message to B-Hyve==>Encrypt ==> Send
Receive==>Decrypt==>Message from B-Hyve

try {i = this.mCryptCipher.doFinal(updateIv(i)); for (int i2 = 0; i2 < bArr2.length; i2++) { bArr2[i2] = (byte) (bArr[i2] ^ i[i2]); }

where bArr2 is the message to send and i=mEncryptionCounter or i=mDecryptionCounter starts at 0 and corresponds to the sent/received message count. mCryptCipher is the cryptography class

1 Like