52 lines
3.3 KiB
YAML
52 lines
3.3 KiB
YAML
# Example Home Assistant configuration file for a Voron V0.
|
|
# Credit to GitHub user @Kruppes
|
|
#
|
|
sensor:
|
|
- platform: rest
|
|
name: Voron_V0_sensor
|
|
resource: "http://192.168.178.56:7125/printer/objects/query?heater_bed&extruder&print_stats&toolhead&display_status&virtual_sdcard"
|
|
json_attributes_path: "$.result.status"
|
|
json_attributes:
|
|
- heater_bed
|
|
- extruder
|
|
- print_stats
|
|
- toolhead
|
|
- display_status
|
|
- virtual_sdcard
|
|
value_template: 'OK'
|
|
- platform: template
|
|
sensors:
|
|
vzero_hotend_target:
|
|
friendly_name: 'V0.126 Hotend Target'
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["extruder"]["target"] | float | round(1) }}'
|
|
device_class: temperature
|
|
unit_of_measurement: '°C'
|
|
vzero_hotend_actual:
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["extruder"]["temperature"] | float | round(1) }}'
|
|
device_class: temperature
|
|
unit_of_measurement: '°C'
|
|
vzero_bed_target:
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["heater_bed"]["target"] | float | round(1) }}'
|
|
device_class: temperature
|
|
unit_of_measurement: '°C'
|
|
vzero_bed_actual:
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["heater_bed"]["temperature"] | float | round(1) }}'
|
|
device_class: temperature
|
|
unit_of_measurement: '°C'
|
|
vzero_state:
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["print_stats"]["state"]}}'
|
|
vzero_current_print:
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["print_stats"]["filename"]}}'
|
|
vzero_current_progress:
|
|
value_template: '{{ (states.sensor.voron_v0_sensor.attributes["display_status"]["progress"])*100 | round(1) }}'
|
|
unit_of_measurement: '%'
|
|
vzero_print_time:
|
|
value_template: '{{ states.sensor.voron_v0_sensor.attributes["print_stats"]["print_duration"] |timestamp_custom("%H:%M:%S", 0)}}'
|
|
vzero_time_remaining:
|
|
value_template: '{{ (((states.sensor.voron_v0_sensor.attributes["print_stats"]["print_duration"]/states.sensor.voron_v0_sensor.attributes["display_status"]["progress"]- states.sensor.voron_v0_sensor.attributes["print_stats"]["print_duration"]) if states.sensor.voron_v0_sensor.attributes["display_status"]["progress"]>0 else 0)) | timestamp_custom("%H:%M:%S", 0)}}'
|
|
vzero_eta:
|
|
value_template: '{{ (as_timestamp(now())+2*60*60+((states.sensor.voron_v0_sensor.attributes["print_stats"]["print_duration"]/states.sensor.voron_v0_sensor.attributes["display_status"]["progress"]- states.sensor.voron_v0_sensor.attributes["print_stats"]["print_duration"]) if states.sensor.voron_v0_sensor.attributes["display_status"]["progress"]>0 else 0)) | timestamp_custom("%H:%M:%S", 0)}}'
|
|
vzero_nozzletemp:
|
|
value_template: '{{[( states.sensor.voron_v0_sensor.attributes["extruder"]["temperature"] | float | round(1)| string)," / ",( states.sensor.voron_v0_sensor.attributes["extruder"]["target"] | float | round(1)| string)]|join}}'
|
|
vzero_bedtemp:
|
|
value_template: '{{[( states.sensor.voron_v0_sensor.attributes["heater_bed"]["temperature"] | float | round(1)| string)," / ",( states.sensor.voron_v0_sensor.attributes["heater_bed"]["target"] | float | round(1)| string)]|join}}' |