Color changing bulbs?

Thanks, the trick will be finding the ones that work with the Ezlo hub. (I’m in the US).

Hi @robotman ,

we have a website ezlo.com
you can visit there and get information about compatible devices for Ezlo controllers.
We even have search on the page so you can write “bulb” and see which bulbs you can pair and use with Ezlo controllers.
we also have a youtube channel https://www.youtube.com/@veratraining
thee you also can use search and find how-to videos on pairing lights like;
*https://www.youtube.com/watch?v=4AwuVLw7trs
*https://www.youtube.com/watch?v=THN7nmD9rRE
*https://www.youtube.com/watch?v=4X-NPJ2jU8g

Thank you. Pairing is not a problem (I’ve paired hundreds of devices with my hub). What I’m trying to find out is what LED color changing bulbs and/or strips are supported natively by the Ezlo hub. Which also suggests I can control them via the API (which is my ultimate goal).

I searched for RGB ( no results).
I searched for Color (and got " Ezlo PlugHub v2") which is odd as color is not mentioned anywhere on the page.

Thank you

I did the same search and can see results. Are you sure you are visiting https://www.ezlo.com/device-compatibility/


That’s fantastic, thank you for the list. Do you have the URL where you searched? Clearly I was searching in the wrong place.

https://www.ezlo.com/device-compatibility/

Thanks! That’s exactly what I was looking for.

In case others are looking, I did a check on what seems to be available to purchase (based on that list).

LED Strips:

Aeotec LED Strip not available
Oomi Color Strip not available
GIDERWEL USB Strip Light RGBWW is available (Amazon)
Sengled Smart Led Strip Lights 16.4ft is available (Amazon)
Philips Hue Play Gradient LightStrip is available (Amazon)

A19 Bulbs:
innr Smart Bulb Color A19 is available (Amazon)
Sylvania Color and Dimmable A19 LED Bulb is available (Amazon)

Just found an old thread where I was trying to control the colour of an RGB bulb paired to the Ezlo controller via their HTTP Server API.

It looks like I got it working but only by using POST rather than a more simple GET command.

1 Like

Excellent, thank you. I’m using Websockets so I think this will work fine. (I’ve ordered some bulbs to test with).

Yeah Patrick used the web sockets API for Multi System Reactor integration with Ezlo hubs. I can control colours via MSR.

Web sockets above my pay grade though ha.

On a related note, I am attempting to use the API tool (Ezlo API Tool) to send test colors to a bulb.

I’m using the command “hub.item.value.set”.

I assume I send a JSON string (value field) such as ‘{“red”:183, “green”:100, “blue”:234, “cwhite”:0, “wwhite”:0}’ to set the RGB colors.

However, no matter how I format the JSON string, I keep receiving an error: “Unexpected Json format for value type ‘rgb’: …”:

How do I sent a correctly formatted string using the API tool?

‘{“red”:183, “green”:100, “blue”:234, “cwhite”:0, “wwhite”:0}’ does not work
{“red”:183, “green”:100, “blue”:234, “cwhite”:0, “wwhite”:0} nor does this
“{"red":183, "green":100, "blue":234, "cwhite":0, "wwhite":0}” nor does this
Escaping the quotes does not seem to work either.

(Also, what are the cwhite, and wwhite fields?)

Thanks.

Check the documentation on api.ezlo.com:

hub.item.value.set is documented at API - Ezlo API Documentation

the RGB json documentation is mentioned here: Value Types - Ezlo API Documentation

You’ll have to combine the set, so you’ll probably end up with something like this:

        "method": "hub.item.value.set",
        "id": "<request_id>",
        "params": {
            "items":{
                "<uid of bulb>": {
                    "value": {
                        "wwhite":10,
                        "cwhite":10,
                        "red":10.
                        "green":10,
                        "blue":10,
                        "amber":10,
                        "cyan":10,
                        "purple":10,
                        "indexed":10
                    }
                }    
            }
        }
    }

Thanks - I’ve looked at those (appreciate the links), but my question is How do I send a correctly formatted string using the API tool? so I can test…

(Nothing in the documentation that I can find, shows how to send a JSON string via the API tool - perhaps I’m missing something?)

I think you have to literally use the mentioned json (except I missed the first {). This should work if you enter the right device id:

{
        "method": "hub.item.value.set",
        "id": "12345",
        "params": {
            "items":{
                "<uid of bulb>": {
                    "value": {
                        "wwhite":10,
                        "cwhite":10,
                        "red":10.
                        "green":10,
                        "blue":10,
                        "amber":10,
                        "cyan":10,
                        "purple":10,
                        "indexed":10
                    }
                }    
            }
        }
    }

oh, and maybe only enter the color which are valid for your bulb.

Thanks - it’s not the API I’m referring to, but rather the web-based API Tool (Ezlo API Tool). I use it to test the API calls before I code them and use the web sockets API.

The web tool only has a single line where you can enter a value string. So essentially, I need to paste in only:

{
“wwhite”:10,
“cwhite”:10,
“red”:10.
“green”:10,
“blue”:10
}

in a single line field.

I think you might have been suggesting to use the “Custom” command in the API tool? If so, instead of hub.item.value.set, select custom and paste in the raw JSON.

This works to set the bulb color:

{
“method”: “hub.item.value.set”,
“id”: “ID”,
“params”: {
“_id”: “63e6b977077e901241ff6392”,
“value”: {“red”:183,“green”:10,“blue”:234,“cwhite”:0,“wwhite”:0}
}
}

It doesn’t address how to enter a JSON string in the value field, but it’s a workaround for testing.

Thanks.

The web-based API tool is pretty weird here. The json format depends on the device type, but the UI doesn’t let you select a type. Still, the type is inferred, as the error you show says 'Unexpected Json format for value type ‘rgb’. I can better understand why you’re raising the question in the first place.

The only think I can think of is trying the value.set api on a normal on/off light, by using a boolean value. Maybe if you can get that simple input work, you can work out the right string for rgb.

Thanks. I’ve tried every permutation I can think of. I’ve “stringified” the JSON string, added escaped quotes, etc., etc., Nothing seems to work.

The other value types (int, boolean. etc.) all work as expected and I can use those to easily turn devices on / off, etc.

Fortunately the Custom command exists. I’ll use it for now.