- 
      
 - 
        
Save smartqasa/9814a750a0d0cfb196fa1fa7ae3630bb to your computer and use it in GitHub Desktop.  
| blueprint: | |
| domain: automation | |
| source_url: https://gist.github.com/smartqasa/9814a750a0d0cfb196fa1fa7ae3630bb | |
| name: Lutron Pico 5 Button - Light Entity Control | |
| description: >- | |
| Control one or more lights using a Lutron Pico 5-Button remote (model PJ2-3BRL-GXX-X01). | |
| This blueprint simulates a standard Lutron Caseta wall dimmer, including press-and-hold | |
| dimming for the raise/lower buttons. Customize brightness step size, transition speed, | |
| and optionally assign any action to the middle (favorite) button. | |
| input: | |
| pico: | |
| name: Pico Device | |
| description: "The Pico remote device to associate with light entity(ies)." | |
| selector: | |
| device: | |
| filter: | |
| model: PJ2-3BRL-GXX-X01 (Pico3ButtonRaiseLower) | |
| entity: | |
| name: Light Entity(ies) | |
| description: "The light entity or entities to be controlled." | |
| selector: | |
| entity: | |
| filter: | |
| domain: light | |
| multiple: true | |
| step: | |
| name: Brightness Step Percentage | |
| description: "The percentage to increase/decrease the brightness when the raise/lower button is pressed." | |
| default: 10 | |
| selector: | |
| number: | |
| min: 1 | |
| max: 25 | |
| unit_of_measurement: percent | |
| hold: | |
| name: Hold Time | |
| description: "The time in milliseconds to hold the raise/lower button before the light starts dimming. A button press of less than this time will brighten/dim the light by the step percentage." | |
| default: 400 | |
| selector: | |
| number: | |
| min: 100 | |
| max: 1000 | |
| unit_of_measurement: milliseconds | |
| transition_on: | |
| name: Transition On | |
| description: The transition speed in seconds when turning the light(s) on. | |
| default: 1 | |
| selector: | |
| number: | |
| min: 0 | |
| max: 10 | |
| unit_of_measurement: seconds | |
| transition_off: | |
| name: Transition Off | |
| description: The transition speed in seconds when turning the light(s) off. | |
| default: 2 | |
| selector: | |
| number: | |
| min: 0 | |
| max: 10 | |
| unit_of_measurement: seconds | |
| middle_button_action: | |
| name: Middle (Favorite) Button Override | |
| description: "Optional actions to run when the middle (favorite) button is pressed. If left blank, the light will be set to 80% brightness and 2800K color temperature." | |
| selector: | |
| action: {} | |
| default: | |
| variables: | |
| step: !input step | |
| hold: !input hold | |
| hold_time: "{{ hold / 1000 }}" | |
| middle_button_action: !input middle_button_action | |
| trigger: | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: press | |
| subtype: "on" | |
| id: on_pressed | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: press | |
| subtype: raise | |
| id: raise_pressed | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: press | |
| subtype: stop | |
| id: stop_pressed | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: press | |
| subtype: lower | |
| id: lower_pressed | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: press | |
| subtype: "off" | |
| id: off_pressed | |
| action: | |
| - choose: | |
| - conditions: | |
| - condition: trigger | |
| id: on_pressed | |
| sequence: | |
| - action: light.turn_on | |
| data: | |
| brightness_pct: 100 | |
| transition: !input transition_on | |
| target: | |
| entity_id: !input entity | |
| - conditions: | |
| - condition: trigger | |
| id: raise_pressed | |
| sequence: | |
| - repeat: | |
| sequence: | |
| - action: light.turn_on | |
| data: | |
| brightness_step_pct: "{{ step }}" | |
| target: | |
| entity_id: !input entity | |
| continue_on_error: true | |
| - wait_for_trigger: | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: release | |
| subtype: raise | |
| timeout: | |
| seconds: "{{ hold_time }}" | |
| continue_on_timeout: true | |
| - if: | |
| - "{{ wait.remaining > 0 }}" | |
| then: | |
| - stop: | |
| until: | |
| - condition: numeric_state | |
| entity_id: !input entity | |
| attribute: brightness | |
| above: 254 | |
| - conditions: | |
| - condition: trigger | |
| id: stop_pressed | |
| sequence: | |
| - if: >- | |
| {{ | |
| middle_button_action is defined and | |
| middle_button_action is sequence and | |
| middle_button_action | length > 0 | |
| }} | |
| then: | |
| - sequence: !input middle_button_action | |
| else: | |
| - action: light.turn_on | |
| target: | |
| entity_id: !input entity | |
| data: | |
| brightness_pct: 80 | |
| kelvin: 2800 | |
| - conditions: | |
| - condition: trigger | |
| id: lower_pressed | |
| sequence: | |
| - repeat: | |
| sequence: | |
| - action: light.turn_on | |
| data: | |
| brightness_step_pct: "{{ step * -1 }}" | |
| target: | |
| entity_id: !input entity | |
| continue_on_error: true | |
| - wait_for_trigger: | |
| - trigger: device | |
| device_id: !input pico | |
| domain: lutron_caseta | |
| type: release | |
| subtype: lower | |
| timeout: | |
| seconds: "{{ hold_time }}" | |
| continue_on_timeout: true | |
| - if: | |
| - "{{ wait.remaining > 0 }}" | |
| then: | |
| - stop: | |
| until: | |
| - condition: numeric_state | |
| entity_id: !input entity | |
| attribute: brightness | |
| below: 1 | |
| - conditions: | |
| - condition: trigger | |
| id: off_pressed | |
| sequence: | |
| - action: light.turn_off | |
| data: | |
| transition: !input transition_off | |
| target: | |
| entity_id: !input entity | |
| mode: restart | 
[{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 70,
"startColumn": 9,
"endLineNumber": 70,
"endColumn": 21
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 71,
"startColumn": 9,
"endLineNumber": 71,
"endColumn": 21
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 73,
"startColumn": 25,
"endLineNumber": 73,
"endColumn": 53
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 77,
"startColumn": 16,
"endLineNumber": 77,
"endColumn": 28
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 83,
"startColumn": 16,
"endLineNumber": 83,
"endColumn": 28
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 89,
"startColumn": 16,
"endLineNumber": 89,
"endColumn": 28
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 95,
"startColumn": 16,
"endLineNumber": 95,
"endColumn": 28
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 101,
"startColumn": 16,
"endLineNumber": 101,
"endColumn": 28
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 116,
"startColumn": 27,
"endLineNumber": 116,
"endColumn": 48
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 118,
"startColumn": 26,
"endLineNumber": 118,
"endColumn": 40
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 129,
"startColumn": 32,
"endLineNumber": 129,
"endColumn": 46
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 133,
"startColumn": 34,
"endLineNumber": 133,
"endColumn": 46
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 146,
"startColumn": 30,
"endLineNumber": 146,
"endColumn": 44
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 160,
"startColumn": 27,
"endLineNumber": 160,
"endColumn": 55
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 164,
"startColumn": 30,
"endLineNumber": 164,
"endColumn": 44
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 178,
"startColumn": 32,
"endLineNumber": 178,
"endColumn": 46
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 182,
"startColumn": 34,
"endLineNumber": 182,
"endColumn": 46
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 195,
"startColumn": 30,
"endLineNumber": 195,
"endColumn": 44
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 204,
"startColumn": 27,
"endLineNumber": 204,
"endColumn": 49
},{
"resource": "/config/blueprints/automation/Mikes",
"owner": "generated_diagnostic_collection_name#3",
"severity": 8,
"message": "Unresolved tag: !input",
"source": "YAML",
"startLineNumber": 206,
"startColumn": 26,
"endLineNumber": 206,
"endColumn": 40
}]
Not sure what I have done wrong but I can't get any blueprints to work
can you help me? the long press and release works flawlessly but the short press doesn't work
I can try to help. When you short press the raise/lower, does it register in the logbook? If you can, please send me the automation yaml.
A minor re-write to better control the press and hold functionality