]> git.giorgioravera.it Git - homeassistant.git/commitdiff
Added proxmox integration
authorGiorgio Ravera <giorgio.ravera@gmail.com>
Sat, 30 Apr 2022 23:07:52 +0000 (01:07 +0200)
committerGiorgio Ravera <giorgio.ravera@gmail.com>
Sat, 30 Apr 2022 23:07:52 +0000 (01:07 +0200)
.secrets_travis.yaml
.storage/lovelace.lovelace_dispositivi
README.md
components/proxmox.yaml [new file with mode: 0644]
configuration.yaml
packages/proxmox.yaml [new file with mode: 0644]

index c141faa54d2a4f8512ed53c9479345c717461e29..a716f72114bc20063f23965c19995c06f3a541a8 100644 (file)
@@ -35,6 +35,11 @@ google_maps_password: password
 google_calendar_id: id
 google_calendar_secret: password
 
+proxmox_host: host
+proxmox_user: user
+proxmox_password: password
+proxmox_node: node
+
 vapid_pub_key: 00
 vapid_prv_key: 00
 vapid_email: email@domain.com
index 3c61c9243783dcb7b1bcfd6573eeed764f6047a7..c0256bb9b04bd0d3ff0a4ff50399a2f2af8c80ed 100644 (file)
         "config": {
             "views": [
                 {
-                    "title": "NAS",
-                    "path": "nas",
-                    "icon": "mdi:nas",
-                    "panel": true,
+                    "title": "Dispositivi di Rete",
+                    "path": "network-devices",
+                    "icon": "mdi:network-outline",
+                    "type": "custom:horizontal-layout",
+                    "layout": {
+                        "width": 300,
+                        "max_cols": 3
+                    },
                     "badges": [],
                     "cards": [
                         {
-                            "type": "custom:layout-card",
-                            "cards": [
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "type": "vertical-stack",
-                                    "title": "NAS QNAP TS-228A",
-                                    "cards": [
-                                        {
-                                            "type": "picture",
-                                            "image": "/local/images/devices/qnap_ts228a.png"
-                                        }
-                                    ]
+                                    "type": "section",
+                                    "label": "Intel NUC10i5FNH"
                                 },
                                 {
-                                    "type": "vertical-stack",
-                                    "title": "Operazioni",
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
                                     "cards": [
                                         {
-                                            "type": "entities",
-                                            "show_header_toggle": false,
-                                            "entities": [
-                                                "switch.nas",
-                                                "script.plex_start",
-                                                "script.plex_stop"
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/intel_nuc.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "https://pve.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "binary_sensor.pve_server_running",
+                                                            "name": "VM Debian",
+                                                            "show_name": true,
+                                                            "show_icon": true,
+                                                            "show_state": false,
+                                                            "color-type": "card",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "state": [
+                                                                {
+                                                                    "value": "on",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "lightgreen"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                },
+                                                                {
+                                                                    "value": "off",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "grey"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                }
+                                                            ]
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "binary_sensor.pve_docker_running",
+                                                            "name": "VM Docker",
+                                                            "show_name": true,
+                                                            "show_icon": true,
+                                                            "show_state": false,
+                                                            "color-type": "card",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "state": [
+                                                                {
+                                                                    "value": "on",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "lightgreen"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                },
+                                                                {
+                                                                    "value": "off",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "grey"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                }
+                                                            ]
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "binary_sensor.pve_firewall_running",
+                                                            "name": "VM Firewall",
+                                                            "show_name": true,
+                                                            "show_icon": true,
+                                                            "show_state": false,
+                                                            "color-type": "card",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "state": [
+                                                                {
+                                                                    "value": "on",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "lightgreen"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                },
+                                                                {
+                                                                    "value": "off",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "grey"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                }
+                                                            ]
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "binary_sensor.pve_asterisk_running",
+                                                            "name": "VM Asterisk",
+                                                            "show_name": true,
+                                                            "show_icon": true,
+                                                            "show_state": false,
+                                                            "color-type": "card",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "state": [
+                                                                {
+                                                                    "value": "on",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "lightgreen"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                },
+                                                                {
+                                                                    "value": "off",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "grey"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                }
+                                                            ]
+                                                        }
+                                                    ]
+                                                }
                                             ]
                                         }
                                     ]
                                 }
-                            ],
-                            "layout": "vertical"
-                        }
-                    ]
-                },
-                {
-                    "title": "Stampante",
-                    "path": "printer",
-                    "icon": "mdi:printer",
-                    "panel": true,
-                    "badges": [],
-                    "cards": [
+                            ]
+                        },
                         {
-                            "type": "custom:layout-card",
-                            "cards": [
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "type": "vertical-stack",
-                                    "title": "Canon PIXMA TR8550",
+                                    "type": "section",
+                                    "label": "NAS QNAP TS-228A"
+                                },
+                                {
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
                                     "cards": [
                                         {
-                                            "type": "picture",
-                                            "title": "Canon PIXMA TR8550",
-                                            "image": "/local/images/devices/canon_tr8550.png"
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/qnap_ts228a.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "https://nas.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "switch.nas",
+                                                            "name": "Stato",
+                                                            "show_name": false,
+                                                            "show_icon": true,
+                                                            "show_state": true,
+                                                            "color-type": "card",
+                                                            "icon": "mdi:power",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "state": [
+                                                                {
+                                                                    "value": "on",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "lightgreen"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                },
+                                                                {
+                                                                    "value": "off",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "grey"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                }
+                                                            ],
+                                                            "tap_action": {
+                                                                "action": "toggle",
+                                                                "confirmation": {
+                                                                    "text": "Sei sicuro di voler procedere?"
+                                                                }
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "name": "Gestione",
+                                                            "show_name": true,
+                                                            "show_icon": true,
+                                                            "show_state": true,
+                                                            "icon": "mdi:cogs",
+                                                            "tap_action": {
+                                                                "action": "url",
+                                                                "url_path": "https://nas.giorgioravera.it"
+                                                            },
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "script.plex_start",
+                                                            "name": "Avvia Plex",
+                                                            "show_icon": true,
+                                                            "show_state": false,
+                                                            "icon": "mdi:plex",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "tap_action": {
+                                                                "action": "call-service",
+                                                                "confirmation": {
+                                                                    "text": "Sei sicuro di voler avviare Plex?"
+                                                                },
+                                                                "service": "script.plex_start"
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "script.plex_stop",
+                                                            "name": "Ferma Plex",
+                                                            "show_icon": true,
+                                                            "show_state": false,
+                                                            "icon": "mdi:plex",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "tap_action": {
+                                                                "action": "call-service",
+                                                                "confirmation": {
+                                                                    "text": "Sei sicuro di voler fermare Plex?"
+                                                                },
+                                                                "service": "script.plex_stop"
+                                                            }
+                                                        }
+                                                    ]
+                                                }
+                                            ]
                                         }
                                     ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Canon PIXMA TR8550"
                                 },
                                 {
-                                    "type": "vertical-stack",
-                                    "title": "Dati",
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
                                     "cards": [
                                         {
-                                            "type": "entity",
-                                            "entity": "sensor.canon_tr8500_series",
-                                            "name": "Stato"
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0.0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/canon_tr8550.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://stampante.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "name": "Gestione",
+                                                            "show_name": true,
+                                                            "show_icon": true,
+                                                            "show_state": true,
+                                                            "icon": "mdi:cogs",
+                                                            "tap_action": {
+                                                                "action": "url",
+                                                                "url_path": "http://stampante.giorgioravera.it"
+                                                            },
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "sensor.canon_tr8500_series",
+                                                            "name": "Stato",
+                                                            "show_name": false,
+                                                            "show_icon": true,
+                                                            "show_state": true,
+                                                            "icon": "[[[\n  if (entity.state==\"idle\")\n    return \"mdi:printer\"\n  else\n    return \"mdi:printer-settings\"\n]]]\n",
+                                                            "styles": {
+                                                                "grid": [
+                                                                    {
+                                                                        "grid-template-columns": "50px auto"
+                                                                    }
+                                                                ],
+                                                                "icon": [
+                                                                    {
+                                                                        "padding": "0px 0px"
+                                                                    },
+                                                                    {
+                                                                        "height": "25px"
+                                                                    },
+                                                                    {
+                                                                        "width": "25px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ],
+                                                                "card": [
+                                                                    {
+                                                                        "--ha-card-background": "rgba(0, 0, 0, 0)"
+                                                                    },
+                                                                    {
+                                                                        "--ha-card-box-shadow": "none"
+                                                                    }
+                                                                ],
+                                                                "name": [
+                                                                    {
+                                                                        "padding": "0px 10px"
+                                                                    },
+                                                                    {
+                                                                        "justify-self": "start"
+                                                                    },
+                                                                    {
+                                                                        "font-family": "Roboto, sans-serif"
+                                                                    },
+                                                                    {
+                                                                        "font-size": "15px"
+                                                                    },
+                                                                    {
+                                                                        "color": "var(--primary-text-color)"
+                                                                    }
+                                                                ]
+                                                            },
+                                                            "state": [
+                                                                {
+                                                                    "value": "printing",
+                                                                    "styles": {
+                                                                        "icon": [
+                                                                            {
+                                                                                "color": "yellow"
+                                                                            }
+                                                                        ]
+                                                                    }
+                                                                }
+                                                            ]
+                                                        }
+                                                    ]
+                                                }
+                                            ]
                                         },
                                         {
                                             "type": "custom:bar-card",
+                                            "show_header_toggle": false,
+                                            "state_color": false,
+                                            "positions": {
+                                                "indicator": "off",
+                                                "name": "outside",
+                                                "value": "outside",
+                                                "icon": "inside"
+                                            },
+                                            "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\nbar-card-value {\n  \n  margin: 0px;\n  font-size: 15px;\n  text-shadow: 1px 1px #0005;\n}\nbar-card-name {\n  margin: 0px;\n  font-size: 15px;\n  text-shadow: 1px 1px #0005;\n}\nha-icon {\n  color: darkgrey;\n}",
                                             "entities": [
                                                 {
                                                     "entity": "sensor.canon_tr8500_series_black_bk",
                                                     "color": "yellow",
                                                     "width": "85%"
                                                 }
-                                            ],
-                                            "title": "Livello Inchiostro",
-                                            "show_header_toggle": false,
-                                            "state_color": false,
-                                            "positions": {
-                                                "icon": "off",
-                                                "indicator": "off",
-                                                "name": "outside",
-                                                "value": "outside"
-                                            }
+                                            ]
                                         }
                                     ]
                                 }
