# === Add friendly names, icons, and area for printer controls === homeassistant: customize: rest_command.3d_printer_emergency_stop: friendly_name: "Emergency Stop (K1C)" area_id: Laundry icon: mdi:alert-octagon rest_command.3d_printer_firmware_restart: friendly_name: "Firmware Restart (K1C)" area_id: Laundry icon: mdi:restart rest_command.3d_printer_cancel: friendly_name: "Cancel Print (K1C)" area_id: Laundry icon: mdi:cancel rest_command.3d_printer_pause: friendly_name: "Pause Print (K1C)" area_id: Laundry icon: mdi:pause-circle rest_command.3d_printer_resume: friendly_name: "Resume Print (K1C)" area_id: Laundry icon: mdi:play-circle sensor.printer_3d_file_metadata: area_id: Laundry friendly_name: "3D Printer (K1C) Print file data" sensor.printer_3d_sensor: area_id: Laundry friendly_name: "3D Printer (K1C) Sensors" sensor.printer_3d_info: area_id: Laundry friendly_name: "3D Printer (K1C) State" sensor.printer_3d_server: area_id: Laundry friendly_name: "3D Printer (K1C) Print Server" sensor.3d_printer_chamber_temp: area_id: Laundry sensor.3d_printer_hotend_target: area_id: Laundry sensor.3d_printer_hotend_actual: area_id: Laundry sensor.3d_printer_hotend_power: area_id: Laundry sensor.3d_printer_bed_target: area_id: Laundry sensor.3d_printer_bed_actual: area_id: Laundry sensor.3d_printer_bed_power: area_id: Laundry sensor.3d_printer_state: area_id: Laundry sensor.3d_printer_current_print: area_id: Laundry sensor.3d_printer_current_progress: area_id: Laundry sensor.3d_printer_print_time: area_id: Laundry sensor.3d_printer_time_remaining: area_id: Laundry sensor.3d_printer_eta: area_id: Laundry sensor.3d_printer_message: area_id: Laundry sensor.3d_printer_layer_height: area_id: Laundry sensor.3d_printer_object_height: area_id: Laundry sensor.3d_printer_current_height: area_id: Laundry sensor.3d_printer_current_layer: area_id: Laundry sensor.3d_printer_total_layers: area_id: Laundry sensor.3d_printer_actual_layer: area_id: Laundry sensor.3d_printer_object_thumbnails: area_id: Laundry sensor.3d_printer_state_message: area_id: Laundry sensor.3d_printer_heaters_power: area_id: Laundry sensor.3d_printer_printername: area_id: Laundry binary_sensor.3d_printer_filament: area_id: Laundry # === REST sensor: File metadata for current 3D print === rest: scan_interval: 5 resource_template: "http://192.168.2.31:7125/server/files/metadata?filename={{ states('sensor.3d_printer_current_print') | urlencode }}" sensor: - name: printer_3d_file_metadata unique_id: "192.168.2.315ec44d90-419c-419c-802d-d34071639c08" icon: mdi:file-document-outline json_attributes_path: "$.result" json_attributes: - layer_height - object_height - thumbnails value_template: "OK" rest_command: 3d_printer_emergency_stop: url: "http://192.168.2.31:7125/printer/emergency_stop" method: post 3d_printer_firmware_restart: url: "http://192.168.2.31:7125/printer/firmware_restart" method: post 3d_printer_cancel: url: "http://192.168.2.31:7125/printer/print/cancel" method: post 3d_printer_pause: url: "http://192.168.2.31:7125/printer/print/pause" method: post 3d_printer_resume: url: "http://192.168.2.31:7125/printer/print/resume" method: post sensor: # === REST sensor: Full 3D printer status (Klipper printer/objects/query) === - platform: rest name: printer_3d_sensor unique_id: "192.168.2.313a0c25fa-297d-4c19-b03c-ddf04840682b" icon: mdi:printer-3d-nozzle resource: "http://192.168.2.31:7125/printer/objects/query?heater_bed&extruder&print_stats&toolhead&display_status&virtual_sdcard&gcode_move&filament_motion_sensor%20btt_smart_filament&temperature_sensor%20Chamber_Temp" json_attributes_path: "$.result.status" json_attributes: - heater_bed - extruder - print_stats - toolhead - display_status - virtual_sdcard - gcode_move - "filament_motion_sensor btt_smart_filament_sensor" - "temperature_sensor Chamber_Temp" value_template: "OK" force_update: true scan_interval: 1 # === REST sensor: Basic printer state and message === - platform: rest name: printer_3d_info unique_id: "192.168.2.311cba6677-02bd-4273-9083-b8301bf6943b" icon: mdi:information-outline scan_interval: 1 resource_template: "http://192.168.2.31:7125/printer/info" json_attributes_path: "$.result" json_attributes: - state_message - state value_template: "OK" # === REST sensor: Server configuration details (e.g., printer name) === - platform: rest name: printer_3d_server unique_id: "192.168.2.311cba6677-02bd-4273-9083-b8301bf6949" icon: mdi:server scan_interval: 1 resource_template: "http://192.168.2.31:7125/server/database/item?namespace=mainsail&key=general" json_attributes_path: "$.result.value" json_attributes: - printername value_template: "OK"