[RELEASE] HubConnect - Share Devices across Multiple Hubs (no longer SmartThings!)

WRT the grid, incoming is working, but outgoing is not. Grid only shows red.

You do great work. Enjoy the holidays and forget this for now. Merry Christmas!

1 Like

Set up my 3rd hub today on the first floor, but it's connected to an old Linksys running DD-WRT as an unwired repeater bridge. Soooo we'll see how it performs with the lan stuff. :crossed_fingers:

1 Like

Santa brought me a Netatmo weather station for Christmas. I’ll see how the integration with HE works and see if I can whip something up.

1 Like

Nice... :slight_smile:

1 Like

Hey Shackrat,

I'm using my secondary hub for Sonos integration and then using the speakers on my main hub via HubConnect. I started out by using the SpeechSynthesis driver for my speakers but then switched to the new Speaker driver you created. Commands like play text and restore and play text and resume are not working on the remote hub with your new driver...

All the other commands appear to work fine...

Here are the logs...

dev:24722019-12-26 11:51:03.208 errorgroovy.lang.MissingMethodException: No signature of method: user_driver_shackrat_HubConnect_Speaker_1185.playTextAndResume() is applicable for argument types: (java.lang.String) values: [this is a test]
Possible solutions: playTextAndResume(java.lang.String, java.lang.Integer), playTextAndRestore(java.lang.String, java.lang.Integer), playTrackAndResume(java.lang.String, java.lang.Integer) (playTextAndResume)

dev:24722019-12-26 11:50:45.650 errorgroovy.lang.MissingMethodException: No signature of method: user_driver_shackrat_HubConnect_Speaker_1185.playTextAndRestore() is applicable for argument types: (java.lang.String) values: [this is a test]
Possible solutions: playTextAndRestore(java.lang.String, java.lang.Integer), playTextAndResume(java.lang.String, java.lang.Integer), playTrackAndRestore(java.lang.String, java.lang.Integer) (playTextAndRestore)

Just using the play text command does seem to restore audio just fine, so these might not be needed...

More of an FYI now as I'm just using the play text command...

Managed to get the entire basement and half of the first floor set up on the 1st floor hub (3rd) today. Whew, what a whirlwind of torrential puzzlement! Did a LOT of rewriting rules and moving stuff around.

I'm still sticking with the "one hub per floor" goal, but it does get a bit complicated when considering Hue and LIFX, because the Hue Bridge is on the 2nd floor, and the LIFX uses the router, which is also on the 2nd floor. My 1st floor hub is connected to a wireless repeater bridge, so those LIFX commands still have to pass through a potentially flaky connection, and the 1st floor Hue bulbs still have to bounce commands to the 2nd floor and back. So the question becomes whether to use a mirrored device, or a local device. All of this makes the "one hub per floor" scenario not quite as cut and dry as intended. I've had zero problems so far though, and it's very nice to be able to navigate the hub UIs with speed again now that they can breath.

My 3rd Controller hub mirrors most of the devices from hub 1 and hub 2. It has the "All Lights" group, and a couple other big groups. It manages mode changes, presence-based changes, weather, thermostat, notifications, chromecast, google home, and other overarching "house-wide" stuff. I've kept the motion/contact type rules on the hub where their associated devices are, and it's all lightning-fast again.

2 Likes

Congratulations on a successful deployment!

The Hue bridge is an obvious exception to the one hub per floor rule, but unless you live in a large house, it’s unlikely that most will exceed the 50 device per hub limit. You can connect a Hue hub to a couple Hubitat hubs without any performance issue and still keep those automations as local as possible (LAN connection not withstanding).

This is a good strategy as it limits the failures that can offer if a hub crashes and is exactly what I’ve done. However, when using websockets over http, the lag between the physical and virtual device is barely noticeable.

3 Likes

@srwhite @csteele

I need some help, I upgraded per the instructions from 1.5.0 to 1.6.3 and everything works, but I got this 2 errors in the server when I try to use the device report

app130 is ST hub
app121 is HE hub

Not sure if I have to choose something somewhere else.

Thanks.

I'm discovering this this morning these errors, where app278 is my upstairs Remote Hub:

Are you using hub logins? If so the report will not run at this time... that functionality hasn’t been developed yet.

Your Hub’s database is corrupt.. This is a known issue that seems to be affecting many hubs, whether they use HubConnect or not. I would reboot it so it can repair itself. If that doesn’t work you may need to restore from a recent backup.

1 Like

:+1:

Sql exceptions on base values like "name" and "device_id" pretty much always means database corruption.

2 Likes

Yes, I do. Thanks for the quick reply.

1 Like

@srwhite Any thought on the new report only showing incoming? Thanks!

Yikes. Here's hoping the reboots fix it. The contents of my most recent backups are enshrouded in mystery. :rofl:

2 Likes

Two things:

  1. When connecting to a smartthings hub with the latest version, the devices that I have configured are syncing correctly however the hubitat server does not show any linked hubs (either on the app listing or in the app itself). Is that a change that I missed in the new version?

  2. On smartthings I have a few Ikea buttons connected (show as using the Ikea Button driver). In other applications those show as buttons however w/ the HubConnect app, it shows that there is no button devices. When going under "Custom" section, I simply see a white page as well.

Still scanning through posts in case I missed something but wanted to point these out.
Thanks

The SmartThings Remote Client app was updated 2days ago for "the latest" (aka v1.6.3) and some of the SmartThings drivers changed ... some for v1.5 (including Button) and some for v1.6 (energy)

Github will tell you how many days ago every bit of code was changed.. I know when "Steve springs a new release on me" that's the first column I look at :smiley:

1 Like

Anyone know anything about this error coming from the hub driver on the server when running the device report? Everything has been updated (imported again for good measure).

errorgroovy.lang.MissingMethodException: No signature of method: user_app_shackrat_HubConnect_Server_Instance_71.getSelectedDeviceIds() is applicable for argument types: () values: [] on line 191 (getSelectedDeviceIds)

app:1072019-12-27 04:03:55.072 pmerrorgroovy.lang.MissingMethodException: No signature of method: user_app_shackrat_HubConnect_Server_Instance_71.getSelectedDeviceIds() is applicable for argument types: () values: [] on line 191 (getSelectedDeviceIds)

app:1062019-12-27 04:03:54.969 pmerrorgroovy.lang.MissingMethodException: No signature of method: user_app_shackrat_HubConnect_Server_Instance_71.getSelectedDeviceIds() is applicable for argument types: () values: [] on line 191 (getSelectedDeviceIds)

app:1032019-12-27 04:03:54.874 pmerrorgroovy.lang.MissingMethodException: No signature of method: user_app_shackrat_HubConnect_Server_Instance_71.getSelectedDeviceIds() is applicable for argument types: () values: [] on line 191 (getSelectedDeviceIds)

app:1042019-12-27 04:03:54.628 pmerrorgroovy.lang.MissingMethodException: No signature of method: user_app_shackrat_HubConnect_Server_Instance_71.getSelectedDeviceIds() is applicable for argument types: () values: [] on line 191 (getSelectedDeviceIds)

isn't that the same as @vjv asked yesterday?

@csteele No. I am not using hub security.

May be a similar issue, but it has a different root cause. Any ideas?

The report kind of runs. It only shows inbound. I assume this error is for the outbound???

Looks like I'm the first to have a Heiman Gas Sensor. @srwhite, not much to it: the native HE driver has a single attribute for gas, along with a config.