-                            ],
-                            "layout": "vertical"
+                            ]
                         }
                     ]
                 },
                 {
-                    "icon": "mdi:zigbee",
-                    "title": "Zigbee",
-                    "path": "zigbee",
+                    "title": "Shelly",
+                    "path": "shelly",
+                    "icon": "mdi:alpha-s-box",
+                    "type": "custom:horizontal-layout",
+                    "layout": {},
                     "badges": [],
                     "cards": [
                         {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
                             "entities": [
                                 {
-                                    "entity": "sensor.zigbee2mqtt_stato_bridge"
+                                    "type": "section",
+                                    "label": "Shelly 1 - Tapparella Cucina"
                                 },
                                 {
-                                    "entity": "sensor.zigbee2mqtt_stato_permit_join"
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly25.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly1.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "cover.tapparella_cucina",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.tapparella_cucina_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_cucina_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_cucina_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "sensor.zigbee2mqtt_stato_log_level"
+                                    "type": "section",
+                                    "label": "Shelly 2 - Tapparella Sala"
                                 },
                                 {
-                                    "entity": "sensor.zigbee2mqtt_versione_bridge"
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly25.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly2.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "layout": "icon_name_state",
+                                                            "entity": "cover.tapparella_sala",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.tapparella_sala_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_sala_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_sala_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "sensor.zigbee2mqtt_versione_coordinator"
+                                    "type": "section",
+                                    "label": "Shelly 3 - Tapparella Studio"
                                 },
                                 {
-                                    "entity": "sensor.zigbee2mqtt_canale"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly25.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly3.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "cover.tapparella_studio",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.tapparella_studio_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_studio_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_studio_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Shelly 4 - Tapparella Camera"
                                 },
                                 {
-                                    "entity": "sensor.zigbee2mqtt_panid"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly25.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly4.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "cover.tapparella_camera",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.tapparella_camera_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_camera_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.tapparella_camera_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
-                            ],
-                            "show_header_toggle": false,
-                            "title": "Stato Sistema Zigbee2mqtt",
-                            "type": "entities"
+                            ]
                         },
                         {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
                             "entities": [
                                 {
-                                    "entity": "script.zigbee2mqtt_restart"
+                                    "type": "section",
+                                    "label": "Shelly 5 - Luce Corridoio"
                                 },
                                 {
-                                    "type": "divider",
-                                    "style": {
-                                        "height": "1px",
-                                        "width": "98%",
-                                        "margin-left": "auto",
-                                        "margin-right": "auto",
-                                        "background": "#62717b"
-                                    }
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly1.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly5.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_corridoio",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luce_corridoio_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_corridoio_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_corridoio_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "switch.zigbee2mqtt_abilita_join"
+                                    "type": "section",
+                                    "label": "Shelly 6 - Luce Cucina"
                                 },
                                 {
-                                    "entity": "timer.zigbee_permit_join"
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly1.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly6.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_cucina",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luce_cucina_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_cucina_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_cucina_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "input_number.zigbee2mqtt_join_minutes"
+                                    "type": "section",
+                                    "label": "Shelly 7 - Luce Sala"
                                 },
                                 {
-                                    "type": "divider",
-                                    "style": {
-                                        "height": "1px",
-                                        "width": "98%",
-                                        "margin-left": "auto",
-                                        "margin-right": "auto",
-                                        "background": "#62717b"
-                                    }
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly_dimmer.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly7.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_sala",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luce_sala_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_sala_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_sala_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "input_text.zigbee2mqtt_old_name"
+                                    "type": "section",
+                                    "label": "Shelly 8 - Luci Bagno"
                                 },
                                 {
-                                    "entity": "input_text.zigbee2mqtt_new_name"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly25.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly7.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_bagno",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_specchio",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luci_bagno_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luci_bagno_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luci_bagno_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Shelly 9 - Luce Studio"
                                 },
                                 {
-                                    "entity": "script.zigbee2mqtt_rename"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly1.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly9.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_studio",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luce_studio_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_studio_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_studio_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Shelly 10 - Luce Camera"
                                 },
                                 {
-                                    "type": "divider",
-                                    "style": {
-                                        "height": "1px",
-                                        "width": "98%",
-                                        "margin-left": "auto",
-                                        "margin-right": "auto",
-                                        "background": "#62717b"
-                                    }
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly_dimmer.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly10.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_camera",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luce_camera_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_camera_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_camera_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Shelly 11 - Luce Balcone"
                                 },
                                 {
-                                    "entity": "input_text.zigbee2mqtt_remove"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly1.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shelly11.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "light.luce_balcone",
+                                                            "name": "Stato"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.luce_balcone_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_balcone_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.luce_balcone_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "visible": false,
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Shelly EM"
                                 },
                                 {
-                                    "entity": "input_boolean.zigbee2mqtt_force_remove"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/shelly/shelly_em.png",
+                                                    "tap_action": {
+                                                        "action": "url",
+                                                        "url_path": "http://shellyem.giorgioravera.it"
+                                                    }
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.shelly_em_channel_1_power",
+                                                            "name": "Potenza",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.shelly_em_channel_1_voltage",
+                                                            "name": "Tensione",
+                                                            "icon": "mdi:alpha-v-box",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.shelly_em_channel_1_power_factor",
+                                                            "name": "FP",
+                                                            "icon": "mdi:angle-acute",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_firmware",
+                                                            "entity": "binary_sensor.shelly_em_firmware_update",
+                                                            "name": "Firmare"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.shelly_em_ota_update",
+                                                            "name": "Aggiorna Firmware",
+                                                            "icon": "mdi:package-up"
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_button",
+                                                            "entity": "button.shelly_em_reboot",
+                                                            "name": "Riavvia Dispositivo",
+                                                            "icon": "mdi:restart"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        }
+                    ]
+                },
+                {
+                    "title": "Netatmo",
+                    "path": "netatmo",
+                    "icon": "mdi:alpha-n-box",
+                    "type": "custom:horizontal-layout",
+                    "badges": [],
+                    "cards": [
+                        {
+                            "type": "entities",
+                            "entities": [
+                                {
+                                    "entity": "input_boolean.central_heating"
                                 },
                                 {
-                                    "entity": "script.zigbee2mqtt_remove"
+                                    "entity": "select.netatmo_casa_ravera_testa"
+                                }
+                            ],
+                            "state_color": false,
+                            "title": "Impostazioni"
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Valvola 1 - Cucina"
                                 },
                                 {
-                                    "type": "divider",
-                                    "style": {
-                                        "height": "1px",
-                                        "width": "98%",
-                                        "margin-left": "auto",
-                                        "margin-right": "auto",
-                                        "background": "#62717b"
-                                    }
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/netatmo_valve.png"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "climate.cucina",
+                                                            "name": "Modalit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.valvola_cucina_state",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.valvola_cucina_battery_percent",
+                                                            "name": "Batteria",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
+                                {
+                                    "type": "section",
+                                    "label": "Valvola 2 - Sala"
                                 },
                                 {
-                                    "entity": "input_select.zigbee2mqtt_log_level"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/netatmo_valve.png"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "climate.sala",
+                                                            "name": "Modalit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.valvola_sala_state",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.valvola_sala_battery_percent",
+                                                            "name": "Batteria",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
-                            ],
-                            "show_header_toggle": false,
-                            "title": "Operazioni Sistema Zigbee2mqtt",
-                            "type": "entities"
+                            ]
                         },
                         {
-                            "type": "custom:battery-state-card",
-                            "title": "Batteria Dispositivi ZigBee",
-                            "sort_by_level": "desc",
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
                             "entities": [
                                 {
-                                    "entity": "sensor.porta_casa_battery",
-                                    "name": "Porta Casa"
+                                    "type": "section",
+                                    "label": "Valvola 3 - Bagno"
                                 },
                                 {
-                                    "entity": "sensor.temperatura_balcone_battery",
-                                    "name": "Temperatura Balcone"
-                                },
-                                {
-                                    "entity": "sensor.temperatura_veranda_battery",
-                                    "name": "Temperatura Veranda"
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/netatmo_valve.png"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "climate.bagno",
+                                                            "name": "Modalit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.valvola_bagno_state",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.valvola_bagno_battery_percent",
+                                                            "name": "Batteria",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "sensor.spare_door_battery",
-                                    "name": "Spare Door"
+                                    "type": "section",
+                                    "label": "Valvola 4 - Studio"
                                 },
                                 {
-                                    "entity": "sensor.wireless_switch_battery",
-                                    "name": "Wireless Switch"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/netatmo_valve.png"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "climate.studio",
+                                                            "name": "Modalit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.valvola_studio_state",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.valvola_studio_battery_percent",
+                                                            "name": "Batteria",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
                             ]
                         },
                         {
-                            "type": "vertical-stack",
-                            "title": "Mappa Dispositivi",
-                            "layout": "vertical",
-                            "cards": [
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "title": "Zigbee2mqtt Network Map",
-                                    "type": "custom:zigbee2mqtt-networkmap",
-                                    "entity": "sensor.zigbee2mqtt_networkmap",
-                                    "mqtt_base_topic": "zigbee2mqtt",
-                                    "force": 3000,
-                                    "node_size": 16,
-                                    "font_size": 12,
-                                    "link_width": 2,
-                                    "height": 400,
-                                    "css": ":host {\n  --zigbee2mqtt-networkmap-node-color: rgba(18, 120, 98, .7);\n  --zigbee2mqtt-networkmap-node-fill-color: #dcfaf3;\n  --zigbee2mqtt-networkmap-node-pinned-color: rgba(190, 56, 93, .6);\n  --zigbee2mqtt-networkmap-link-color: rgba(18, 120, 98, .5);\n  --zigbee2mqtt-networkmap-hover-color: #be385d;\n  --zigbee2mqtt-networkmap-link-selected-color: rgba(202, 164, 85, .6);\n  --zigbee2mqtt-networkmap-label-color: #127862;\n  --zigbee2mqtt-networkmap-arrow-color: rgba(18, 120, 98, 0.7);\n  --zigbee2mqtt-networkmap-node-coordinator-color: rgba(224, 78, 93, .7);\n  --zigbee2mqtt-networkmap-node-router-color: rgba(0, 165, 255, .7);\n}\n"
+                                    "type": "section",
+                                    "label": "Valvola 5 - Camera"
+                                },
+                                {
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "/local/images/devices/netatmo_valve.png"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "climate.camera",
+                                                            "name": "Modalit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.valvola_camera_state",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.valvola_camera_battery_percent",
+                                                            "name": "Batteria",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
                             ]
                         }
                     ]
                 },
                 {
-                    "title": "Netatmo",
-                    "path": "netatmo",
-                    "icon": "mdi:alpha-n-box",
+                    "title": "test",
+                    "path": "test",
+                    "icon": "mdi:zigbee",
+                    "type": "custom:horizontal-layout",
                     "badges": [],
                     "cards": [
                         {
-                            "type": "picture",
-                            "image": "/local/images/devices/netatmo_valve.png"
-                        },
-                        {
-                            "type": "custom:bar-card",
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
                             "entities": [
                                 {
-                                    "entity": "sensor.valvola_cucina_battery_percent",
-                                    "name": "Cucina",
-                                    "width": "85%"
-                                },
-                                {
-                                    "entity": "sensor.valvola_sala_battery_percent",
-                                    "name": "Sala",
-                                    "width": "85%"
+                                    "type": "section",
+                                    "label": "Porta Casa - Xiaomi MCCGQ01LM"
                                 },
                                 {
-                                    "entity": "sensor.valvola_studio_battery_percent",
-                                    "name": "Studio",
-                                    "width": "85%"
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "https://www.zigbee2mqtt.io/images/devices/MCCGQ01LM.jpg"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "binary_sensor.porta_casa_contact",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.porta_casa_battery",
+                                                            "name": "Batteria"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "sensor.valvola_bagno_battery_percent",
-                                    "name": "Bagno",
-                                    "width": "85%"
+                                    "type": "section",
+                                    "label": "Temperatura Balcone - Xiaomi WSDCGQ01LM"
                                 },
                                 {
-                                    "entity": "sensor.valvola_camera_battery_percent",
-                                    "name": "Camera",
-                                    "width": "85%"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "https://www.zigbee2mqtt.io/images/devices/WSDCGQ01LM.jpg"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.temperatura_balcone_temperature",
+                                                            "name": "Temperatura",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.temperatura_balcone_humidity",
+                                                            "name": "Umidit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.temperatura_balcone_battery",
+                                                            "name": "Batteria"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
-                            ],
-                            "title": "Batteria Valvole Netatmo",
-                            "show_header_toggle": false,
-                            "state_color": false,
-                            "positions": {
-                                "icon": "off",
-                                "indicator": "off",
-                                "name": "outside",
-                                "value": "outside"
-                            }
+                            ]
                         },
                         {
                             "type": "entities",
-                            "title": "Stato Valvole Netatmo",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
                             "entities": [
                                 {
-                                    "entity": "sensor.valvola_cucina_state",
-                                    "name": "Cucina"
-                                },
-                                {
-                                    "entity": "sensor.valvola_sala_state",
-                                    "name": "Sala"
+                                    "type": "section",
+                                    "label": "Temperatura Veranda - Xiaomi WSDCGQ01LM"
                                 },
                                 {
-                                    "entity": "sensor.valvola_studio_state",
-                                    "name": "Studio"
-                                },
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "https://www.zigbee2mqtt.io/images/devices/WSDCGQ01LM.jpg"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.temperatura_veranda_temperature",
+                                                            "name": "Temperatura",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "sensor.temperatura_veranda_humidity",
+                                                            "name": "Umidit\u00e0",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.temperatura_veranda_battery",
+                                                            "name": "Batteria"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
+                                }
+                            ]
+                        },
+                        {
+                            "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
+                            "entities": [
                                 {
-                                    "entity": "sensor.valvola_bagno_state",
-                                    "name": "Bagno"
+                                    "type": "section",
+                                    "label": "spare_door - Xiaomi MCCGQ11LM"
                                 },
                                 {
-                                    "entity": "sensor.valvola_camera_state",
-                                    "name": "Camera"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "https://www.zigbee2mqtt.io/images/devices/MCCGQ11LM.jpg"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_state",
+                                                            "entity": "binary_sensor.spare_door_contact",
+                                                            "name": "Stato",
+                                                            "styles": {
+                                                                "icon": [
+                                                                    {
+                                                                        "color": "var(--state-icon-color)"
+                                                                    }
+                                                                ]
+                                                            }
+                                                        },
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.spare_door_battery",
+                                                            "name": "Batteria"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
                             ]
                         },
                         {
                             "type": "entities",
+                            "show_header_toggle": "off",
+                            "style": ".card-header {\n  padding: 0px 0px 0px 0px !important;\n}\n",
                             "entities": [
                                 {
-                                    "entity": "input_boolean.central_heating"
+                                    "type": "section",
+                                    "label": "wireless_button - Xiaomi WXKG01LM"
                                 },
                                 {
-                                    "entity": "select.netatmo_casa_ravera_testa"
+                                    "type": "custom:hui-element",
+                                    "card_type": "vertical-stack",
+                                    "cards": [
+                                        {
+                                            "type": "horizontal-stack",
+                                            "cards": [
+                                                {
+                                                    "type": "picture",
+                                                    "style": "ha-card { \n    --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n    --ha-card-background: \"rgba(0, 0, 0, 0)\";\n    --ha-card-box-shadow: 'none';\n}\n",
+                                                    "image": "https://www.zigbee2mqtt.io/images/devices/WXKG01LM.jpg"
+                                                },
+                                                {
+                                                    "type": "vertical-stack",
+                                                    "cards": [
+                                                        {
+                                                            "type": "custom:button-card",
+                                                            "template": "template_device_generic_battery_state",
+                                                            "entity": "sensor.wireless_button_battery",
+                                                            "name": "Batteria"
+                                                        }
+                                                    ]
+                                                }
+                                            ]
+                                        }
+                                    ]
                                 }
-                            ],
-                            "state_color": false,
-                            "title": "Impostazioni"
+                            ]
+                        },
+                        {
+                            "type": "vertical-stack",
+                            "title": "Mappa Dispositivi",
+                            "layout": "vertical",
+                            "cards": [
+                                {
+                                    "type": "custom:zigbee2mqtt-networkmap",
+                                    "title": "Zigbee2MQTT Network Map",
+                                    "entity": "sensor.zigbee2mqtt_networkmap",
+                                    "mqtt_base_topic": "zigbee2mqtt",
+                                    "force": 3000,
+                                    "node_size": 16,
+                                    "font_size": 12,
+                                    "link_width": 2,
+                                    "height": 400,
+                                    "css": ":host {\n  --zigbee2mqtt-networkmap-node-color: rgba(18, 120, 98, .7);\n  --zigbee2mqtt-networkmap-node-fill-color: #dcfaf3;\n  --zigbee2mqtt-networkmap-node-pinned-color: rgba(190, 56, 93, .6);\n  --zigbee2mqtt-networkmap-link-color: rgba(18, 120, 98, .5);\n  --zigbee2mqtt-networkmap-hover-color: #be385d;\n  --zigbee2mqtt-networkmap-link-selected-color: rgba(202, 164, 85, .6);\n  --zigbee2mqtt-networkmap-label-color: #127862;\n  --zigbee2mqtt-networkmap-arrow-color: rgba(18, 120, 98, 0.7);\n  --zigbee2mqtt-networkmap-node-coordinator-color: rgba(224, 78, 93, .7);\n  --zigbee2mqtt-networkmap-node-router-color: rgba(0, 165, 255, .7);\n    }\n"
+                                }
+                            ]
                         }
                     ]
                 },
                 {
-                    "title": "Shelly",
+                    "title": "Shelly2",
                     "layout": {
                         "grid-template-columns": "auto auto auto",
                         "grid-template-rows": "auto",
                         }
                     },
                     "icon": "mdi:alpha-s-box",
