New Lutron Caseta Pro and Node Red

So the new version of HA now sees my pro hub (woot!!!), currently I use HACS modified one so I can use/expose my picos to do other things with them. However in Node Red I dont see any way to expose a device for trigger on entities, and HA lists the picos as devices and I could build automations in HA but I have a lot of it already setup in node red and would rather keep it there if possible. Any ideas?

1 Like

Same question from me! Have you made any progress on this? Naturally, I switched all node references to Caseta lights/switches before realizing that updating pico nodes isn’t obvious.

I have, with node red you want to look at all events and then filter by lutron_caseta_button_event and then create some switches to filter out by serial number (each pico has its own).

Thank you for the response! I figured this out as well right before going to bed last night. This is a little unfortunate, I think it may be easier to deal with most pico remotes in HA instead of node-red.

I’m going to export my pico control and such so people can easily import into NR, they would just need to get their serial numbers and edit the switches for that.

[
    {
        "id": "37667fb1.df675",
        "type": "tab",
        "label": "Flow 1",
        "disabled": false,
        "info": ""
    },
    {
        "id": "c9ae11a0.3b594",
        "type": "comment",
        "z": "37667fb1.df675",
        "name": "Pico Controls",
        "info": "",
        "x": 90,
        "y": 80,
        "wires": []
    },
    {
        "id": "8d967ed.1a13e8",
        "type": "server-events",
        "z": "37667fb1.df675",
        "name": "Pico Only",
        "server": "8f3bff2.2affc",
        "event_type": "lutron_caseta_button_event",
        "exposeToHomeAssistant": false,
        "haConfig": [
            {
                "property": "name",
                "value": ""
            },
            {
                "property": "icon",
                "value": ""
            }
        ],
        "waitForRunning": true,
        "x": 80,
        "y": 320,
        "wires": [
            [
                "1d8b0419.259cdc"
            ]
        ]
    },
    {
        "id": "f565f268.30634",
        "type": "switch",
        "z": "37667fb1.df675",
        "name": "Pico Serial",
        "property": "payload.event.serial",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "30619592",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "30817286",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "30488392",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "30617802",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 4,
        "x": 350,
        "y": 320,
        "wires": [
            [
                "870a01ca.17af6"
            ],
            [
                "f29ec2d0.4c75c"
            ],
            [],
            []
        ]
    },
    {
        "id": "96a09ed6.a24ac",
        "type": "debug",
        "z": "37667fb1.df675",
        "name": "",
        "active": true,
        "tosidebar": true,
        "console": false,
        "tostatus": false,
        "complete": "false",
        "statusVal": "",
        "statusType": "auto",
        "x": 150,
        "y": 220,
        "wires": []
    },
    {
        "id": "870a01ca.17af6",
        "type": "switch",
        "z": "37667fb1.df675",
        "name": "Pico 1 Awning",
        "property": "payload.event.button_number",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "2",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "4",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "5",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "6",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 4,
        "x": 540,
        "y": 120,
        "wires": [
            [],
            [],
            [],
            []
        ]
    },
    {
        "id": "1d8b0419.259cdc",
        "type": "switch",
        "z": "37667fb1.df675",
        "name": "Press Only",
        "property": "payload.event.action",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "press",
                "vt": "str"
            }
        ],
        "checkall": "false",
        "repair": false,
        "outputs": 1,
        "x": 210,
        "y": 320,
        "wires": [
            [
                "f565f268.30634",
                "96a09ed6.a24ac"
            ]
        ]
    },
    {
        "id": "f29ec2d0.4c75c",
        "type": "switch",
        "z": "37667fb1.df675",
        "name": "Pico 2 (JR's Room)",
        "property": "payload.event.button_number",
        "propertyType": "msg",
        "rules": [
            {
                "t": "eq",
                "v": "2",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "3",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "4",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "5",
                "vt": "str"
            },
            {
                "t": "eq",
                "v": "6",
                "vt": "str"
            }
        ],
        "checkall": "true",
        "repair": false,
        "outputs": 5,
        "x": 550,
        "y": 260,
        "wires": [
            [],
            [],
            [],
            [],
            []
        ]
    },
    {
        "id": "8f3bff2.2affc",
        "type": "server",
        "name": "Home Assistant"
    }
]
1 Like

Adding this node configuration in case it’s helpful for someone looking to have button clicked and held (can also do double clicked and double held). This is using the node-red-contrib-button-events node, which I add for any button that I want a separate button hold action.

[
    {
        "id": "215128b2.154a18",
        "type": "button-events",
        "z": "720495e.49e6a6c",
        "name": "Top button",
        "outputs": 2,
        "inputField": "payload.event.action",
        "inputFieldType": "msg",
        "outputField": "payload",
        "outputFieldType": "msg",
        "downValue": "press",
        "downValueType": "str",
        "upValue": "release",
        "upValueType": "str",
        "idleValue": "1",
        "clickedInterval": 200,
        "pressedInterval": "750",
        "debounceInterval": 30,
        "events": [
            {
                "type": "clicked"
            },
            {
                "type": "pressed"
            }
        ],
        "x": 890,
        "y": 120,
        "wires": [
            [
                "cc581a34.8a3e48"
            ],
            [
                "af0ab59f.e4a0f8"
            ]
        ]
    }
]
1 Like