EspMilightHub new binding for milight limitlessLED and easybulb

It’s a good news!

I am using the latest version on OH3, ready to check out the new version right away when it’s ready!

OK its ready for people to test, documentation is below and be sure to read as this binding is very different.

To use you must have a broker setup in the mqtt binding, then if you move a control on a remote (can be a virtual control in the webpage of the hub) the inbox should auto detect and add the results.

Only works on openHAB V3

@Scotsman this is the latest readme.

Any feedback on the newer binding? Running out of time to get this merged before V3.0 stable release. Urgently need people testing it to make sure the first release is as bug free as possible. I have been running it for 2 weeks now and happy that it is a step up from the older code.

I apologize, at the moment I have no opportunity to test, I am away, as soon as I am there, I will definitely look at it!

Just upgraded to OH3. I put you new binding in the addons folder but it is not showing in the Bindings. Any ideas?

Please redownload the binding as I just uploaded a newer version that contains some changes from the review process in it. Not the cause of your issue, just good to use the latest version.

For any addon that you manually place into the addons folder, you wont see it in the installed list. You need to look for it in the list of bindings when you go to do a scan from the INBOX or press the + button from the things page. Also this binding is a little bit different to normal, it shows up as an extension of the MQTT binding. So to add or find things you need to select the MQTT binding and nothing will show up as espmilighthub anymore.

Let me know how you go and if the readme needs changing to help, I think your question is something that should be covered in the readme so thanks for raising it.

Can you make a screenshot? i upgraded to openhab 3. And all my Opensourcemilight hub items are UNINITIALIZED. I updated the jar to version 3.

I cant see the extension of the MQTT binding. This is all what i get.

Did you unzip and place the jar into the addons folder? Your screen shot shows you are on the right page but when installed you should see milight in there as well.

Thank you i found the problem. I use openhabian and i had to edit /etc/samba/smb.conf it whas still pointing to openhab2 folder. And it should be “openhab”

The OH3 version is working well. Thanks for all your efforts with this!

1 Like

I’m lost on this OH3 deal. In OH2 everything was working fine.

The top (commented) lines are the OH2 defaults, below those are the OH3 attemps. I did look at README, but found info seemed to conflict in a few places. Using text configuration, will not use GUI for this, shouldn’t have to really.

Bridge espmilighthub:esp8266Bridge:0x123A [ADDR="tcp://192.168.0.xxx:1883", HUB_IP="192.168.0.xxx", DEFAULT_COMMAND="set_white"] {
//    Thing rgbw 0x123A0 "All Lights" @ "RaSTuS' Home"
//Thing mqtt:rgbw:0x123A0 "All Lights" (mqtt:broker:mosquitto) @ "RaSTuS' Home"

//    Thing rgbw 0x123A1 "Lamp" @ "Bedroom"
//Thing espmilighthub:rgbw:0x123A1 "Lamp" (mqtt:broker:mosquitto) @ "Bedroom"
Thing mqtt:rgbw:0x123A1 "Lamp" @ "Bedroom"

//    Thing rgbw 0x123A2 "Bedroom Light" @ "Bedroom"
//Thing espmilighthub:rgbw:0x123A2 "Bedroom Light" (mqtt:broker:mosquitto) @ "Bedroom"

//    Thing rgbw 0x123A3 "Lounge Light" @ "Lounge"
//Thing espmilighthub:rgbw:0x123A3 "Lounge Light" (mqtt:broker:mosquitto) @ "Lounge"

//    Thing rgbw 0x123A4 "Bathroom Light" @ "Bathroom"
//Thing espmilighthub:rgbw:0x123A4 "Bathroom Light" (mqtt:broker:mosquitto) @ "Bathroom"
}

I just need to know how to format the ‘Bridge’ (if changed) and one ‘Thing’, I should be able to sort it out from there.

Also do we only need the binding in the addons folder or do we also need the mqtt binding that OH2 required?

Please see the readme which has a tested example to follow. This was why I wanted to do the binding at V3 launch as it is a completely different binding now on how it is setup.

I also recommend doing it by auto discovery as any widgets that come out for the UI will assume you have done it that way and will simply work. For those that do textual config u will need to either edit your naming structure to suit or Re edit the widget.

I read that thoroughly several times already, it not very clear, it says one thing under “Important for Textual Configuration” and something different under “Full Example”.

