How does HUE Emulation work?

I am struggling to get the Hue Emulation to work. First of all, my understanding from the documentation is that this emulates a Philips Hue bridge. I assume from that that I could use apps that communicate to a bridge with Hue Emulation. With that said, my setup is as follows

  • openhab2 on a Raspberry Pi
  • a TI CC2531 Zigbee controller
  • one Philips Hue lamp

The zigbee controller and lamp are setup and I can control the lamp from the PaperUI Control page.

I have Hue Emulation installed, and I have set Discovery to TRUE. I also have, using the REST API, tagged my lamp Item as Lighting. From Windows Network Explorer, I can see the emulator showing up:

I was expecting to see the emulator appear as a Thing, but I only can find it on the Services page. Philips Hue apps on my phone are unable to find the emulator.

What am I missing in getting this to work?

Thanks

Anthony

Do you mean the official Philips Hue App ? Cause I think this is not working.
Try a different APP or Alexa.

I asked this same question a couple of years ago…as I wanted to try out a few HUE lights…the binding just allows for the conversation to happen…for the actual control you need a HUE bridge to send out the ZIGBEE commands.

digitaldanDan CunninghamMaintainer

Yep you need a hub, hue lights are zigbee, so the hub is the zigbee controller, all hue emulation does it pretend to be a hub to third party integrations, it emulates the API, and converts commands to the OH api. In order to not use the hub you would need to purchase a zigbee modem and use Chris’s zigbee binding, which is still in a alpha state I believe.

I don’t get it. I can control my Hue light from OH without a hub, through the Zigbee binding. I have that working fine. What’s the purpose of an emulator if you can’t control the lights?

I have tried different apps, and they can’t find the emulated hub. The log shows that the service is started at /api

Right - because you have a ZIGBEE stick and binding which is how the HUE hub communicates with the lights.

I don’t think the binding will truly emulate the HUB. I believe that most use it so we can control non-hue devices as HUE devices through services like Alexa and Google Home.

@digitaldan can correct me if I’m wrong.

From the doc’s…

openHAB Hue Emulation Service

Hue Emulation exposes openHAB items as Hue devices to other Hue HTTP API compatible applications like an Amazon Echo.

#Features:

  • UPNP automatic discovery
  • Support ON/OFF and Percent/Decimal item types
  • Can expose any type of item, not just lights
  • Pairing (security) can be enabled/disabled in real time using the configuration service (under services in the PaperUI for example)

So do the Hue devices show up on Hue-compatible apps? The docs do say any type of light, so I would have thought that the light I have would show up. Note, I do not have a HUE hub!!

I did try installing the Hue binding. That finds the Hue emulator and installs it as thing. I set the emulator to run on a different IP address, but still get an error:

2018-10-30 11:39:31.714 [INFO ] [binding.hue.handler.HueBridgeHandler] - Creating new user on Hue bridge 10.10.10.66 - please press the pairing button on the bridge.

==> /var/log/openhab2/events.log <==
2018-10-30 11:39:31.798 [hingStatusInfoChangedEvent] - ‘hue:bridge:0017880ae670’ changed from INITIALIZING to OFFLINE (CONFIGURATION_ERROR): Failed to create new user on hue bridge.

==> /var/log/openhab2/openhab.log <==
2018-10-30 11:39:31.909 [WARN ] [binding.hue.handler.HueBridgeHandler] - Failed creating new user on Hue bridge
java.net.ConnectException: Connection refused (Connection refused)
at java.net.PlainSocketImpl.socketConnect(Native Method) ~[?:?]
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) [?:?]

Seems odd it’s a connection refused error. Would be neat to get this working and have more UIs for color lighting

My devices show up within Alexa which is the main use of the Emulation binding for me. I have 50+ items that can be voice controlled as HUE items.

I’ve never used any other HUE applications to control these devices.

May want to check your firewall on the PC to make sure it’s not blocking the ports

The purpose is to expose your non-hue devices as if they were hue devices. For example I have some wifi outlets configured with the Hue emulator. This allows the Amazon echo to think they are Hue lights, and I can use Alexa to turn on and off the lights. I would assume other apps/products that can interact with a Hue hub could also then interact with Openhab.

ok. I’ll see if I can get an Echo to see the emulator. On your system, does the emulator show up as a Thing, or is it just a service?

It’s just a service.

Make sure you tag your items correctly.

You don’t will need a ECHO for this.
I think it’s a problem of your Firewall or your configuration.

Can you post your item configuration ?

For me hte Hue Emulation is working with Alexa, a Logitech Harmony Hub and some Android Apps (i didn’t know the name of them cause i don’t use them anymore)

I just have one bulb and two items, which can be controlled from the PaperUI. The item definition is:

[
  {
    "link": "http://openhabianpi:8080/rest/items/PhilipsLCT011_Color",
    "state": "0,0,100",
    "editable": true,
    "type": "Color",
    "name": "PhilipsLCT011_Color",
    "label": "Lamp1-Color",
    "category": "ColorLight",
    "tags": [
      "Lighting",
      "Switchable"
    ],
    "groupNames": []
  },
  {
    "link": "http://openhabianpi:8080/rest/items/PhilipsLCT011_ColorTemperature",
    "state": "NULL",
    "editable": true,
    "type": "Dimmer",
    "name": "PhilipsLCT011_ColorTemperature",
    "label": "Lamp1-Temperature",
    "category": "ColorLight",
    "tags": [
      "Lighting",
      "Switchable"
    ],
    "groupNames": []
  }
]

I actually got something working, but haven’t had time yet to play around with it to refine it. I quickly tried the Android app “Hue Switcher” and I was able to connect using the IP address. Here’s what I did:

I got around the “failed to create user” problem by putting a username file in the /var/lib/openhab2/hueemulation folder. That just contains a username. My initial attempt here didn’t work, then I saw in the log an access denied error, so I just did chmod o+w on it.

I configured hueemulation on port 80, as described in https://github.com/openhab/openhab2-addons/issues/2881#issuecomment-359928609 and port forwarded 80 to 8080.

Using Hue Switcher on Android, I can turn the lamp on and off. Lamp1-Color and Lamp1-Temperature appear in the app and can be controlled for birghtness and temperature, but not color.

Any ideas? I will try another app and see what happens

Anthony

Can you do multiple tags on an item???

The REST api allowed it. I’m not quite sure what tags I should be using, so I just tried these. “Switchable” seems self-explanatory, not sure what “Lighting” means. And the Philips bulb has a dimmer, which controls the light level and the on/off, so I tried both!

There are 3 types of tags…

SWITCHABLE - is just on/off
LIGHTING - allows for on/off and dimming.

I removed Switchable from both and the behavior is the same.

My next angle of attack is to figure out how the pairing is taken care of in hueemulation. If I can fake that out, I think more apps will work.

Did you get the “ColorLighting” tag to work?

I think there are only Lighting and Switchable tags. I didn’t try anything else.

Hi All

I was also under the impression you could control the hue bulbs using the Philips Hue Binding and openHAB Hue Emulation Service.

can someone please confirm you definitely need the hardware hue bridge?

Thanks
Mike

I thought that too. The Hue Emulation is pretty limited, and it doesn’t alleviate the need for the bridge.