diff --git a/.storage/lovelace.sparkx_i7 b/.storage/lovelace.sparkx_i7 index ffe6fd25..14f1939d 100644 --- a/.storage/lovelace.sparkx_i7 +++ b/.storage/lovelace.sparkx_i7 @@ -1411,14 +1411,14 @@ { "type": "custom:auto-entities", "card": { - "type": "custom:filament-card", - "title": "Filament", - "preset": "multiple_entities", - "group_by": "material" + "type": "grid", + "columns": 4, + "square": false, + "title": "Filament" }, - "card_param": "entities", + "card_param": "cards", "filter": { - "template": "{% set ns = namespace(entities=[]) %} {% for s in states.sensor %}\n {% if s.entity_id.startswith('sensor.spoolman_spool_') %}\n {% set loc = (s.attributes.location | default('')) | lower %}\n {% if 'cfs lite' in loc %}\n {% set ns.entities = ns.entities + [s.entity_id] %}\n {% endif %}\n {% endif %}\n{% endfor %} {{ ns.entities }}" + "template": "{% set ns = namespace(cards=[]) %} {% for s in states.sensor %}\n {% if s.entity_id.startswith('sensor.spoolman_spool_') %}\n {% set loc = (s.attributes.location | default('')) | lower %}\n {% if 'cfs lite' in loc %}\n {% set hex = s.attributes.filament_color_hex | default('44739e') %}\n {% set hex_clean = hex if hex.startswith('#') else '#' ~ hex %}\n {% set name = s.attributes.filament_name | default(s.attributes.friendly_name) %}\n {% set remain = (s.attributes.remaining_weight | default(s.state) | float(0)) | round(1) %}\n {% set total = (s.attributes.initial_weight | default(1000) | float(1000)) %}\n {% set raw_pct = ((remain / total) * 100) | round(1) %}\n {% set pct = 0 if raw_pct < 0 else (100 if raw_pct > 100 else raw_pct) %}\n {% set border = '#d0d0d0' if hex_clean | lower in ['#ffffff', '#fff'] else 'transparent' %}\n\n {% set card = {\n \"type\": \"custom:button-card\",\n \"entity\": s.entity_id,\n \"name\": name,\n \"show_icon\": false,\n \"show_state\": false,\n \"show_name\": true,\n \"custom_fields\": {\n \"tube\": \"
\" ~ remain ~ \"g
\"\n },\n \"styles\": {\n \"card\": [\n {\"background\": \"transparent\"},\n {\"box-shadow\": \"none\"},\n {\"border\": \"none\"},\n {\"padding\": \"8px 2px\"},\n {\"display\": \"flex\"},\n {\"flex-direction\": \"column\"},\n {\"align-items\": \"center\"}\n ],\n \"name\": [\n {\"font-size\": \"13px\"},\n {\"font-weight\": \"700\"},\n {\"color\": \"var(--primary-text-color)\"},\n {\"margin-top\": \"8px\"},\n {\"white-space\": \"nowrap\"},\n {\"overflow\": \"hidden\"},\n {\"text-overflow\": \"ellipsis\"},\n {\"max-width\": \"75px\"},\n {\"text-align\": \"center\"}\n ],\n \"custom_fields\": {\n \"tube\": [\n {\"width\": \"100%\"},\n {\"display\": \"flex\"},\n {\"justify-content\": \"center\"}\n ]\n }\n },\n \"extra_styles\": \"\n .tube-bg {\n position: relative;\n width: 60px;\n height: 180px;\n background-color: #dedede;\n border-radius: 20px;\n overflow: hidden;\n border: 1px solid \" ~ border ~ \";\n display: flex;\n flex-direction: column;\n justify-content: flex-end;\n }\n .tube-fill {\n width: 100%;\n border-radius: 0 0 19px 19px;\n }\n .tube-text {\n position: absolute;\n top: 48%;\n left: 50%;\n transform: translate(-50%, -50%);\n font-size: 13px;\n font-weight: 800;\n color: #111111;\n pointer-events: none;\n z-index: 2;\n white-space: nowrap;\n }\n \",\n \"tap_action\": {\n \"action\": \"more-info\"\n }\n } %}\n {% set ns.cards = ns.cards + [card] %}\n {% endif %}\n {% endif %}\n{% endfor %} {{ ns.cards }}" } } ] diff --git a/zigbee2mqtt/coordinator_backup.json b/zigbee2mqtt/coordinator_backup.json index 8ea5b5c6..a837d489 100644 --- a/zigbee2mqtt/coordinator_backup.json +++ b/zigbee2mqtt/coordinator_backup.json @@ -4,7 +4,7 @@ "version": 1, "source": "zigbee-herdsman@10.10.0", "internal": { - "date": "2026-10-08T22:37:10.282Z", + "date": "2026-10-09T22:37:10.445Z", "znpVersion": 1 } }, @@ -25,7 +25,7 @@ "network_key": { "key": "0a7ed3caf6adb653119697df9d04ec25", "sequence_number": 0, - "frame_counter": 6177939 + "frame_counter": 6255017 }, "devices": [ { diff --git a/zigbee2mqtt/state.json b/zigbee2mqtt/state.json index a1438062..73042587 100644 --- a/zigbee2mqtt/state.json +++ b/zigbee2mqtt/state.json @@ -4,7 +4,7 @@ "state": "ON", "led_brightness": 100, "countdown_to_turn_off": 0, - "voltage": 118.8, + "voltage": 120, "countdown_to_turn_on": 0, "ac_frequency": 60, "power_factor": 0.14, @@ -27,7 +27,7 @@ "led_brightness": 100, "countdown_to_turn_off": 0, "countdown_to_turn_on": 0, - "power": 2.2, + "power": 2, "current": 0.09, "energy": 54.35, "power_factor": 0.18, @@ -45,7 +45,7 @@ "state": "ON", "led_brightness": 100, "countdown_to_turn_off": 0, - "voltage": 118.5, + "voltage": 119.5, "countdown_to_turn_on": 0, "energy": 104.67, "power_factor": 0.2, @@ -74,7 +74,7 @@ "led_brightness": 100, "countdown_to_turn_off": 0, "countdown_to_turn_on": 0, - "voltage": 118.1, + "voltage": 118.6, "state": "ON", "ac_frequency": 60, "energy": 212.4, @@ -95,13 +95,13 @@ "led_brightness": 100, "countdown_to_turn_off": 0, "countdown_to_turn_on": 0, - "voltage": 118.5, - "energy": 101.07, + "voltage": 119, + "energy": 101.08, "state": "ON", - "power": 55.7, - "current": 0.76, + "power": 43.7, + "current": 0.56, "ac_frequency": 60, - "power_factor": 0.64, + "power_factor": 0.61, "update": { "state": "idle", "installed_version": 268513381, @@ -114,7 +114,7 @@ }, "0xffffb40e060895b3": { "state": "ON", - "voltage": 119, + "voltage": 119.6, "ac_frequency": 60, "energy": 14.41, "current": 0.01, @@ -136,7 +136,7 @@ "0xffffb40e0608864e": { "led_brightness": 100, "countdown_to_turn_off": 0, - "voltage": 119.5, + "voltage": 120, "energy": 34.94, "countdown_to_turn_on": 0, "state": "ON",