10 files
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"domain": "ha_creality_ws",
|
||||
"name": "Creality WebSocket Integration",
|
||||
"after_dependencies": ["go2rtc"],
|
||||
"codeowners": ["@3dg1luk43"],
|
||||
"config_flow": true,
|
||||
"dependencies": ["lovelace", "http", "frontend", "persistent_notification"],
|
||||
"documentation": "https://github.com/3dg1luk43/ha_creality_ws",
|
||||
"iot_class": "local_push",
|
||||
"issue_tracker": "https://github.com/3dg1luk43/ha_creality_ws/issues",
|
||||
"loggers": ["custom_components.ha_creality_ws"],
|
||||
"requirements": [
|
||||
"websockets>=10.4",
|
||||
"go2rtc-client>=0.1.0"
|
||||
],
|
||||
"version": "0.9.7",
|
||||
"zeroconf": [
|
||||
{ "type": "_http._tcp.local.", "name": "*creality*" },
|
||||
{ "type": "_workstation._tcp.local.", "name": "*creality*" },
|
||||
{ "type": "_http._tcp.local.", "name": "*k1*" },
|
||||
{ "type": "_workstation._tcp.local.", "name": "*k1*" },
|
||||
{ "type": "_http._tcp.local.", "name": "*k2*" },
|
||||
{ "type": "_workstation._tcp.local.", "name": "*k2*" }
|
||||
]
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
diagnostic_dump:
|
||||
fields:
|
||||
include_sensitive_data:
|
||||
required: false
|
||||
default: false
|
||||
selector:
|
||||
boolean:
|
||||
|
||||
request_cfs_info:
|
||||
fields:
|
||||
device_id:
|
||||
selector:
|
||||
device:
|
||||
integration: ha_creality_ws
|
||||
multiple: true
|
||||
@@ -0,0 +1,198 @@
|
||||
{
|
||||
"config": {
|
||||
"step": {
|
||||
"user": {
|
||||
"title": "Connect to Creality Printer",
|
||||
"description": "Enter the IP address of your Creality K-series printer. The printer must be unlocked (root access not required) and on the same network.",
|
||||
"data": {
|
||||
"host": "IP Address",
|
||||
"name": "Friendly Name"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"cannot_connect": "Failed to connect to printer. Ensure IP is correct and printer is ON.",
|
||||
"not_K": "Connection refused or not a supported Creality K-series printer.",
|
||||
"already_configured": "This printer is already configured."
|
||||
},
|
||||
"abort": {
|
||||
"already_configured": "Device is already configured",
|
||||
"cannot_connect": "Failed to connect",
|
||||
"not_K": "Not a K-series printer"
|
||||
}
|
||||
},
|
||||
"options": {
|
||||
"step": {
|
||||
"init": {
|
||||
"title": "Printer Configuration",
|
||||
"description": "Choose a settings group to edit. Each group opens its own page so its options always load fresh.",
|
||||
"menu_options": {
|
||||
"camera": "Camera",
|
||||
"notifications": "Notifications",
|
||||
"power": "Power switch",
|
||||
"connection": "Connection & performance",
|
||||
"save": "Save and apply"
|
||||
}
|
||||
},
|
||||
"camera": {
|
||||
"title": "Camera",
|
||||
"description": "{camera_help}",
|
||||
"data": {
|
||||
"camera_mode": "Camera Streaming Mode",
|
||||
"go2rtc_url": "External go2rtc Host/URL (if needed)",
|
||||
"go2rtc_port": "External go2rtc Port",
|
||||
"custom_camera_url": "Custom Camera URL (http(s) MJPEG/snapshot or rtsp://)"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"title": "Notifications",
|
||||
"data": {
|
||||
"notify_device": "Notification Device",
|
||||
"notify_completed": "Notify when Completed",
|
||||
"notify_error": "Notify on Error",
|
||||
"notify_minutes_to_end": "Notify before Completion",
|
||||
"minutes_to_end_value": "Minutes before Completion"
|
||||
}
|
||||
},
|
||||
"power": {
|
||||
"title": "Power switch",
|
||||
"description": "{power_help}",
|
||||
"data": {
|
||||
"power_switch_enabled": "Enable Power Switch Detection",
|
||||
"power_switch": "Power Switch Entity"
|
||||
}
|
||||
},
|
||||
"connection": {
|
||||
"title": "Connection & performance",
|
||||
"data": {
|
||||
"host": "Printer IP Address",
|
||||
"polling_rate": "Polling Rate (seconds, 0 = real-time)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"invalid_camera_url": "Enter a full URL including the scheme, e.g. http://192.168.1.50:8080/?action=stream or rtsp://192.168.1.50:554/stream."
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
"sensor": {
|
||||
"bed_temperature": { "name": "Bed Temperature" },
|
||||
"chamber_temperature": { "name": "Chamber Temperature" },
|
||||
"nozzle_temperature": { "name": "Nozzle Temperature" },
|
||||
"print_progress": { "name": "Print Progress" },
|
||||
"total_layers": { "name": "Total Layers" },
|
||||
"current_layer": { "name": "Working Layer" },
|
||||
"position_x": { "name": "Position X" },
|
||||
"position_y": { "name": "Position Y" },
|
||||
"position_z": { "name": "Position Z" },
|
||||
"feedrate_pct": { "name": "Print Speed" },
|
||||
"flowrate_pct": { "name": "Flow Rate" },
|
||||
"system": { "name": "System" },
|
||||
"model_info": { "name": "Model" },
|
||||
"filament_status": {
|
||||
"name": "Filament Status",
|
||||
"state": {
|
||||
"normal": "Normal",
|
||||
"runout": "Filament Runout",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
},
|
||||
"print_status": {
|
||||
"name": "Print Status",
|
||||
"state": {
|
||||
"off": "Off",
|
||||
"unknown": "Unknown",
|
||||
"error": "Error",
|
||||
"self-testing": "Self-Testing",
|
||||
"completed": "Completed",
|
||||
"paused": "Paused",
|
||||
"stopped": "Stopped",
|
||||
"printing": "Printing",
|
||||
"processing": "Processing",
|
||||
"idle": "Idle"
|
||||
}
|
||||
},
|
||||
"used_material_length": { "name": "Used Material Length" },
|
||||
"print_job_time": { "name": "Print Job Time" },
|
||||
"print_left_time": { "name": "Print Time Left" },
|
||||
"real_time_flow": { "name": "Real-Time Flow" },
|
||||
"current_object": { "name": "Current Object" },
|
||||
"object_count": { "name": "Object Count" },
|
||||
"print_control": {
|
||||
"name": "Print Control",
|
||||
"state": {
|
||||
"queued": "Queued",
|
||||
"ok": "OK",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
},
|
||||
"max_nozzle_temp": { "name": "Max Nozzle Temperature" },
|
||||
"max_bed_temp": { "name": "Max Bed Temperature" },
|
||||
"max_chamber_temp": { "name": "Max Chamber Temperature" },
|
||||
"active_filament_slot": { "name": "Active Filament Slot" },
|
||||
"cfs_box_temp": { "name": "CFS Box {box_id} Temperature" },
|
||||
"cfs_box_humidity": { "name": "CFS Box {box_id} Humidity" },
|
||||
"cfs_slot_filament": { "name": "CFS Box {box_id} Slot {slot} Filament" },
|
||||
"cfs_slot_color": { "name": "CFS Box {box_id} Slot {slot} Color" },
|
||||
"cfs_slot_percent": { "name": "CFS Box {box_id} Slot {slot} Remaining" },
|
||||
"cfs_ext_filament": { "name": "CFS External Filament" },
|
||||
"cfs_ext_color": { "name": "CFS External Color" },
|
||||
"cfs_ext_percent": { "name": "CFS External Remaining" }
|
||||
},
|
||||
"button": {
|
||||
"home_xyz": { "name": "Home (XY then Z)" },
|
||||
"pause_print": { "name": "Pause Print" },
|
||||
"resume_print": { "name": "Resume Print" },
|
||||
"stop_print": { "name": "Stop Print" },
|
||||
"reconnect": { "name": "Reconnect" }
|
||||
},
|
||||
"number": {
|
||||
"print_tuning_pct": { "name": "Print Tuning" },
|
||||
"nozzle_target": { "name": "Nozzle Target" },
|
||||
"bed_target": { "name": "Bed Target" },
|
||||
"chamber_target": { "name": "Chamber Target" },
|
||||
"model_fan_pct": { "name": "Model Fan" },
|
||||
"case_fan_pct": { "name": "Case Fan" },
|
||||
"side_fan_pct": { "name": "Side Fan" }
|
||||
},
|
||||
"fan": {
|
||||
"model_fan": { "name": "Model Fan" },
|
||||
"case_fan": { "name": "Case Fan" },
|
||||
"side_fan": { "name": "Side Fan" }
|
||||
},
|
||||
"light": {
|
||||
"light": { "name": "Light" }
|
||||
},
|
||||
"switch": {
|
||||
"light": { "name": "Light" }
|
||||
},
|
||||
"camera": {
|
||||
"printer_camera": { "name": "Printer Camera" }
|
||||
},
|
||||
"image": {
|
||||
"current_print_preview": { "name": "Current Print Preview" }
|
||||
}
|
||||
},
|
||||
"services": {
|
||||
"diagnostic_dump": {
|
||||
"name": "Diagnostic Dump",
|
||||
"description": "Dump all WebSocket telemetry data from connected Creality printers to JSON format for troubleshooting and analysis.",
|
||||
"fields": {
|
||||
"include_sensitive_data": {
|
||||
"name": "Include Sensitive Data",
|
||||
"description": "Whether to include potentially sensitive data in the diagnostic output (currently unused, reserved for future use)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"request_cfs_info": {
|
||||
"name": "Request CFS Info",
|
||||
"description": "Manually request the printer to send the latest CFS (multifilament) information including temperatures, humidity, and filament details.",
|
||||
"fields": {
|
||||
"device_id": {
|
||||
"name": "Device",
|
||||
"description": "The printer(s) to request info from. If omitted, all connected printers will be queried."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,198 @@
|
||||
{
|
||||
"config": {
|
||||
"step": {
|
||||
"user": {
|
||||
"title": "Connect to Creality Printer",
|
||||
"description": "Enter the IP address of your Creality K-series printer. The printer must be unlocked (root access not required) and on the same network.",
|
||||
"data": {
|
||||
"host": "IP Address",
|
||||
"name": "Friendly Name"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"cannot_connect": "Failed to connect to printer. Ensure IP is correct and printer is ON.",
|
||||
"not_K": "Connection refused or not a supported Creality K-series printer.",
|
||||
"already_configured": "This printer is already configured."
|
||||
},
|
||||
"abort": {
|
||||
"already_configured": "Device is already configured",
|
||||
"cannot_connect": "Failed to connect",
|
||||
"not_K": "Not a K-series printer"
|
||||
}
|
||||
},
|
||||
"options": {
|
||||
"step": {
|
||||
"init": {
|
||||
"title": "Printer Configuration",
|
||||
"description": "Choose a settings group to edit. Each group opens its own page so its options always load fresh.",
|
||||
"menu_options": {
|
||||
"camera": "Camera",
|
||||
"notifications": "Notifications",
|
||||
"power": "Power switch",
|
||||
"connection": "Connection & performance",
|
||||
"save": "Save and apply"
|
||||
}
|
||||
},
|
||||
"camera": {
|
||||
"title": "Camera",
|
||||
"description": "{camera_help}",
|
||||
"data": {
|
||||
"camera_mode": "Camera Streaming Mode",
|
||||
"go2rtc_url": "External go2rtc Host/URL (if needed)",
|
||||
"go2rtc_port": "External go2rtc Port",
|
||||
"custom_camera_url": "Custom Camera URL (http(s) MJPEG/snapshot or rtsp://)"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"title": "Notifications",
|
||||
"data": {
|
||||
"notify_device": "Notification Device",
|
||||
"notify_completed": "Notify when Completed",
|
||||
"notify_error": "Notify on Error",
|
||||
"notify_minutes_to_end": "Notify before Completion",
|
||||
"minutes_to_end_value": "Minutes before Completion"
|
||||
}
|
||||
},
|
||||
"power": {
|
||||
"title": "Power switch",
|
||||
"description": "{power_help}",
|
||||
"data": {
|
||||
"power_switch_enabled": "Enable Power Switch Detection",
|
||||
"power_switch": "Power Switch Entity"
|
||||
}
|
||||
},
|
||||
"connection": {
|
||||
"title": "Connection & performance",
|
||||
"data": {
|
||||
"host": "Printer IP Address",
|
||||
"polling_rate": "Polling Rate (seconds, 0 = real-time)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"invalid_camera_url": "Enter a full URL including the scheme, e.g. http://192.168.1.50:8080/?action=stream or rtsp://192.168.1.50:554/stream."
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
"sensor": {
|
||||
"bed_temperature": { "name": "Bed Temperature" },
|
||||
"chamber_temperature": { "name": "Chamber Temperature" },
|
||||
"nozzle_temperature": { "name": "Nozzle Temperature" },
|
||||
"print_progress": { "name": "Print Progress" },
|
||||
"total_layers": { "name": "Total Layers" },
|
||||
"current_layer": { "name": "Working Layer" },
|
||||
"position_x": { "name": "Position X" },
|
||||
"position_y": { "name": "Position Y" },
|
||||
"position_z": { "name": "Position Z" },
|
||||
"feedrate_pct": { "name": "Print Speed" },
|
||||
"flowrate_pct": { "name": "Flow Rate" },
|
||||
"system": { "name": "System" },
|
||||
"model_info": { "name": "Model" },
|
||||
"filament_status": {
|
||||
"name": "Filament Status",
|
||||
"state": {
|
||||
"normal": "Normal",
|
||||
"runout": "Filament Runout",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
},
|
||||
"print_status": {
|
||||
"name": "Print Status",
|
||||
"state": {
|
||||
"off": "Off",
|
||||
"unknown": "Unknown",
|
||||
"error": "Error",
|
||||
"self-testing": "Self-Testing",
|
||||
"completed": "Completed",
|
||||
"paused": "Paused",
|
||||
"stopped": "Stopped",
|
||||
"printing": "Printing",
|
||||
"processing": "Processing",
|
||||
"idle": "Idle"
|
||||
}
|
||||
},
|
||||
"used_material_length": { "name": "Used Material Length" },
|
||||
"print_job_time": { "name": "Print Job Time" },
|
||||
"print_left_time": { "name": "Print Time Left" },
|
||||
"real_time_flow": { "name": "Real-Time Flow" },
|
||||
"current_object": { "name": "Current Object" },
|
||||
"object_count": { "name": "Object Count" },
|
||||
"print_control": {
|
||||
"name": "Print Control",
|
||||
"state": {
|
||||
"queued": "Queued",
|
||||
"ok": "OK",
|
||||
"unknown": "Unknown"
|
||||
}
|
||||
},
|
||||
"max_nozzle_temp": { "name": "Max Nozzle Temperature" },
|
||||
"max_bed_temp": { "name": "Max Bed Temperature" },
|
||||
"max_chamber_temp": { "name": "Max Chamber Temperature" },
|
||||
"active_filament_slot": { "name": "Active Filament Slot" },
|
||||
"cfs_box_temp": { "name": "CFS Box {box_id} Temperature" },
|
||||
"cfs_box_humidity": { "name": "CFS Box {box_id} Humidity" },
|
||||
"cfs_slot_filament": { "name": "CFS Box {box_id} Slot {slot} Filament" },
|
||||
"cfs_slot_color": { "name": "CFS Box {box_id} Slot {slot} Color" },
|
||||
"cfs_slot_percent": { "name": "CFS Box {box_id} Slot {slot} Remaining" },
|
||||
"cfs_ext_filament": { "name": "CFS External Filament" },
|
||||
"cfs_ext_color": { "name": "CFS External Color" },
|
||||
"cfs_ext_percent": { "name": "CFS External Remaining" }
|
||||
},
|
||||
"button": {
|
||||
"home_xyz": { "name": "Home (XY then Z)" },
|
||||
"pause_print": { "name": "Pause Print" },
|
||||
"resume_print": { "name": "Resume Print" },
|
||||
"stop_print": { "name": "Stop Print" },
|
||||
"reconnect": { "name": "Reconnect" }
|
||||
},
|
||||
"number": {
|
||||
"print_tuning_pct": { "name": "Print Tuning" },
|
||||
"nozzle_target": { "name": "Nozzle Target" },
|
||||
"bed_target": { "name": "Bed Target" },
|
||||
"chamber_target": { "name": "Chamber Target" },
|
||||
"model_fan_pct": { "name": "Model Fan" },
|
||||
"case_fan_pct": { "name": "Case Fan" },
|
||||
"side_fan_pct": { "name": "Side Fan" }
|
||||
},
|
||||
"fan": {
|
||||
"model_fan": { "name": "Model Fan" },
|
||||
"case_fan": { "name": "Case Fan" },
|
||||
"side_fan": { "name": "Side Fan" }
|
||||
},
|
||||
"light": {
|
||||
"light": { "name": "Light" }
|
||||
},
|
||||
"switch": {
|
||||
"light": { "name": "Light" }
|
||||
},
|
||||
"camera": {
|
||||
"printer_camera": { "name": "Printer Camera" }
|
||||
},
|
||||
"image": {
|
||||
"current_print_preview": { "name": "Current Print Preview" }
|
||||
}
|
||||
},
|
||||
"services": {
|
||||
"diagnostic_dump": {
|
||||
"name": "Diagnostic Dump",
|
||||
"description": "Dump all WebSocket telemetry data from connected Creality printers to JSON format for troubleshooting and analysis.",
|
||||
"fields": {
|
||||
"include_sensitive_data": {
|
||||
"name": "Include Sensitive Data",
|
||||
"description": "Whether to include potentially sensitive data in the diagnostic output (currently unused, reserved for future use)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"request_cfs_info": {
|
||||
"name": "Request CFS Info",
|
||||
"description": "Manually request the printer to send the latest CFS (multifilament) information including temperatures, humidity, and filament details.",
|
||||
"fields": {
|
||||
"device_id": {
|
||||
"name": "Device",
|
||||
"description": "The printer(s) to request info from. If omitted, all connected printers will be queried."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,198 @@
|
||||
{
|
||||
"config": {
|
||||
"step": {
|
||||
"user": {
|
||||
"title": "Conectar a la impresora Creality",
|
||||
"description": "Introduce la dirección IP de tu impresora Creality de la serie K. La impresora debe estar desbloqueada (no se requiere acceso de superusuario) y en la misma red.",
|
||||
"data": {
|
||||
"host": "Dirección IP",
|
||||
"name": "Nombre descriptivo"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"cannot_connect": "Error al conectar con la impresora. Asegúrate de que la dirección IP sea correcta y de que la impresora esté encendida.",
|
||||
"not_K": "Conexión rechazada o no es una impresora Creality de la serie K compatible.",
|
||||
"already_configured": "Esta impresora ya está configurada."
|
||||
},
|
||||
"abort": {
|
||||
"already_configured": "El dispositivo ya está configurado",
|
||||
"cannot_connect": "Error de conexión",
|
||||
"not_K": "No es una impresora de la serie K"
|
||||
}
|
||||
},
|
||||
"options": {
|
||||
"step": {
|
||||
"init": {
|
||||
"title": "Configuración de la impresora",
|
||||
"description": "Elige un grupo de ajustes para editar. Cada grupo se abre en su propia página, por lo que sus opciones siempre se cargan actualizadas.",
|
||||
"menu_options": {
|
||||
"camera": "Cámara",
|
||||
"notifications": "Notificaciones",
|
||||
"power": "Interruptor de encendido",
|
||||
"connection": "Conexión y rendimiento",
|
||||
"save": "Guardar y aplicar"
|
||||
}
|
||||
},
|
||||
"camera": {
|
||||
"title": "Cámara",
|
||||
"description": "{camera_help}",
|
||||
"data": {
|
||||
"camera_mode": "Modo de transmisión de la cámara",
|
||||
"go2rtc_url": "Servidor o dirección externa de go2rtc (si es necesario)",
|
||||
"go2rtc_port": "Puerto externo de go2rtc",
|
||||
"custom_camera_url": "URL de cámara personalizada (MJPEG/snapshot http(s) o rtsp://)"
|
||||
}
|
||||
},
|
||||
"notifications": {
|
||||
"title": "Notificaciones",
|
||||
"data": {
|
||||
"notify_device": "Dispositivo de notificación",
|
||||
"notify_completed": "Notificar al finalizar",
|
||||
"notify_error": "Notificar en caso de error",
|
||||
"notify_minutes_to_end": "Notificar antes de finalizar",
|
||||
"minutes_to_end_value": "Minutos antes de finalizar"
|
||||
}
|
||||
},
|
||||
"power": {
|
||||
"title": "Interruptor de encendido",
|
||||
"description": "{power_help}",
|
||||
"data": {
|
||||
"power_switch_enabled": "Activar la detección del interruptor de encendido",
|
||||
"power_switch": "Entidad del interruptor de encendido"
|
||||
}
|
||||
},
|
||||
"connection": {
|
||||
"title": "Conexión y rendimiento",
|
||||
"data": {
|
||||
"host": "Dirección IP de la impresora",
|
||||
"polling_rate": "Frecuencia de actualización (segundos, 0 = tiempo real)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"error": {
|
||||
"invalid_camera_url": "Introduce una URL completa incluyendo el esquema, p. ej. http://192.168.1.50:8080/?action=stream o rtsp://192.168.1.50:554/stream."
|
||||
}
|
||||
},
|
||||
"entity": {
|
||||
"sensor": {
|
||||
"bed_temperature": { "name": "Temperatura de la cama" },
|
||||
"chamber_temperature": { "name": "Temperatura de la cámara" },
|
||||
"nozzle_temperature": { "name": "Temperatura de la boquilla" },
|
||||
"print_progress": { "name": "Progreso de impresión" },
|
||||
"total_layers": { "name": "Capas totales" },
|
||||
"current_layer": { "name": "Capa actual" },
|
||||
"position_x": { "name": "Posición X" },
|
||||
"position_y": { "name": "Posición Y" },
|
||||
"position_z": { "name": "Posición Z" },
|
||||
"feedrate_pct": { "name": "Velocidad de impresión" },
|
||||
"flowrate_pct": { "name": "Tasa de flujo" },
|
||||
"system": { "name": "Sistema" },
|
||||
"model_info": { "name": "Modelo" },
|
||||
"filament_status": {
|
||||
"name": "Estado del filamento",
|
||||
"state": {
|
||||
"normal": "Normal",
|
||||
"runout": "Filamento agotado",
|
||||
"unknown": "Desconocido"
|
||||
}
|
||||
},
|
||||
"print_status": {
|
||||
"name": "Estado de impresión",
|
||||
"state": {
|
||||
"off": "Apagada",
|
||||
"unknown": "Desconocido",
|
||||
"error": "Error",
|
||||
"self-testing": "Autocomprobación",
|
||||
"completed": "Completada",
|
||||
"paused": "En pausa",
|
||||
"stopped": "Detenida",
|
||||
"printing": "Imprimiendo",
|
||||
"processing": "Procesando",
|
||||
"idle": "En reposo"
|
||||
}
|
||||
},
|
||||
"used_material_length": { "name": "Material usado" },
|
||||
"print_job_time": { "name": "Tiempo de trabajo de impresión" },
|
||||
"print_left_time": { "name": "Tiempo restante de impresión" },
|
||||
"real_time_flow": { "name": "Flujo en tiempo real" },
|
||||
"current_object": { "name": "Objeto actual" },
|
||||
"object_count": { "name": "Cantidad de objetos" },
|
||||
"print_control": {
|
||||
"name": "Control de impresión",
|
||||
"state": {
|
||||
"queued": "En cola",
|
||||
"ok": "OK",
|
||||
"unknown": "Desconocido"
|
||||
}
|
||||
},
|
||||
"max_nozzle_temp": { "name": "Temperatura máxima de la boquilla" },
|
||||
"max_bed_temp": { "name": "Temperatura máxima de la cama" },
|
||||
"max_chamber_temp": { "name": "Temperatura máxima de la cámara" },
|
||||
"active_filament_slot": { "name": "Ranura de filamento activa" },
|
||||
"cfs_box_temp": { "name": "Temperatura de la caja CFS {box_id}" },
|
||||
"cfs_box_humidity": { "name": "Humedad de la caja CFS {box_id}" },
|
||||
"cfs_slot_filament": { "name": "Filamento — caja CFS {box_id}, ranura {slot}" },
|
||||
"cfs_slot_color": { "name": "Color — caja CFS {box_id}, ranura {slot}" },
|
||||
"cfs_slot_percent": { "name": "Restante — caja CFS {box_id}, ranura {slot}" },
|
||||
"cfs_ext_filament": { "name": "Filamento externo CFS" },
|
||||
"cfs_ext_color": { "name": "Color externo CFS" },
|
||||
"cfs_ext_percent": { "name": "Restante externo CFS" }
|
||||
},
|
||||
"button": {
|
||||
"home_xyz": { "name": "Inicio (XY y luego Z)" },
|
||||
"pause_print": { "name": "Pausar la impresión" },
|
||||
"resume_print": { "name": "Reanudar la impresión" },
|
||||
"stop_print": { "name": "Detener la impresión" },
|
||||
"reconnect": { "name": "Reconectar" }
|
||||
},
|
||||
"number": {
|
||||
"print_tuning_pct": { "name": "Ajuste de impresión" },
|
||||
"nozzle_target": { "name": "Objetivo de la boquilla" },
|
||||
"bed_target": { "name": "Objetivo de la cama" },
|
||||
"chamber_target": { "name": "Objetivo de la cámara" },
|
||||
"model_fan_pct": { "name": "Ventilador del modelo" },
|
||||
"case_fan_pct": { "name": "Ventilador de la carcasa" },
|
||||
"side_fan_pct": { "name": "Ventilador lateral" }
|
||||
},
|
||||
"fan": {
|
||||
"model_fan": { "name": "Ventilador del modelo" },
|
||||
"case_fan": { "name": "Ventilador de la carcasa" },
|
||||
"side_fan": { "name": "Ventilador lateral" }
|
||||
},
|
||||
"light": {
|
||||
"light": { "name": "Luz" }
|
||||
},
|
||||
"switch": {
|
||||
"light": { "name": "Luz" }
|
||||
},
|
||||
"camera": {
|
||||
"printer_camera": { "name": "Cámara de la impresora" }
|
||||
},
|
||||
"image": {
|
||||
"current_print_preview": { "name": "Vista previa de la impresión actual" }
|
||||
}
|
||||
},
|
||||
"services": {
|
||||
"diagnostic_dump": {
|
||||
"name": "Volcado de diagnóstico",
|
||||
"description": "Vuelca todos los datos de telemetría WebSocket de las impresoras Creality conectadas en formato JSON para resolución de problemas y análisis.",
|
||||
"fields": {
|
||||
"include_sensitive_data": {
|
||||
"name": "Incluir datos sensibles",
|
||||
"description": "Si se deben incluir datos potencialmente sensibles en la salida de diagnóstico (actualmente sin uso, reservado para uso futuro)"
|
||||
}
|
||||
}
|
||||
},
|
||||
"request_cfs_info": {
|
||||
"name": "Solicitar información del CFS",
|
||||
"description": "Solicita manualmente a la impresora que envíe la última información del CFS (sistema multifilamento), incluyendo temperaturas, humedad y detalles del filamento.",
|
||||
"fields": {
|
||||
"device_id": {
|
||||
"name": "Dispositivo",
|
||||
"description": "La(s) impresora(s) a las que solicitar información. Si se omite, se consultarán todas las impresoras conectadas."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
{
|
||||
"printer_card": {
|
||||
"status_unknown": "Unknown",
|
||||
"confirm_stop": "Are you sure you want to stop the print?",
|
||||
"confirm_power_off": "Are you sure you want to power off the printer?",
|
||||
"confirm_power_off_printing": "A print is in progress. Are you sure you want to power off the printer?",
|
||||
"chip_pause": "Pause",
|
||||
"chip_resume": "Resume",
|
||||
"chip_stop": "Stop",
|
||||
"chip_light": "Light",
|
||||
"chip_power": "Power",
|
||||
"chip_custom": "Custom Action",
|
||||
"editor_title": "Creality Printer Card Configuration",
|
||||
"tab_entities": "Entities",
|
||||
"tab_theme": "Theme",
|
||||
"group_layout": "Layout & Icons",
|
||||
"group_action_colors": "Action Colors",
|
||||
"group_status_area": "Status Area",
|
||||
"group_telemetry": "Telemetry",
|
||||
"color_pause_bg": "Pause Button Background",
|
||||
"color_pause_icon": "Pause Button Icon",
|
||||
"color_resume_bg": "Resume Button Background",
|
||||
"color_resume_icon": "Resume Button Icon",
|
||||
"color_stop_bg": "Stop Button Background",
|
||||
"color_stop_icon": "Stop Button Icon",
|
||||
"color_light_on_bg": "Light On Background",
|
||||
"color_light_off_bg": "Light Off Background",
|
||||
"color_light_icon_on": "Light Button Icon (On)",
|
||||
"color_light_icon_off": "Light Button Icon (Off)",
|
||||
"color_custom_bg": "Custom Button Background",
|
||||
"color_custom_icon": "Custom Button Icon",
|
||||
"color_status_icon": "Status Icon Color",
|
||||
"color_progress_ring": "Progress Ring Color",
|
||||
"color_status_bg": "Status Background",
|
||||
"color_telemetry_icon": "Telemetry Icon Color",
|
||||
"color_telemetry_text": "Telemetry Text Color",
|
||||
"btn_save": "Save",
|
||||
"btn_reset": "Reset to Defaults",
|
||||
"color_picker_hint": "Click to open color picker",
|
||||
"label_name": "Printer Name",
|
||||
"label_camera": "Camera",
|
||||
"label_status": "Print Status Sensor",
|
||||
"label_progress": "Print Progress Sensor (%)",
|
||||
"label_time_left": "Time Left Sensor",
|
||||
"label_nozzle": "Nozzle Temperature Sensor",
|
||||
"label_bed": "Bed Temperature Sensor",
|
||||
"label_box": "Chamber Temperature Sensor",
|
||||
"label_power": "Power Switch",
|
||||
"label_show_power_button": "Show Power Button",
|
||||
"label_layer": "Current Layer Sensor",
|
||||
"label_total_layers": "Total Layers Sensor",
|
||||
"label_light": "Light Switch",
|
||||
"label_pause_btn": "Pause Button",
|
||||
"label_resume_btn": "Resume Button",
|
||||
"label_stop_btn": "Stop Button",
|
||||
"label_custom_btn": "Custom Action Entity",
|
||||
"label_custom_btn_icon": "Custom Button Icon",
|
||||
"label_custom_btn_hidden": "Hide Custom Button",
|
||||
"label_button_order": "Button Order (list)",
|
||||
"helper_name": "Display name for the printer card",
|
||||
"helper_camera": "Camera entity for live video feed",
|
||||
"helper_status": "Sensor showing current print status",
|
||||
"helper_progress": "Sensor showing print progress (0-100%)",
|
||||
"helper_time_left": "Sensor showing remaining print time (seconds)",
|
||||
"helper_nozzle": "Sensor showing nozzle temperature",
|
||||
"helper_bed": "Sensor showing bed temperature",
|
||||
"helper_box": "Sensor showing chamber/enclosure temperature (optional)",
|
||||
"helper_power": "Optional power switch entity for the printer (shows a Power button when set)",
|
||||
"helper_show_power_button": "Show the Power button when a power switch entity is configured",
|
||||
"helper_layer": "Sensor showing current print layer",
|
||||
"helper_total_layers": "Sensor showing total print layers",
|
||||
"helper_light": "Switch entity for printer light control",
|
||||
"helper_pause_btn": "Button entity to pause printing",
|
||||
"helper_resume_btn": "Button entity to resume printing",
|
||||
"helper_stop_btn": "Button entity to stop printing",
|
||||
"helper_custom_btn": "Any entity to trigger (Button, Script, Switch, etc.)",
|
||||
"helper_custom_btn_icon": "Icon for the custom button",
|
||||
"helper_custom_btn_hidden": "Hide the custom button",
|
||||
"helper_button_order": "List of buttons to show in order (pause, resume, stop, light, power, custom)",
|
||||
"schema_button_order": "Button Order (pause, resume, stop, light, power, custom)",
|
||||
"schema_hide_custom": "Hide Custom Button",
|
||||
"schema_hide_box_temp": "Hide Chamber Temperature",
|
||||
"schema_pause_icon": "Pause Icon Override",
|
||||
"schema_resume_icon": "Resume Icon Override",
|
||||
"schema_stop_icon": "Stop Icon Override",
|
||||
"schema_light_icon": "Light Icon Override",
|
||||
"schema_power_icon": "Power Icon Override",
|
||||
"schema_custom_icon": "Custom Button Icon",
|
||||
"editor_error_title": "Editor Error",
|
||||
"editor_error_msg": "There was an error loading the visual editor. You can still edit your configuration using YAML.",
|
||||
"editor_error_prefix": "Error:"
|
||||
},
|
||||
"cfs_card": {
|
||||
"no_data": "No CFS data available",
|
||||
"ext_label": "EXT",
|
||||
"cfs_label": "CFS",
|
||||
"cfs_number_label": "CFS {number}",
|
||||
"label_card_title": "Card Title",
|
||||
"label_external_filament": "External Filament",
|
||||
"label_external_color": "External Color",
|
||||
"label_external_percent": "External Percent",
|
||||
"label_box_temp": "Box {box} Temperature",
|
||||
"label_box_humidity": "Box {box} Humidity",
|
||||
"label_slot_filament": "Box {box} Slot {slot} Filament",
|
||||
"label_slot_color": "Box {box} Slot {slot} Color",
|
||||
"label_slot_percent": "Box {box} Slot {slot} Remaining Percent",
|
||||
"schema_compact_view": "Compact View (Mini Mode)",
|
||||
"schema_show_type_in_mini": "Show Filament Type in Mini Mode",
|
||||
"tab_entities": "Entities",
|
||||
"tab_theme": "Theme"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
{
|
||||
"printer_card": {
|
||||
"status_unknown": "Desconocido",
|
||||
"confirm_stop": "¿Seguro que deseas detener la impresión?",
|
||||
"confirm_power_off": "¿Seguro que deseas apagar la impresora?",
|
||||
"confirm_power_off_printing": "Hay una impresión en curso. ¿Seguro que deseas apagar la impresora?",
|
||||
"chip_pause": "Pausar",
|
||||
"chip_resume": "Reanudar",
|
||||
"chip_stop": "Detener",
|
||||
"chip_light": "Luz",
|
||||
"chip_power": "Encendido",
|
||||
"chip_custom": "Acción personalizada",
|
||||
"editor_title": "Configuración de la tarjeta Creality",
|
||||
"tab_entities": "Entidades",
|
||||
"tab_theme": "Tema",
|
||||
"group_layout": "Disposición e iconos",
|
||||
"group_action_colors": "Colores de acción",
|
||||
"group_status_area": "Área de estado",
|
||||
"group_telemetry": "Telemetría",
|
||||
"color_pause_bg": "Fondo del botón Pausar",
|
||||
"color_pause_icon": "Icono del botón Pausar",
|
||||
"color_resume_bg": "Fondo del botón Reanudar",
|
||||
"color_resume_icon": "Icono del botón Reanudar",
|
||||
"color_stop_bg": "Fondo del botón Detener",
|
||||
"color_stop_icon": "Icono del botón Detener",
|
||||
"color_light_on_bg": "Fondo de la luz encendida",
|
||||
"color_light_off_bg": "Fondo de la luz apagada",
|
||||
"color_light_icon_on": "Icono de la luz (encendida)",
|
||||
"color_light_icon_off": "Icono de la luz (apagada)",
|
||||
"color_custom_bg": "Fondo del botón personalizado",
|
||||
"color_custom_icon": "Icono del botón personalizado",
|
||||
"color_status_icon": "Color del icono de estado",
|
||||
"color_progress_ring": "Color del anillo de progreso",
|
||||
"color_status_bg": "Fondo de estado",
|
||||
"color_telemetry_icon": "Color del icono de telemetría",
|
||||
"color_telemetry_text": "Color del texto de telemetría",
|
||||
"btn_save": "Guardar",
|
||||
"btn_reset": "Restablecer valores predeterminados",
|
||||
"color_picker_hint": "Haz clic para abrir el selector de color",
|
||||
"label_name": "Nombre de la impresora",
|
||||
"label_camera": "Cámara",
|
||||
"label_status": "Sensor de estado de impresión",
|
||||
"label_progress": "Sensor de progreso de impresión (%)",
|
||||
"label_time_left": "Sensor de tiempo restante",
|
||||
"label_nozzle": "Sensor de temperatura de la boquilla",
|
||||
"label_bed": "Sensor de temperatura de la cama",
|
||||
"label_box": "Sensor de temperatura de la cámara",
|
||||
"label_power": "Interruptor de encendido",
|
||||
"label_show_power_button": "Mostrar el botón de encendido",
|
||||
"label_layer": "Sensor de capa actual",
|
||||
"label_total_layers": "Sensor de capas totales",
|
||||
"label_light": "Interruptor de la luz",
|
||||
"label_pause_btn": "Botón de pausa",
|
||||
"label_resume_btn": "Botón de reanudación",
|
||||
"label_stop_btn": "Botón de parada",
|
||||
"label_custom_btn": "Entidad de acción personalizada",
|
||||
"label_custom_btn_icon": "Icono del botón personalizado",
|
||||
"label_custom_btn_hidden": "Ocultar el botón personalizado",
|
||||
"label_button_order": "Orden de los botones (lista)",
|
||||
"helper_name": "Nombre de visualización de la tarjeta de la impresora",
|
||||
"helper_camera": "Entidad de cámara para vídeo en directo",
|
||||
"helper_status": "Sensor que muestra el estado de impresión actual",
|
||||
"helper_progress": "Sensor que muestra el progreso de impresión (0-100 %)",
|
||||
"helper_time_left": "Sensor que muestra el tiempo de impresión restante (segundos)",
|
||||
"helper_nozzle": "Sensor que muestra la temperatura de la boquilla",
|
||||
"helper_bed": "Sensor que muestra la temperatura de la cama",
|
||||
"helper_box": "Sensor que muestra la temperatura de la cámara/recinto (opcional)",
|
||||
"helper_power": "Entidad del interruptor de encendido opcional (muestra un botón de encendido cuando se establece)",
|
||||
"helper_show_power_button": "Mostrar el botón de encendido cuando hay un interruptor configurado",
|
||||
"helper_layer": "Sensor que muestra la capa de impresión actual",
|
||||
"helper_total_layers": "Sensor que muestra el total de capas de impresión",
|
||||
"helper_light": "Entidad de interruptor para el control de la luz de la impresora",
|
||||
"helper_pause_btn": "Entidad de botón para pausar la impresión",
|
||||
"helper_resume_btn": "Entidad de botón para reanudar la impresión",
|
||||
"helper_stop_btn": "Entidad de botón para detener la impresión",
|
||||
"helper_custom_btn": "Cualquier entidad a activar (botón, script, interruptor, etc.)",
|
||||
"helper_custom_btn_icon": "Icono del botón personalizado",
|
||||
"helper_custom_btn_hidden": "Ocultar el botón personalizado",
|
||||
"helper_button_order": "Lista de botones en orden (pause, resume, stop, light, power, custom)",
|
||||
"schema_button_order": "Orden de los botones (pause, resume, stop, light, power, custom)",
|
||||
"schema_hide_custom": "Ocultar el botón personalizado",
|
||||
"schema_hide_box_temp": "Ocultar la temperatura de la cámara",
|
||||
"schema_pause_icon": "Icono de pausa (sustitución)",
|
||||
"schema_resume_icon": "Icono de reanudación (sustitución)",
|
||||
"schema_stop_icon": "Icono de parada (sustitución)",
|
||||
"schema_light_icon": "Icono de la luz (sustitución)",
|
||||
"schema_power_icon": "Icono de encendido (sustitución)",
|
||||
"schema_custom_icon": "Icono del botón personalizado",
|
||||
"editor_error_title": "Error del editor",
|
||||
"editor_error_msg": "Se ha producido un error al cargar el editor visual. Aún puedes editar la configuración en YAML.",
|
||||
"editor_error_prefix": "Error:"
|
||||
},
|
||||
"cfs_card": {
|
||||
"no_data": "No hay datos del CFS disponibles",
|
||||
"ext_label": "EXT",
|
||||
"cfs_label": "CFS",
|
||||
"cfs_number_label": "CFS {number}",
|
||||
"label_card_title": "Título de la tarjeta",
|
||||
"label_external_filament": "Filamento externo",
|
||||
"label_external_color": "Color externo",
|
||||
"label_external_percent": "Porcentaje externo",
|
||||
"label_box_temp": "Temperatura de la caja {box}",
|
||||
"label_box_humidity": "Humedad de la caja {box}",
|
||||
"label_slot_filament": "Filamento — caja {box}, ranura {slot}",
|
||||
"label_slot_color": "Color — caja {box}, ranura {slot}",
|
||||
"label_slot_percent": "Restante — caja {box}, ranura {slot}",
|
||||
"schema_compact_view": "Vista compacta (modo mini)",
|
||||
"schema_show_type_in_mini": "Mostrar el tipo de filamento en modo mini",
|
||||
"tab_entities": "Entidades",
|
||||
"tab_theme": "Tema"
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user