bwssytems / ha-bridge

Home automation bridge that emulates a Philips Hue light system and can control other systems such as a Vera, Harmony Hub, Nest, MiLight bulbs or any other system that has an http/https/tcp/udp interface. This is a compact impl to run on small format computers. This is impl started from this project https://github.com/armzilla/amazon-echo-ha-bridge.
Apache License 2.0
1.45k stars 199 forks source link

Cannot Link HA Bridge to Harmony Hub #1387

Closed hendryman closed 1 year ago

hendryman commented 1 year ago

Using the Harmony iPad app, I try to add my HA Bridge to my Harmony Hub as a "Philips Hue Bridge"

On the iPad app, the message is: Philips Hu Bridge detected in your network. Press the center button in the bridge to pair it with harmony hub.

I've tried every single option I've found here on the issue tracker, including:

I would be very thankful to for any lead on how to fix this as it drives me nuts : )

Error log attached.

Feb 25 09:32:06 raspberrypi java[31595]: 2023-02-25 09:32:06,601 [qtp5990440-35] ERROR spark.http.matching.GeneralError -
Feb 25 09:32:06 raspberrypi java[31595]: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:220)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.Gson.fromJson(Gson.java:879)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.Gson.fromJson(Gson.java:844)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.Gson.fromJson(Gson.java:793)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.Gson.fromJson(Gson.java:765)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.bwssystems.HABridge.plugins.hue.HueInfo.getHueDeviceInfo(HueInfo.java:136)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.bwssystems.HABridge.plugins.hue.HueHome.getHueDeviceInfo(HueHome.java:88)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.bwssystems.HABridge.hue.HueMulator.lightsListHandler(HueMulator.java:930)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.bwssystems.HABridge.hue.HueMulator.lambda$setupServer$23(HueMulator.java:304)
Feb 25 09:32:06 raspberrypi java[31595]:         at spark.ResponseTransformerRouteImpl$1.handle(ResponseTransformerRouteImpl.java:47)
Feb 25 09:32:06 raspberrypi java[31595]:         at spark.http.matching.Routes.execute(Routes.java:61)
Feb 25 09:32:06 raspberrypi java[31595]:         at spark.http.matching.MatcherFilter.doFilter(MatcherFilter.java:130)
Feb 25 09:32:06 raspberrypi java[31595]:         at spark.embeddedserver.jetty.JettyHandler.doHandle(JettyHandler.java:50)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1568)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.server.Server.handle(Server.java:530)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:347)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:256)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:102)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:247)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.produce(EatWhatYouKill.java:140)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:382)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:708)
Feb 25 09:32:06 raspberrypi java[31595]:         at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:626)
Feb 25 09:32:06 raspberrypi java[31595]:         at java.lang.Thread.run(Thread.java:745)
Feb 25 09:32:06 raspberrypi java[31595]: Caused by: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was BEGIN_ARRAY at line 1 column 2 path $
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.stream.JsonReader.beginObject(JsonReader.java:388)
Feb 25 09:32:06 raspberrypi java[31595]:         at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:209)
Feb 25 09:32:06 raspberrypi java[31595]:         ... 28 common frames omitted
guy1958 commented 1 year ago

Do you have the "Unique ID to use 9 Octets" box checked under the Bridge Control tab?

hendryman commented 1 year ago

@guy1958 : thanks for the tip, but trying it did not change things... any other ideas?

guy1958 commented 1 year ago

Does the bridge get discovered ok with Alexa (assuming you have Alexa)? It's mainly designed for use with Alexa and might not necessarily work with other systems that support Philips Hue.

hendryman commented 1 year ago

No, it doesn't get discovered by Alexa either.

guy1958 commented 1 year ago

Then try saving (renaming) your db file and start with a blank configuration. Add just a simple, single device and see if you can detect that. I do see some type of error message at the top of the log in your first post, but it's incomplete. It should start up cleanly to begin with.

hendryman commented 1 year ago

Deleting the db worked. Thank you very much for your kind support!