-                    "path": "shelly",
+                    "path": "shelly2",
                     "badges": [],
                     "cards": [
                         {
                     ]
                 }
             ],
-            "title": "Dispositivi"
+            "button_card_templates": {
+                "template_device_generic_state": {
+                    "layout": "icon_name_state",
+                    "color-type": "card",
+                    "show_name": true,
+                    "show_icon": true,
+                    "show_state": true,
+                    "styles": {
+                        "grid": [
+                            {
+                                "grid-template-columns": "50px auto"
+                            }
+                        ],
+                        "icon": [
+                            {
+                                "padding": "0px 0px"
+                            },
+                            {
+                                "height": "25px"
+                            },
+                            {
+                                "width": "25px"
+                            }
+                        ],
+                        "card": [
+                            {
+                                "--ha-card-background": "rgba(0, 0, 0, 0)"
+                            },
+                            {
+                                "--ha-card-box-shadow": "none"
+                            }
+                        ],
+                        "name": [
+                            {
+                                "padding": "0px 10px"
+                            },
+                            {
+                                "justify-self": "start"
+                            },
+                            {
+                                "font-family": "Roboto, sans-serif"
+                            },
+                            {
+                                "font-size": "15px"
+                            },
+                            {
+                                "color": "var(--primary-text-color)"
+                            }
+                        ]
+                    }
+                },
+                "template_device_generic_button": {
+                    "layout": "icon_name_state",
+                    "color-type": "card",
+                    "show_name": true,
+                    "show_icon": true,
+                    "show_state": false,
+                    "tap_action": {
+                        "action": "call-service",
+                        "service": "button.press",
+                        "service_data": {
+                            "entity_id": "[[[ return entity.entity_id ]]]"
+                        }
+                    },
+                    "styles": {
+                        "grid": [
+                            {
+                                "grid-template-columns": "50px auto"
+                            }
+                        ],
+                        "icon": [
+                            {
+                                "padding": "0px 0px"
+                            },
+                            {
+                                "height": "25px"
+                            },
+                            {
+                                "width": "25px"
+                            },
+                            {
+                                "color": "var(--state-icon-color)"
+                            }
+                        ],
+                        "card": [
+                            {
+                                "--ha-card-background": "rgba(0, 0, 0, 0)"
+                            },
+                            {
+                                "--ha-card-box-shadow": "none"
+                            }
+                        ],
+                        "name": [
+                            {
+                                "padding": "0px 10px"
+                            },
+                            {
+                                "justify-self": "start"
+                            },
+                            {
+                                "font-family": "Roboto, sans-serif"
+                            },
+                            {
+                                "font-size": "15px"
+                            },
+                            {
+                                "color": "var(--primary-text-color)"
+                            }
+                        ]
+                    }
+                },
+                "template_device_firmware": {
+                    "layout": "icon_name_state",
+                    "color-type": "card",
+                    "show_name": true,
+                    "show_icon": true,
+                    "show_state": true,
+                    "state": [
+                        {
+                            "value": "off",
+                            "styles": {
+                                "icon": [
+                                    {
+                                        "color": "lightgreen"
+                                    }
+                                ]
+                            }
+                        },
+                        {
+                            "value": "on",
+                            "styles": {
+                                "icon": [
+                                    {
+                                        "color": "red"
+                                    }
+                                ]
+                            }
+                        }
+                    ],
+                    "styles": {
+                        "grid": [
+                            {
+                                "grid-template-columns": "50px auto"
+                            }
+                        ],
+                        "icon": [
+                            {
+                                "padding": "0px 0px"
+                            },
+                            {
+                                "height": "25px"
+                            },
+                            {
+                                "width": "25px"
+                            },
+                            {
+                                "color": "var(--state-icon-color)"
+                            }
+                        ],
+                        "card": [
+                            {
+                                "--ha-card-background": "rgba(0, 0, 0, 0)"
+                            },
+                            {
+                                "--ha-card-box-shadow": "none"
+                            }
+                        ],
+                        "name": [
+                            {
+                                "padding": "0px 10px"
+                            },
+                            {
+                                "justify-self": "start"
+                            },
+                            {
+                                "font-family": "Roboto, sans-serif"
+                            },
+                            {
+                                "font-size": "15px"
+                            },
+                            {
+                                "color": "var(--primary-text-color)"
+                            }
+                        ]
+                    }
+                },
+                "template_device_generic_battery_state": {
+                    "layout": "icon_name_state",
+                    "color-type": "card",
+                    "show_name": true,
+                    "show_icon": true,
+                    "show_state": true,
+                    "styles": {
+                        "grid": [
+                            {
+                                "grid-template-columns": "50px auto"
+                            }
+                        ],
+                        "icon": [
+                            {
+                                "padding": "0px 0px"
+                            },
+                            {
+                                "height": "25px"
+                            },
+                            {
+                                "width": "25px"
+                            }
+                        ],
+                        "card": [
+                            {
+                                "--ha-card-background": "rgba(0, 0, 0, 0)"
+                            },
+                            {
+                                "--ha-card-box-shadow": "none"
+                            }
+                        ],
+                        "name": [
+                            {
+                                "padding": "0px 10px"
+                            },
+                            {
+                                "justify-self": "start"
+                            },
+                            {
+                                "font-family": "Roboto, sans-serif"
+                            },
+                            {
+                                "font-size": "15px"
+                            },
+                            {
+                                "color": "var(--primary-text-color)"
+                            }
+                        ]
+                    },
+                    "state": [
+                        {
+                            "value": 20,
+                            "operator": "<=",
+                            "styles": {
+                                "icon": [
+                                    {
+                                        "color": "var(--label-badge-red)"
+                                    }
+                                ]
+                            }
+                        },
+                        {
+                            "value": 50,
+                            "operator": "<=",
+                            "styles": {
+                                "icon": [
+                                    {
+                                        "color": "var(--label-badge-yellow)"
+                                    }
+                                ]
+                            }
+                        },
+                        {
+                            "value": 100,
+                            "operator": "<=",
+                            "styles": {
+                                "icon": [
+                                    {
+                                        "color": "var(--label-badge-green)"
+                                    }
+                                ]
+                            }
+                        }
+                    ]
+                }
+            }
         }
     }
 }
