Files
HomeAssistantVS/.storage/lovelace.sparkx_i7
T

889 lines
33 KiB
Plaintext

{
"version": 1,
"minor_version": 1,
"key": "lovelace.sparkx_i7",
"data": {
"config": {
"views": [
{
"max_columns": 4,
"path": "print",
"sections": [
{
"cards": [
{
"heading": "Printer Status",
"icon": "mdi:printer-3d-nozzle",
"type": "heading"
},
{
"grid_options": {
"columns": "full"
},
"type": "custom:webrtc-camera",
"ui": true,
"url": "octoprint"
},
{
"grid_options": {
"columns": "full"
},
"type": "custom:webrtc-camera",
"ui": true,
"url": "octoprint2"
},
{
"camera_image": "camera.sparkx_i7_printer_camera",
"camera_view": "live",
"entity": "camera.sparkx_i7_printer_camera",
"fit_mode": "cover",
"grid_options": {
"columns": "full"
},
"show_name": true,
"show_state": true,
"type": "picture-entity"
},
{
"grid_options": {
"columns": 6
},
"image_entity": "image.sparkx_i7_current_print_preview",
"show_name": false,
"type": "picture"
},
{
"entity": "sensor.sparkx_i7_print_status",
"grid_options": {
"columns": 12
},
"icon": "mdi:state-machine",
"name": "Status",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_position_z_2_decimals",
"grid_options": {
"columns": 4
},
"icon": "mdi:axis-z-arrow",
"name": "Current Z",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_position_x",
"grid_options": {
"columns": 4
},
"icon": "mdi:axis-x-arrow",
"name": "X",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_position_y",
"grid_options": {
"columns": 4
},
"icon": "mdi:axis-y-arrow",
"name": "Y",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_print_status",
"grid_options": {
"columns": 6
},
"icon": "mdi:message-alert-outline",
"multiline_secondary": true,
"name": "Printer Message",
"primary": "{{ states(\"sensor.sparkx_i7_print_status\") | replace(\"_\", \" \") | title }}",
"secondary": "{% set err = state_attr(\"sensor.sparkx_i7_print_status\", \"err\") or {} %}{% set code = err.get(\"errcode\", 0) | int(0) %}{% set msg = err.get(\"value\", \"\") %}{% if state_attr(\"sensor.sparkx_i7_print_status\", \"paused_flag\") | default(false) %}Print paused{% elif msg %}ERROR {{ code }}: {{ msg }}{% elif code %}Printer error {{ code }}{% else %}No printer error{% endif %}",
"type": "custom:mushroom-template-card"
},
{
"entity": "sensor.sparkx_i7_print_status",
"grid_options": {
"columns": 6
},
"icon": "mdi:file-document-outline",
"multiline_secondary": true,
"name": "Current File",
"primary": "Current File",
"secondary": "{% set file = state_attr(\"sensor.sparkx_i7_print_status\", \"file\") or \"\" %}{% if file %}{{ file.split(\"/\")[-1] | replace(\".gcode\", \"\") }}{% else %}No active file{% endif %}",
"type": "custom:mushroom-template-card"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "Print Progress",
"icon": "mdi:progress-clock",
"type": "heading"
},
{
"entity": "sensor.sparkx_i7_print_progress",
"grid_options": {
"columns": 6,
"rows": 3
},
"max": 100,
"min": 0,
"name": "Progress",
"severity": {
"green": 0,
"red": 90,
"yellow": 40
},
"type": "gauge",
"unit": "%"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:clock-start",
"multiline_secondary": true,
"name": "Elapsed",
"primary": "Elapsed",
"secondary": "{% set s = states('sensor.sparkx_i7_print_job_time') | float(0) %}{% set h = (s / 3600) | int %}{% set m = ((s % 3600) / 60) | int %}{% if h %}{{ h }} hr {{ m }} min{% else %}{{ m }} min{% endif %}",
"type": "custom:mushroom-template-card"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:clock-end",
"multiline_secondary": true,
"name": "Remaining",
"primary": "Remaining",
"secondary": "{% set s = states('sensor.sparkx_i7_print_time_left') | float(-1) %}{% if s <= 0 %}No estimate{% else %}{% set h = (s / 3600) | int %}{% set m = ((s % 3600) / 60) | int %}{% if h %}{{ h }} hr {{ m }} min{% else %}{{ m }} min{% endif %}{% endif %}",
"type": "custom:mushroom-template-card"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:clock-outline",
"multiline_secondary": true,
"primary": "Est. Finish",
"secondary": "{% set left = states('sensor.sparkx_i7_print_time_left') | int(0) %}{% if left > 0 %}{{ (now() + timedelta(seconds=left)).strftime('%I:%M %p').lstrip('0') }}{% else %}—{% endif %}",
"type": "custom:mushroom-template-card"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:layers",
"multiline_secondary": true,
"name": "Layer",
"primary": "Layer",
"secondary": "{% set c = states('sensor.sparkx_i7_working_layer') | int(0) %}{% set t = states('sensor.sparkx_i7_total_layers') | int(0) %}{{ c }} of {{ t }}",
"type": "custom:mushroom-template-card"
},
{
"entity": "light.sparkx_i7_light",
"grid_options": {
"columns": 6
},
"icon": "mdi:lightbulb",
"name": "Printer Light",
"type": "tile"
},
{
"detail": 1,
"entity": "sensor.sparkx_i7_print_progress",
"graph": "line",
"grid_options": {
"columns": "full"
},
"hours_to_show": 24,
"name": "Progress History",
"type": "sensor"
},
{
"entity": "number.sparkx_i7_print_tuning",
"grid_options": {
"columns": 6
},
"icon": "mdi:speedometer",
"name": "Print Tuning",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_print_speed",
"grid_options": {
"columns": 6
},
"icon": "mdi:speedometer",
"name": "Speed",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_real_time_flow",
"grid_options": {
"columns": 6
},
"icon": "mdi:cube-send",
"name": "Real-Time Flow",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_flow_rate",
"grid_options": {
"columns": 6
},
"icon": "mdi:chart-gantt",
"name": "Flow Rate",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_current_object",
"grid_options": {
"columns": 6
},
"icon": "mdi:cube-outline",
"name": "Object",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_object_count",
"grid_options": {
"columns": 6
},
"icon": "mdi:counter",
"name": "Object Count",
"type": "tile"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "Temperatures",
"icon": "mdi:thermometer",
"type": "heading"
},
{
"entity": "sensor.sparkx_i7_nozzle_temperature",
"grid_options": {
"columns": 4
},
"max": 300,
"min": 0,
"name": "Nozzle",
"severity": {
"green": 0,
"red": 240,
"yellow": 180
},
"type": "gauge",
"unit": "°C"
},
{
"entity": "sensor.sparkx_i7_bed_temperature",
"grid_options": {
"columns": 4
},
"max": 100,
"min": 0,
"name": "Bed",
"severity": {
"green": 0,
"red": 100,
"yellow": 60
},
"type": "gauge",
"unit": "°C"
},
{
"entity": "number.sparkx_i7_nozzle_target",
"grid_options": {
"columns": 6
},
"icon": "mdi:printer-3d-nozzle",
"name": "Nozzle Target",
"type": "tile"
},
{
"entity": "number.sparkx_i7_bed_target",
"grid_options": {
"columns": 6
},
"icon": "mdi:radiator",
"name": "Bed Target",
"type": "tile"
},
{
"entities": [
{
"color": "#ef5350",
"entity": "sensor.sparkx_i7_nozzle_temperature",
"name": "Actual"
},
{
"color": "#4caf50",
"entity": "number.sparkx_i7_nozzle_target",
"name": "Target"
}
],
"expand_legend": true,
"grid_options": {
"columns": "full"
},
"hours_to_show": 24,
"show_names": true,
"title": "Nozzle Temperature",
"type": "history-graph"
},
{
"entities": [
{
"color": "#42a5f5",
"entity": "sensor.sparkx_i7_bed_temperature",
"name": "Actual"
},
{
"color": "#4caf50",
"entity": "number.sparkx_i7_bed_target",
"name": "Target"
}
],
"expand_legend": true,
"grid_options": {
"columns": "full"
},
"hours_to_show": 24,
"show_names": true,
"title": "Bed Temperature",
"type": "history-graph"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "Controls",
"icon": "mdi:gesture-tap-button",
"type": "heading"
},
{
"entity": "button.sparkx_i7_pause_print",
"grid_options": {
"columns": 4
},
"icon": "mdi:pause",
"name": "Pause",
"tap_action": {
"action": "perform-action",
"perform_action": "button.press",
"target": {
"entity_id": "button.sparkx_i7_pause_print"
}
},
"type": "tile"
},
{
"entity": "button.sparkx_i7_resume_print",
"grid_options": {
"columns": 4
},
"icon": "mdi:play",
"name": "Resume",
"tap_action": {
"action": "perform-action",
"perform_action": "button.press",
"target": {
"entity_id": "button.sparkx_i7_resume_print"
}
},
"type": "tile"
},
{
"entity": "button.sparkx_i7_reconnect",
"grid_options": {
"columns": 4
},
"icon": "mdi:lan-connect",
"name": "Connect",
"tap_action": {
"action": "perform-action",
"perform_action": "button.press",
"target": {
"entity_id": "button.sparkx_i7_reconnect"
}
},
"type": "tile"
},
{
"entity": "button.sparkx_i7_stop_print",
"grid_options": {
"columns": 4
},
"icon": "mdi:cancel",
"name": "Cancel Print",
"tap_action": {
"action": "perform-action",
"perform_action": "button.press",
"target": {
"entity_id": "button.sparkx_i7_stop_print"
}
},
"type": "tile"
},
{
"entity": "button.sparkx_i7_home_xy_then_z",
"grid_options": {
"columns": 4
},
"icon": "mdi:home-circle",
"name": "Home",
"tap_action": {
"action": "perform-action",
"perform_action": "button.press",
"target": {
"entity_id": "button.sparkx_i7_home_xy_then_z"
}
},
"type": "tile"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "Filament",
"icon": "mdi:printer-3d-nozzle-outline",
"type": "heading"
},
{
"entity": "sensor.sparkx_i7_filament_weight_estimated",
"grid_options": {
"columns": 6,
"rows": 3
},
"max": 100,
"min": 0,
"name": "Filament Used",
"severity": {
"green": 0,
"red": 100,
"yellow": 60
},
"type": "gauge",
"unit": "g"
},
{
"entity": "input_number.sparkx_i7_filament_g_cm",
"grid_options": {
"columns": 6
},
"icon": "mdi:weight-kilogram",
"name": "g/cm",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_used_material_length",
"grid_options": {
"columns": 6
},
"icon": "mdi:counter",
"name": "Used Length",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_filament_cost",
"grid_options": {
"columns": 3
},
"icon": "mdi:cash",
"name": "Cost (total)",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_filament_cost_daily",
"grid_options": {
"columns": 3
},
"icon": "mdi:cash-multiple",
"name": "Today",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_filament_cost_weekly",
"grid_options": {
"columns": 3
},
"icon": "mdi:cash-multiple",
"name": "This Week",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_filament_cost_monthly",
"grid_options": {
"columns": 3
},
"icon": "mdi:cash-multiple",
"name": "This Month",
"type": "tile"
}
],
"type": "grid"
}
],
"title": "Print",
"type": "sections"
},
{
"max_columns": 2,
"path": "history",
"sections": [
{
"cards": [
{
"heading": "Temperature History",
"icon": "mdi:chart-line-variant",
"type": "heading"
},
{
"entities": [
{
"color": "#ef5350",
"entity": "sensor.sparkx_i7_nozzle_temperature",
"name": "Nozzle"
},
{
"color": "#ffab91",
"entity": "number.sparkx_i7_nozzle_target",
"name": "Nozzle Target"
},
{
"color": "#42a5f5",
"entity": "sensor.sparkx_i7_bed_temperature",
"name": "Bed"
},
{
"color": "#90caf9",
"entity": "number.sparkx_i7_bed_target",
"name": "Bed Target"
}
],
"expand_legend": true,
"grid_options": {
"columns": "full"
},
"hours_to_show": 24,
"show_names": true,
"title": "Temperatures (24h)",
"type": "history-graph"
},
{
"entities": [
{
"color": "#ef5350",
"entity": "sensor.sparkx_i7_nozzle_temperature",
"name": "Nozzle"
},
{
"color": "#42a5f5",
"entity": "sensor.sparkx_i7_bed_temperature",
"name": "Bed"
}
],
"expand_legend": true,
"grid_options": {
"columns": "full"
},
"hours_to_show": 168,
"show_names": true,
"title": "Temperatures (7 days)",
"type": "history-graph"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "Print Activity",
"icon": "mdi:chart-box-outline",
"type": "heading"
},
{
"apex_config": {
"chart": {
"height": 300
},
"stroke": {
"width": 1
}
},
"graph_span": "24h",
"grid_options": {
"columns": "full"
},
"header": {
"colorize_states": true,
"show": true,
"show_states": true,
"title": "Z Position (24h)"
},
"series": [
{
"color": "#ab47bc",
"curve": "straight",
"entity": "sensor.sparkx_i7_position_z",
"fill_raw": "last",
"name": "Current Z",
"type": "line"
}
],
"type": "custom:apexcharts-card"
},
{
"entities": [
{
"color": "#66bb6a",
"entity": "sensor.sparkx_i7_print_progress",
"name": "Progress"
}
],
"grid_options": {
"columns": "full"
},
"hours_to_show": 24,
"show_names": true,
"title": "Print Progress (24h)",
"type": "history-graph"
},
{
"entities": [
{
"color": "#26c6da",
"entity": "sensor.sparkx_i7_print_job_time",
"name": "Elapsed"
},
{
"color": "#ffa726",
"entity": "sensor.sparkx_i7_print_time_left",
"name": "Remaining"
}
],
"grid_options": {
"columns": "full"
},
"hours_to_show": 24,
"show_names": true,
"title": "Print Duration (24h)",
"type": "history-graph"
}
],
"type": "grid"
}
],
"title": "History",
"type": "sections"
},
{
"icon": "mdi:printer-3d-nozzle-outline",
"max_columns": 4,
"path": "cfs-fans",
"sections": [
{
"cards": [
{
"heading": "CFS Box 1",
"icon": "mdi:file-cabinet",
"type": "heading"
},
{
"entity": "sensor.sparkx_i7_cfs_box_1_temperature",
"grid_options": {
"columns": 6
},
"icon": "mdi:thermometer",
"name": "Temperature",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_cfs_box_1_humidity",
"grid_options": {
"columns": 6
},
"icon": "mdi:water-percent",
"name": "Humidity",
"type": "tile"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:printer-3d-nozzle",
"icon_color": "{% set c = states('sensor.sparkx_i7_cfs_box_1_slot_1_color')|default('')|string %}{% set core = c|replace('#','') %}{% if core|length >= 6 %}#{{ core[-6:] }}{% endif %}",
"multiline_secondary": true,
"name": "Slot 1",
"primary": "{{ states('sensor.sparkx_i7_cfs_box_1_slot_1_filament') }}",
"secondary": "{% set col = states('sensor.sparkx_i7_slot_1_color_name') %}{% if col %}{{ col }} · {% endif %}{{ states('sensor.sparkx_i7_cfs_box_1_slot_1_remaining') }}% left",
"type": "custom:mushroom-template-card"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:printer-3d-nozzle",
"icon_color": "{% set c = states('sensor.sparkx_i7_cfs_box_1_slot_2_color')|default('')|string %}{% set core = c|replace('#','') %}{% if core|length >= 6 %}#{{ core[-6:] }}{% endif %}",
"multiline_secondary": true,
"name": "Slot 2",
"primary": "{{ states('sensor.sparkx_i7_cfs_box_1_slot_2_filament') }}",
"secondary": "{% set col = states('sensor.sparkx_i7_slot_2_color_name') %}{% if col %}{{ col }} · {% endif %}{{ states('sensor.sparkx_i7_cfs_box_1_slot_2_remaining') }}% left",
"type": "custom:mushroom-template-card"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:printer-3d-nozzle",
"icon_color": "{% set c = states('sensor.sparkx_i7_cfs_box_1_slot_3_color')|default('')|string %}{% set core = c|replace('#','') %}{% if core|length >= 6 %}#{{ core[-6:] }}{% endif %}",
"multiline_secondary": true,
"name": "Slot 3",
"primary": "{{ states('sensor.sparkx_i7_cfs_box_1_slot_3_filament') }}",
"secondary": "{% set col = states('sensor.sparkx_i7_slot_3_color_name') %}{% if col %}{{ col }} · {% endif %}{{ states('sensor.sparkx_i7_cfs_box_1_slot_3_remaining') }}% left",
"type": "custom:mushroom-template-card"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:printer-3d-nozzle",
"icon_color": "{% set c = states('sensor.sparkx_i7_cfs_box_1_slot_4_color')|default('')|string %}{% set core = c|replace('#','') %}{% if core|length >= 6 %}#{{ core[-6:] }}{% endif %}",
"multiline_secondary": true,
"name": "Slot 4",
"primary": "{{ states('sensor.sparkx_i7_cfs_box_1_slot_4_filament') }}",
"secondary": "{% set col = states('sensor.sparkx_i7_slot_4_color_name') %}{% if col %}{{ col }} · {% endif %}{{ states('sensor.sparkx_i7_cfs_box_1_slot_4_remaining') }}% left",
"type": "custom:mushroom-template-card"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "External / Active",
"icon": "mdi:printer-3d",
"type": "heading"
},
{
"cards": [
{
"entity": "sensor.sparkx_i7_active_filament_slot",
"grid_options": {
"columns": 6
},
"icon": "mdi:swap-horizontal",
"name": "Active Slot",
"type": "tile"
},
{
"entity": "sensor.sparkx_i7_active_filament_slot",
"icon": "mdi:palette",
"icon_color": "{% set color = state_attr('sensor.sparkx_i7_active_filament_slot', 'color') | default('') | string %}{% set core = color | replace('#', '') %}{% if core | length >= 6 %}#{{ core[-6:] }}{% else %}var(--primary-text-color){% endif %}",
"multiline_secondary": true,
"name": "Active Color",
"primary": "{% set slot = states('sensor.sparkx_i7_active_filament_slot') %}{% if 'Slot 1' in slot %}{{ states('sensor.sparkx_i7_slot_1_color_name') }}{% elif 'Slot 2' in slot %}{{ states('sensor.sparkx_i7_slot_2_color_name') }}{% elif 'Slot 3' in slot %}{{ states('sensor.sparkx_i7_slot_3_color_name') }}{% elif 'Slot 4' in slot %}{{ states('sensor.sparkx_i7_slot_4_color_name') }}{% elif slot == 'External' %}{{ states('sensor.sparkx_i7_external_color_name') }}{% else %}Unknown{% endif %}",
"secondary": "{% set slot = states('sensor.sparkx_i7_active_filament_slot') %}{{ slot }}{% if state_attr('sensor.sparkx_i7_active_filament_slot', 'filament') %} · {{ state_attr('sensor.sparkx_i7_active_filament_slot', 'filament') }}{% endif %}",
"type": "custom:mushroom-template-card"
}
],
"grid_options": {
"columns": "full"
},
"type": "horizontal-stack"
},
{
"grid_options": {
"columns": 6
},
"icon": "mdi:lan-outline",
"icon_color": "{% set c = states('sensor.sparkx_i7_cfs_external_color')|default('')|string %}{% set core = c|replace('#','') %}{% if core|length >= 6 %}#{{ core[-6:] }}{% endif %}",
"multiline_secondary": true,
"name": "External Filament",
"primary": "{{ states('sensor.sparkx_i7_cfs_external_filament') }}",
"secondary": "{% set col = states('sensor.sparkx_i7_external_color_name') %}{% if col %}{{ col }} · {% endif %}{{ states('sensor.sparkx_i7_cfs_external_remaining') }}% left",
"type": "custom:mushroom-template-card"
},
{
"entity": "sensor.sparkx_i7_filament_status",
"grid_options": {
"columns": 6
},
"icon": "mdi:printer-3d-nozzle-alert",
"name": "Filament Status",
"type": "tile"
}
],
"type": "grid"
},
{
"cards": [
{
"heading": "Fans",
"icon": "mdi:fan",
"type": "heading"
},
{
"entity": "fan.sparkx_i7_model_fan",
"features": [
{
"type": "fan-speed"
}
],
"grid_options": {
"columns": 4
},
"icon": "mdi:fan",
"name": "Model Fan",
"type": "tile"
},
{
"entity": "fan.sparkx_i7_case_fan",
"features": [
{
"type": "fan-speed"
}
],
"grid_options": {
"columns": 4
},
"icon": "mdi:fan",
"name": "Case Fan",
"type": "tile"
},
{
"entity": "fan.sparkx_i7_side_fan",
"features": [
{
"type": "fan-speed"
}
],
"grid_options": {
"columns": 4
},
"icon": "mdi:fan",
"name": "Side Fan",
"type": "tile"
}
],
"type": "grid"
}
],
"title": "CFS / Fans",
"type": "sections"
}
]
}
}
}