I won’t be using any widgets, can’t stand those dashboard type displays, I’m sticking with BasicUI and manual text configuration. Might just go back to 2.5.x, at least that worked.

Thanks for feedback, I have reworked the readme and double checked the full example works which it did PLUS I added the textual way to add a broker in case you had not done that in another file. If anything is confusing please give which part is an issue and I will update it to help others.

1 Like

Thanks Matt, will look shortly and let you know how it goes.

OK Matt, it’s kind of working, I’ll note what’s not in the relevant entries.

The ‘things’ are working but I get these errors in the logfile (repeated once for each thing):

[INFO ] [el.core.internal.ModelRepositoryImpl] - Validation issues found in configuration model 'default.things', using it anyway:
Provide a thing type ID and a thing ID in this format:
 <thingTypeId> <thingId>

Things file:

Bridge mqtt:broker:0x123A "Milight LEDs" [ host="192.168.0.xxx", port=1883, secure=false, username="", password="", qos=1] {
        Thing mqtt:rgbw:0x123A0 "All Milight Lights" (mqtt:broker:0x123A) @ "Home"
        Thing mqtt:rgbw:0x123A1 "Milight Bedroom Lamp" (mqtt:broker:0x123A) @ "Bedroom"
        Thing mqtt:rgbw:0x123A2 "Milight Bedroom Light" (mqtt:broker:0x123A) @ "Bedroom"
        Thing mqtt:rgbw:0x123A3 "Milight Lounge Light" (mqtt:broker:0x123A) @ "Lounge"
        Thing mqtt:rgbw:0x123A4 "Milight Bathroom Light" (mqtt:broker:0x123A) @ "Bathroom"
}

Items File (1 entry only):

        /* Bedroom Lamp */
Switch Bedroom_LampSw           "Bedroom Lamp Switch - On/Off [%s]"                     (Bedroom,Lights)        ["Switchable"]  {channel="mqtt:rgbw:0x123A1:level"}
Dimmer Bedroom_LampLD           "Bedroom Lamp Brightness [%s]"          <slider>        (Bedroom,Lights)        ["Lighting"]    {channel="mqtt:rgbw:0x123A1:level"}
Color Bedroom_LampCM            "Bedroom Lamp Colour [%s]"                              (Bedroom,Lights)        ["Lighting"]    {channel="mqtt:rgbw:0x123A1:colour"}
String Bedroom_Lamp_Cmd         "Bedroom Lamp Command"                                  (Bedroom,Lights)                        {channel="mqtt:rgbw:0x123A1:command"}
String Bedroom_LampCBM          "Bedroom Lamp Current Bulb Mode [%s]"                   (Bedroom,Lights)        ["Lighting"]    {channel="mqtt:rgbw:0x123A1:bulbMode"}
Number Bedroom_LampDM           "Bedroom Lamp Disco Mode [%d]"                          (Bedroom,Lights)        ["Lighting"]    {channel="mqtt:rgbw:0x123A1:discoMode"}

2 problems, 1/ bulbMode doesn’t show any value, 2/ changing discoMode doesn’t do anything.

Sitemap File (1 entry only)

                Frame label="Bedroom Lamp" icon="light" {
                        Switch          item=Bedroom_LampSw
                        Slider          item=Bedroom_LampLD
                        Colorpicker     item=Bedroom_LampCM
                        Selection       item=Bedroom_Lamp_Cmd mappings=[favourite_white='favourite_white', set_white='set_white',night_mode='night_mode', level_up='level_up', level_down='leve
                        Setpoint        item=Bedroom_LampDM minValue=0 maxValue=8 step=1
                        Text            item=Bedroom_LampCBM
                }

The warning can be fixed by correcting your Thing syntax from

Thing mqtt:rgbw:0x123A0

to

Thing rgbw 0x123A0

And removing (mqtt:broker:0x123A) from each of them, because you’ve already got them defined within the Broker Thing.

(At least that’s what’s required for ‘normal’ MQTT setup)

1 Like

I’ll try that, just going off the Readme, thanks.

Sure no problem - I also found it confusing at first. This link was most helpful to me:

I have many mqtt things defined already and they all function correctly, that’s why I questioned this approach.

I made the changes you mentioned, no errors now, but none of the lights work any longer.