\ No newline at end of file
index 217a62e3cf86b698204ed6517ed7dcbb79d34e0f..99b9d3dfb9c45d4d3f6d262313a30daf89ea2059 100644 (file)
--- a/README.md
+++ b/README.md
@@ -9,25 +9,28 @@ This repository contains the [Home Assistant](https://www.home-assistant.io/) co
 ## Running System
 Home Assistant is running in a container created from the official [Docker Image](https://hub.docker.com/r/homeassistant/home-assistant).
 Docker is running in a Virtual Machine based on [Linux Debian](https://www.debian.org/).
-My server is an Intel NUC (NUC5i5RYH) with [XCP-ng Hypervisor](https://xcp-ng.org/).
+My server is an Intel NUC (NUC10i5FNH) with [Proxmox Virtual Environment](https://www.proxmox.com/en/).
 
 ## Component Used
-* Google (Chromecast, Google Home Mini)
-* Shelly (Shelly1, Shelly2, Shelly2.5, ShellyEM, Shelly Dimmer)
-* Xiaomi (MiJia door & window contact sensor, MiJia temperature & humidity sensor)
-* Netatmo Thermostatic valves
-* Sony Android TV (KD-55XF8596)
 * Canon Printer (TR8550)
-* QNAP NAS (TS-228A)
-* Mercedes Me (Mercedes-Benz A200d)
+* CO2 Signal
+* Google (Chromecast, Google Home Mini)
 * HomeKit
+* Mercedes Me (Mercedes-Benz A200d)
+* Netatmo Thermostatic valves
 * LG WebOS TV (LG 28TL510S-PZ)
+* Proxmox
+* QNAP NAS (TS-228A)
+* Shelly (Shelly1, Shelly2, Shelly2.5, ShellyEM, Shelly Dimmer)
+* Sony Android TV (KD-55XF8596)
+* Xiaomi (MiJia door & window contact sensor, MiJia temperature & humidity sensor)
 
 ## Custom Component Used
 ### Integrations
+* [browser_mod](https://github.com/thomasloven/hass-browser_mod)
 * [HACS](https://github.com/hacs/integration)
 * [MercedeME 2020](https://github.com/ReneNulschDE/mbapi2020)
-* [Scheduler Component]()
+* [Scheduler Component](https://github.com/nielsfaber/scheduler-component)
 ### Frontend
 * [auto-entities](https://github.com/thomasloven/lovelace-auto-entities)
 * [Bar Card](https://github.com/custom-cards/bar-card)
@@ -40,6 +43,7 @@ My server is an Intel NUC (NUC5i5RYH) with [XCP-ng Hypervisor](https://xcp-ng.or
 * [layout-card](https://github.com/thomasloven/lovelace-layout-card)
 * [Lovelace Swipe Navigation](https://github.com/maykar/lovelace-swipe-navigation)
 * [mini-graph-card](https://github.com/kalkih/mini-graph-card)
+* [Plotly Graph Card](https://github.com/dbuezas/lovelace-plotly-graph-card)
 * [Reeder Dark Theme](https://github.com/hekm77/reeder_dark_theme)
 * [Scheduler Card](https://github.com/nielsfaber/scheduler-card)
 * [Shutter Card](https://github.com/Deejayfool/hass-shutter-card)
diff --git a/components/proxmox.yaml b/components/proxmox.yaml
new file mode 100644 (file)
index 0000000..23e4aaf
--- /dev/null
@@ -0,0 +1,16 @@
+######################################################################
+# Component: Proxmox
+######################################################################
+
+- host: !secret proxmox_host
+  username: !secret proxmox_user
+  password: !secret proxmox_password
+  verify_ssl: true
+  realm: pve
+  nodes:
+    - node: !secret proxmox_node
+      vms:
+          - 100
+          - 101
+          - 102
+          - 103
index 4b5edc89f17b59450b70705f9f3899c82a3abc61..6847df048d1c7fa0776c1f4f38329998f148be93 100644 (file)
@@ -207,6 +207,9 @@ google_assistant: !include components/google_assistant.yaml
 # Google Calendar
 google: !include components/google_calendar.yaml
 
+# Proxmox
+proxmoxve: !include components/proxmox.yaml
+
 # Homekit
 homekit: !include components/homekit.yaml
 
diff --git a/packages/proxmox.yaml b/packages/proxmox.yaml
new file mode 100644 (file)
index 0000000..9e03423
--- /dev/null
@@ -0,0 +1,57 @@
+######################################################################
+# Proxmox Package: Customizations
+######################################################################
+
+homeassistant:
+  customize:
+    binary_sensor.pve_server_running:
+        friendly_name: VM Server
+        icon: mdi:debian
+
+    binary_sensor.pve_docker_running:
+        friendly_name: VM Docker
+        icon: mdi:docker
+
+    binary_sensor.pve_firewall_running:
+        friendly_name: VM Firewall
+        icon: mdi:freebsd
+
+    binary_sensor.pve_asterisk_running:
+        friendly_name: VM Asterisk
+        icon: mdi:asterisk-circle-outline
+
+######################################################################
+# Proxmox Package - History
+######################################################################
+
+history:
+  exclude:
+    entities:
+      - binary_sensor.pve_server_running
+      - binary_sensor.pve_docker_running
+      - binary_sensor.pve_firewall_running
+      - binary_sensor.pve_asterisk_running
+
+######################################################################
+# Proxmox Package - Logbook
+######################################################################
+
+logbook:
+  exclude:
+    entities:
+      - binary_sensor.pve_server_running
+      - binary_sensor.pve_docker_running
+      - binary_sensor.pve_firewall_running
+      - binary_sensor.pve_asterisk_running
+
+######################################################################
+# Proxmox Package - Recorder
+######################################################################
+
+recorder:
+  exclude:
+    entities:
+      - binary_sensor.pve_server_running
+      - binary_sensor.pve_docker_running
+      - binary_sensor.pve_firewall_running
+      - binary_sensor.pve_asterisk_running