# AUTO-GENERATED by bambu-display/generate.py. Edit printers.yaml or generate.py. sensor: - platform: homeassistant id: prints_charming_progress entity_id: sensor.p1s_01p09c470102673_print_progress internal: true - platform: homeassistant id: prints_charming_nozzle entity_id: sensor.p1s_01p09c470102673_nozzle_temperature internal: true - platform: homeassistant id: prints_charming_nozzle_target entity_id: sensor.p1s_01p09c470102673_nozzle_target_temperature internal: true - platform: homeassistant id: prints_charming_bed entity_id: sensor.p1s_01p09c470102673_bed_temperature internal: true - platform: homeassistant id: prints_charming_bed_target entity_id: sensor.p1s_01p09c470102673_bed_target_temperature internal: true - platform: homeassistant id: prints_charming_time_left entity_id: sensor.p1s_01p09c470102673_remaining_time internal: true - platform: homeassistant id: prints_charming_layer entity_id: sensor.p1s_01p09c470102673_current_layer internal: true - platform: homeassistant id: prints_charming_total_layers entity_id: sensor.p1s_01p09c470102673_total_layer_count internal: true - platform: homeassistant id: prints_charming_fan entity_id: sensor.p1s_01p09c470102673_cooling_fan_speed internal: true - platform: homeassistant id: prints_charming_aux_fan entity_id: sensor.p1s_01p09c470102673_aux_fan_speed internal: true - platform: homeassistant id: prints_charming_exhaust_fan entity_id: sensor.p1s_01p09c470102673_chamber_fan_speed internal: true - platform: homeassistant id: polly_pocket_progress entity_id: sensor.a1mini_0309ca580403653_print_progress internal: true - platform: homeassistant id: polly_pocket_nozzle entity_id: sensor.a1mini_0309ca580403653_nozzle_temperature internal: true - platform: homeassistant id: polly_pocket_nozzle_target entity_id: sensor.a1mini_0309ca580403653_nozzle_target_temperature internal: true - platform: homeassistant id: polly_pocket_bed entity_id: sensor.a1mini_0309ca580403653_bed_temperature internal: true - platform: homeassistant id: polly_pocket_bed_target entity_id: sensor.a1mini_0309ca580403653_bed_target_temperature internal: true - platform: homeassistant id: polly_pocket_time_left entity_id: sensor.a1mini_0309ca580403653_remaining_time internal: true - platform: homeassistant id: polly_pocket_layer entity_id: sensor.a1mini_0309ca580403653_current_layer internal: true - platform: homeassistant id: polly_pocket_total_layers entity_id: sensor.a1mini_0309ca580403653_total_layer_count internal: true - platform: homeassistant id: polly_pocket_fan entity_id: sensor.a1mini_0309ca580403653_cooling_fan_speed internal: true - platform: homeassistant id: ds_turd_flinger_progress entity_id: sensor.a1_03919d540806387_print_progress internal: true - platform: homeassistant id: ds_turd_flinger_nozzle entity_id: sensor.a1_03919d540806387_nozzle_temperature internal: true - platform: homeassistant id: ds_turd_flinger_nozzle_target entity_id: sensor.a1_03919d540806387_nozzle_target_temperature internal: true - platform: homeassistant id: ds_turd_flinger_bed entity_id: sensor.a1_03919d540806387_bed_temperature internal: true - platform: homeassistant id: ds_turd_flinger_bed_target entity_id: sensor.a1_03919d540806387_bed_target_temperature internal: true - platform: homeassistant id: ds_turd_flinger_time_left entity_id: sensor.a1_03919d540806387_remaining_time internal: true - platform: homeassistant id: ds_turd_flinger_layer entity_id: sensor.a1_03919d540806387_current_layer internal: true - platform: homeassistant id: ds_turd_flinger_total_layers entity_id: sensor.a1_03919d540806387_total_layer_count internal: true - platform: homeassistant id: ds_turd_flinger_fan entity_id: sensor.a1_03919d540806387_cooling_fan_speed internal: true - platform: homeassistant id: jordyns_layer_slayer_progress entity_id: sensor.jordyns_layer_slayer_print_progress internal: true - platform: homeassistant id: jordyns_layer_slayer_nozzle entity_id: sensor.jordyns_layer_slayer_nozzle_temperature internal: true - platform: homeassistant id: jordyns_layer_slayer_nozzle_target entity_id: sensor.jordyns_layer_slayer_nozzle_target_temperature internal: true - platform: homeassistant id: jordyns_layer_slayer_bed entity_id: sensor.jordyns_layer_slayer_bed_temperature internal: true - platform: homeassistant id: jordyns_layer_slayer_bed_target entity_id: sensor.jordyns_layer_slayer_bed_target_temperature internal: true - platform: homeassistant id: jordyns_layer_slayer_time_left entity_id: sensor.jordyns_layer_slayer_remaining_time internal: true - platform: homeassistant id: jordyns_layer_slayer_layer entity_id: sensor.jordyns_layer_slayer_current_layer internal: true - platform: homeassistant id: jordyns_layer_slayer_total_layers entity_id: sensor.jordyns_layer_slayer_total_layer_count internal: true - platform: homeassistant id: jordyns_layer_slayer_fan entity_id: sensor.jordyns_layer_slayer_cooling_fan_speed internal: true - platform: homeassistant id: constipation_orion_progress entity_id: sensor.constipation_orion_print_progress internal: true - platform: homeassistant id: constipation_orion_nozzle entity_id: sensor.constipation_orion_nozzle_temperature internal: true - platform: homeassistant id: constipation_orion_nozzle_target entity_id: sensor.constipation_orion_nozzle_target_temperature internal: true - platform: homeassistant id: constipation_orion_bed entity_id: sensor.constipation_orion_bed_temperature internal: true - platform: homeassistant id: constipation_orion_bed_target entity_id: sensor.constipation_orion_bed_target_temperature internal: true - platform: homeassistant id: constipation_orion_time_left entity_id: sensor.constipation_orion_remaining_time internal: true - platform: homeassistant id: constipation_orion_layer entity_id: sensor.constipation_orion_current_layer internal: true - platform: homeassistant id: constipation_orion_total_layers entity_id: sensor.constipation_orion_total_layer_count internal: true - platform: homeassistant id: constipation_orion_fan entity_id: sensor.constipation_orion_cooling_fan_speed internal: true - platform: homeassistant id: constipation_orion_left_nozzle entity_id: sensor.constipation_orion_left_nozzle_temperature internal: true - platform: homeassistant id: constipation_orion_left_target entity_id: sensor.constipation_orion_left_nozzle_target_temperature internal: true - platform: homeassistant id: constipation_orion_right_nozzle entity_id: sensor.constipation_orion_right_nozzle_temperature internal: true - platform: homeassistant id: constipation_orion_right_target entity_id: sensor.constipation_orion_right_nozzle_target_temperature internal: true - platform: homeassistant id: constipation_orion_exhaust_fan entity_id: sensor.constipation_orion_chamber_fan_speed internal: true text_sensor: - platform: homeassistant id: prints_charming_status entity_id: sensor.p1s_01p09c470102673_print_status internal: true - platform: homeassistant id: prints_charming_task entity_id: sensor.p1s_01p09c470102673_task_name internal: true - platform: homeassistant id: prints_charming_stage entity_id: sensor.p1s_01p09c470102673_current_stage internal: true - platform: homeassistant id: prints_charming_online entity_id: binary_sensor.p1s_01p09c470102673_online internal: true - platform: homeassistant id: prints_charming_print_error entity_id: binary_sensor.p1s_01p09c470102673_print_error internal: true - platform: homeassistant id: prints_charming_hms_error entity_id: binary_sensor.p1s_01p09c470102673_hms_errors internal: true - platform: homeassistant id: prints_charming_remaining_unit entity_id: sensor.p1s_01p09c470102673_remaining_time internal: true attribute: unit_of_measurement - platform: homeassistant id: prints_charming_nozzle_unit entity_id: sensor.p1s_01p09c470102673_nozzle_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: prints_charming_bed_unit entity_id: sensor.p1s_01p09c470102673_bed_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: prints_charming_tray_0_type entity_id: sensor.p1s_01p09c470102673_ams_1_tray_1 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_0_color entity_id: sensor.p1s_01p09c470102673_ams_1_tray_1 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_0_active entity_id: sensor.p1s_01p09c470102673_ams_1_tray_1 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_1_type entity_id: sensor.p1s_01p09c470102673_ams_1_tray_2 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_1_color entity_id: sensor.p1s_01p09c470102673_ams_1_tray_2 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_1_active entity_id: sensor.p1s_01p09c470102673_ams_1_tray_2 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_2_type entity_id: sensor.p1s_01p09c470102673_ams_1_tray_3 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_2_color entity_id: sensor.p1s_01p09c470102673_ams_1_tray_3 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_2_active entity_id: sensor.p1s_01p09c470102673_ams_1_tray_3 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_3_type entity_id: sensor.p1s_01p09c470102673_ams_1_tray_4 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_3_color entity_id: sensor.p1s_01p09c470102673_ams_1_tray_4 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_3_active entity_id: sensor.p1s_01p09c470102673_ams_1_tray_4 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_4_type entity_id: sensor.p1s_01p09c470102673_ams_2_tray_1 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_4_color entity_id: sensor.p1s_01p09c470102673_ams_2_tray_1 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_4_active entity_id: sensor.p1s_01p09c470102673_ams_2_tray_1 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_5_type entity_id: sensor.p1s_01p09c470102673_ams_2_tray_2 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_5_color entity_id: sensor.p1s_01p09c470102673_ams_2_tray_2 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_5_active entity_id: sensor.p1s_01p09c470102673_ams_2_tray_2 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_6_type entity_id: sensor.p1s_01p09c470102673_ams_2_tray_3 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_6_color entity_id: sensor.p1s_01p09c470102673_ams_2_tray_3 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_6_active entity_id: sensor.p1s_01p09c470102673_ams_2_tray_3 internal: true attribute: active - platform: homeassistant id: prints_charming_tray_7_type entity_id: sensor.p1s_01p09c470102673_ams_2_tray_4 internal: true attribute: type - platform: homeassistant id: prints_charming_tray_7_color entity_id: sensor.p1s_01p09c470102673_ams_2_tray_4 internal: true attribute: color - platform: homeassistant id: prints_charming_tray_7_active entity_id: sensor.p1s_01p09c470102673_ams_2_tray_4 internal: true attribute: active - platform: homeassistant id: polly_pocket_status entity_id: sensor.a1mini_0309ca580403653_print_status internal: true - platform: homeassistant id: polly_pocket_task entity_id: sensor.a1mini_0309ca580403653_task_name internal: true - platform: homeassistant id: polly_pocket_stage entity_id: sensor.a1mini_0309ca580403653_current_stage internal: true - platform: homeassistant id: polly_pocket_online entity_id: binary_sensor.a1mini_0309ca580403653_online internal: true - platform: homeassistant id: polly_pocket_print_error entity_id: binary_sensor.a1mini_0309ca580403653_print_error internal: true - platform: homeassistant id: polly_pocket_hms_error entity_id: binary_sensor.a1mini_0309ca580403653_hms_errors internal: true - platform: homeassistant id: polly_pocket_remaining_unit entity_id: sensor.a1mini_0309ca580403653_remaining_time internal: true attribute: unit_of_measurement - platform: homeassistant id: polly_pocket_nozzle_unit entity_id: sensor.a1mini_0309ca580403653_nozzle_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: polly_pocket_bed_unit entity_id: sensor.a1mini_0309ca580403653_bed_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: polly_pocket_tray_0_type entity_id: sensor.a1mini_0309ca580403653_externalspool_external_spool internal: true attribute: type - platform: homeassistant id: polly_pocket_tray_0_color entity_id: sensor.a1mini_0309ca580403653_externalspool_external_spool internal: true attribute: color - platform: homeassistant id: polly_pocket_tray_0_active entity_id: sensor.a1mini_0309ca580403653_externalspool_external_spool internal: true attribute: active - platform: homeassistant id: ds_turd_flinger_status entity_id: sensor.a1_03919d540806387_print_status internal: true - platform: homeassistant id: ds_turd_flinger_task entity_id: sensor.a1_03919d540806387_task_name internal: true - platform: homeassistant id: ds_turd_flinger_stage entity_id: sensor.a1_03919d540806387_current_stage internal: true - platform: homeassistant id: ds_turd_flinger_online entity_id: binary_sensor.a1_03919d540806387_online internal: true - platform: homeassistant id: ds_turd_flinger_print_error entity_id: binary_sensor.a1_03919d540806387_print_error internal: true - platform: homeassistant id: ds_turd_flinger_hms_error entity_id: binary_sensor.a1_03919d540806387_hms_errors internal: true - platform: homeassistant id: ds_turd_flinger_remaining_unit entity_id: sensor.a1_03919d540806387_remaining_time internal: true attribute: unit_of_measurement - platform: homeassistant id: ds_turd_flinger_nozzle_unit entity_id: sensor.a1_03919d540806387_nozzle_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: ds_turd_flinger_bed_unit entity_id: sensor.a1_03919d540806387_bed_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: ds_turd_flinger_tray_0_type entity_id: sensor.a1_03919d540806387_ams_1_tray_1 internal: true attribute: type - platform: homeassistant id: ds_turd_flinger_tray_0_color entity_id: sensor.a1_03919d540806387_ams_1_tray_1 internal: true attribute: color - platform: homeassistant id: ds_turd_flinger_tray_0_active entity_id: sensor.a1_03919d540806387_ams_1_tray_1 internal: true attribute: active - platform: homeassistant id: ds_turd_flinger_tray_1_type entity_id: sensor.a1_03919d540806387_ams_1_tray_2 internal: true attribute: type - platform: homeassistant id: ds_turd_flinger_tray_1_color entity_id: sensor.a1_03919d540806387_ams_1_tray_2 internal: true attribute: color - platform: homeassistant id: ds_turd_flinger_tray_1_active entity_id: sensor.a1_03919d540806387_ams_1_tray_2 internal: true attribute: active - platform: homeassistant id: ds_turd_flinger_tray_2_type entity_id: sensor.a1_03919d540806387_ams_1_tray_3 internal: true attribute: type - platform: homeassistant id: ds_turd_flinger_tray_2_color entity_id: sensor.a1_03919d540806387_ams_1_tray_3 internal: true attribute: color - platform: homeassistant id: ds_turd_flinger_tray_2_active entity_id: sensor.a1_03919d540806387_ams_1_tray_3 internal: true attribute: active - platform: homeassistant id: ds_turd_flinger_tray_3_type entity_id: sensor.a1_03919d540806387_ams_1_tray_4 internal: true attribute: type - platform: homeassistant id: ds_turd_flinger_tray_3_color entity_id: sensor.a1_03919d540806387_ams_1_tray_4 internal: true attribute: color - platform: homeassistant id: ds_turd_flinger_tray_3_active entity_id: sensor.a1_03919d540806387_ams_1_tray_4 internal: true attribute: active - platform: homeassistant id: jordyns_layer_slayer_status entity_id: sensor.jordyns_layer_slayer_print_status internal: true - platform: homeassistant id: jordyns_layer_slayer_task entity_id: sensor.jordyns_layer_slayer_task_name internal: true - platform: homeassistant id: jordyns_layer_slayer_stage entity_id: sensor.jordyns_layer_slayer_current_stage internal: true - platform: homeassistant id: jordyns_layer_slayer_online entity_id: binary_sensor.jordyns_layer_slayer_online internal: true - platform: homeassistant id: jordyns_layer_slayer_print_error entity_id: binary_sensor.jordyns_layer_slayer_print_error internal: true - platform: homeassistant id: jordyns_layer_slayer_hms_error entity_id: binary_sensor.jordyns_layer_slayer_hms_errors internal: true - platform: homeassistant id: jordyns_layer_slayer_remaining_unit entity_id: sensor.jordyns_layer_slayer_remaining_time internal: true attribute: unit_of_measurement - platform: homeassistant id: jordyns_layer_slayer_nozzle_unit entity_id: sensor.jordyns_layer_slayer_nozzle_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: jordyns_layer_slayer_bed_unit entity_id: sensor.jordyns_layer_slayer_bed_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: jordyns_layer_slayer_tray_0_type entity_id: sensor.jordyns_layer_slayer_ams_tray_1 internal: true attribute: type - platform: homeassistant id: jordyns_layer_slayer_tray_0_color entity_id: sensor.jordyns_layer_slayer_ams_tray_1 internal: true attribute: color - platform: homeassistant id: jordyns_layer_slayer_tray_0_active entity_id: sensor.jordyns_layer_slayer_ams_tray_1 internal: true attribute: active - platform: homeassistant id: jordyns_layer_slayer_tray_1_type entity_id: sensor.jordyns_layer_slayer_ams_tray_2 internal: true attribute: type - platform: homeassistant id: jordyns_layer_slayer_tray_1_color entity_id: sensor.jordyns_layer_slayer_ams_tray_2 internal: true attribute: color - platform: homeassistant id: jordyns_layer_slayer_tray_1_active entity_id: sensor.jordyns_layer_slayer_ams_tray_2 internal: true attribute: active - platform: homeassistant id: jordyns_layer_slayer_tray_2_type entity_id: sensor.jordyns_layer_slayer_ams_tray_3 internal: true attribute: type - platform: homeassistant id: jordyns_layer_slayer_tray_2_color entity_id: sensor.jordyns_layer_slayer_ams_tray_3 internal: true attribute: color - platform: homeassistant id: jordyns_layer_slayer_tray_2_active entity_id: sensor.jordyns_layer_slayer_ams_tray_3 internal: true attribute: active - platform: homeassistant id: jordyns_layer_slayer_tray_3_type entity_id: sensor.jordyns_layer_slayer_ams_tray_4 internal: true attribute: type - platform: homeassistant id: jordyns_layer_slayer_tray_3_color entity_id: sensor.jordyns_layer_slayer_ams_tray_4 internal: true attribute: color - platform: homeassistant id: jordyns_layer_slayer_tray_3_active entity_id: sensor.jordyns_layer_slayer_ams_tray_4 internal: true attribute: active - platform: homeassistant id: constipation_orion_status entity_id: sensor.constipation_orion_print_status internal: true - platform: homeassistant id: constipation_orion_task entity_id: sensor.constipation_orion_task_name internal: true - platform: homeassistant id: constipation_orion_stage entity_id: sensor.constipation_orion_current_stage internal: true - platform: homeassistant id: constipation_orion_online entity_id: binary_sensor.constipation_orion_online internal: true - platform: homeassistant id: constipation_orion_print_error entity_id: binary_sensor.constipation_orion_print_error internal: true - platform: homeassistant id: constipation_orion_hms_error entity_id: binary_sensor.constipation_orion_hms_errors internal: true - platform: homeassistant id: constipation_orion_remaining_unit entity_id: sensor.constipation_orion_remaining_time internal: true attribute: unit_of_measurement - platform: homeassistant id: constipation_orion_nozzle_unit entity_id: sensor.constipation_orion_nozzle_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: constipation_orion_bed_unit entity_id: sensor.constipation_orion_bed_temperature internal: true attribute: unit_of_measurement - platform: homeassistant id: constipation_orion_tray_0_type entity_id: sensor.constipation_orion_ams_1_tray_1 internal: true attribute: type - platform: homeassistant id: constipation_orion_tray_0_color entity_id: sensor.constipation_orion_ams_1_tray_1 internal: true attribute: color - platform: homeassistant id: constipation_orion_tray_0_active entity_id: sensor.constipation_orion_ams_1_tray_1 internal: true attribute: active - platform: homeassistant id: constipation_orion_tray_1_type entity_id: sensor.constipation_orion_ams_1_tray_2 internal: true attribute: type - platform: homeassistant id: constipation_orion_tray_1_color entity_id: sensor.constipation_orion_ams_1_tray_2 internal: true attribute: color - platform: homeassistant id: constipation_orion_tray_1_active entity_id: sensor.constipation_orion_ams_1_tray_2 internal: true attribute: active - platform: homeassistant id: constipation_orion_tray_2_type entity_id: sensor.constipation_orion_ams_1_tray_3 internal: true attribute: type - platform: homeassistant id: constipation_orion_tray_2_color entity_id: sensor.constipation_orion_ams_1_tray_3 internal: true attribute: color - platform: homeassistant id: constipation_orion_tray_2_active entity_id: sensor.constipation_orion_ams_1_tray_3 internal: true attribute: active - platform: homeassistant id: constipation_orion_tray_3_type entity_id: sensor.constipation_orion_ams_1_tray_4 internal: true attribute: type - platform: homeassistant id: constipation_orion_tray_3_color entity_id: sensor.constipation_orion_ams_1_tray_4 internal: true attribute: color - platform: homeassistant id: constipation_orion_tray_3_active entity_id: sensor.constipation_orion_ams_1_tray_4 internal: true attribute: active script: - id: prints_charming_refresh then: - lambda: !lambda |- bambu_display::Snapshot data; data.connected = id(ha_api).is_connected_with_state_subscription(); data.progress = id(prints_charming_progress).state; data.nozzle = id(prints_charming_nozzle).state; data.nozzle_target = id(prints_charming_nozzle_target).state; data.bed = id(prints_charming_bed).state; data.bed_target = id(prints_charming_bed_target).state; data.time_left = id(prints_charming_time_left).state; data.layer = id(prints_charming_layer).state; data.total_layers = id(prints_charming_total_layers).state; data.fan = id(prints_charming_fan).state; data.aux_fan = id(prints_charming_aux_fan).state; data.exhaust_fan = id(prints_charming_exhaust_fan).state; data.status = id(prints_charming_status).state; data.task = id(prints_charming_task).state; data.stage = id(prints_charming_stage).state; data.online = id(prints_charming_online).state; data.print_error = id(prints_charming_print_error).state; data.hms_error = id(prints_charming_hms_error).state; data.remaining_unit = id(prints_charming_remaining_unit).state; data.nozzle_unit = id(prints_charming_nozzle_unit).state; data.bed_unit = id(prints_charming_bed_unit).state; const int seconds_left = bambu_display::duration_seconds(data.time_left, data.remaining_unit); const auto clock = id(ha_time).now(); if (clock.is_valid() && seconds_left >= 0) data.finish_time = esphome::ESPTime::from_epoch_local(clock.timestamp + seconds_left).strftime("%H:%M"); data.trays.push_back({"A1", id(prints_charming_tray_0_type).state, id(prints_charming_tray_0_color).state, id(prints_charming_tray_0_active).state}); data.trays.push_back({"A2", id(prints_charming_tray_1_type).state, id(prints_charming_tray_1_color).state, id(prints_charming_tray_1_active).state}); data.trays.push_back({"A3", id(prints_charming_tray_2_type).state, id(prints_charming_tray_2_color).state, id(prints_charming_tray_2_active).state}); data.trays.push_back({"A4", id(prints_charming_tray_3_type).state, id(prints_charming_tray_3_color).state, id(prints_charming_tray_3_active).state}); data.trays.push_back({"B1", id(prints_charming_tray_4_type).state, id(prints_charming_tray_4_color).state, id(prints_charming_tray_4_active).state}); data.trays.push_back({"B2", id(prints_charming_tray_5_type).state, id(prints_charming_tray_5_color).state, id(prints_charming_tray_5_active).state}); data.trays.push_back({"B3", id(prints_charming_tray_6_type).state, id(prints_charming_tray_6_color).state, id(prints_charming_tray_6_active).state}); data.trays.push_back({"B4", id(prints_charming_tray_7_type).state, id(prints_charming_tray_7_color).state, id(prints_charming_tray_7_active).state}); bambu_display::render(data, {id(prints_charming_status_label), id(prints_charming_task_label), id(prints_charming_top_progress), id(prints_charming_remaining_label), id(prints_charming_layers_label), id(prints_charming_stage_label), {id(prints_charming_progress_arc), id(prints_charming_progress_label), id(prints_charming_progress_detail)}, {id(prints_charming_nozzle_arc), id(prints_charming_nozzle_label), id(prints_charming_nozzle_detail)}, {id(prints_charming_bed_arc), id(prints_charming_bed_label), id(prints_charming_bed_detail)}, {id(prints_charming_fan_arc), id(prints_charming_fan_label), id(prints_charming_fan_detail)}, {id(prints_charming_aux_arc), id(prints_charming_aux_label), id(prints_charming_aux_detail)}, {id(prints_charming_exhaust_arc), id(prints_charming_exhaust_label), id(prints_charming_exhaust_detail)}, {{id(prints_charming_tray_0_card), id(prints_charming_tray_0_swatch), id(prints_charming_tray_0_label)}, {id(prints_charming_tray_1_card), id(prints_charming_tray_1_swatch), id(prints_charming_tray_1_label)}, {id(prints_charming_tray_2_card), id(prints_charming_tray_2_swatch), id(prints_charming_tray_2_label)}, {id(prints_charming_tray_3_card), id(prints_charming_tray_3_swatch), id(prints_charming_tray_3_label)}, {id(prints_charming_tray_4_card), id(prints_charming_tray_4_swatch), id(prints_charming_tray_4_label)}, {id(prints_charming_tray_5_card), id(prints_charming_tray_5_swatch), id(prints_charming_tray_5_label)}, {id(prints_charming_tray_6_card), id(prints_charming_tray_6_swatch), id(prints_charming_tray_6_label)}, {id(prints_charming_tray_7_card), id(prints_charming_tray_7_swatch), id(prints_charming_tray_7_label)}}}); - id: polly_pocket_refresh then: - lambda: !lambda |- bambu_display::Snapshot data; data.connected = id(ha_api).is_connected_with_state_subscription(); data.progress = id(polly_pocket_progress).state; data.nozzle = id(polly_pocket_nozzle).state; data.nozzle_target = id(polly_pocket_nozzle_target).state; data.bed = id(polly_pocket_bed).state; data.bed_target = id(polly_pocket_bed_target).state; data.time_left = id(polly_pocket_time_left).state; data.layer = id(polly_pocket_layer).state; data.total_layers = id(polly_pocket_total_layers).state; data.fan = id(polly_pocket_fan).state; data.status = id(polly_pocket_status).state; data.task = id(polly_pocket_task).state; data.stage = id(polly_pocket_stage).state; data.online = id(polly_pocket_online).state; data.print_error = id(polly_pocket_print_error).state; data.hms_error = id(polly_pocket_hms_error).state; data.remaining_unit = id(polly_pocket_remaining_unit).state; data.nozzle_unit = id(polly_pocket_nozzle_unit).state; data.bed_unit = id(polly_pocket_bed_unit).state; const int seconds_left = bambu_display::duration_seconds(data.time_left, data.remaining_unit); const auto clock = id(ha_time).now(); if (clock.is_valid() && seconds_left >= 0) data.finish_time = esphome::ESPTime::from_epoch_local(clock.timestamp + seconds_left).strftime("%H:%M"); data.trays.push_back({"EXT", id(polly_pocket_tray_0_type).state, id(polly_pocket_tray_0_color).state, id(polly_pocket_tray_0_active).state}); bambu_display::render(data, {id(polly_pocket_status_label), id(polly_pocket_task_label), id(polly_pocket_top_progress), id(polly_pocket_remaining_label), id(polly_pocket_layers_label), id(polly_pocket_stage_label), {id(polly_pocket_progress_arc), id(polly_pocket_progress_label), id(polly_pocket_progress_detail)}, {id(polly_pocket_nozzle_arc), id(polly_pocket_nozzle_label), id(polly_pocket_nozzle_detail)}, {id(polly_pocket_bed_arc), id(polly_pocket_bed_label), id(polly_pocket_bed_detail)}, {id(polly_pocket_fan_arc), id(polly_pocket_fan_label), id(polly_pocket_fan_detail)}, {id(polly_pocket_aux_arc), id(polly_pocket_aux_label), id(polly_pocket_aux_detail)}, {id(polly_pocket_exhaust_arc), id(polly_pocket_exhaust_label), id(polly_pocket_exhaust_detail)}, {{id(polly_pocket_tray_0_card), id(polly_pocket_tray_0_swatch), id(polly_pocket_tray_0_label)}}}); - id: ds_turd_flinger_refresh then: - lambda: !lambda |- bambu_display::Snapshot data; data.connected = id(ha_api).is_connected_with_state_subscription(); data.progress = id(ds_turd_flinger_progress).state; data.nozzle = id(ds_turd_flinger_nozzle).state; data.nozzle_target = id(ds_turd_flinger_nozzle_target).state; data.bed = id(ds_turd_flinger_bed).state; data.bed_target = id(ds_turd_flinger_bed_target).state; data.time_left = id(ds_turd_flinger_time_left).state; data.layer = id(ds_turd_flinger_layer).state; data.total_layers = id(ds_turd_flinger_total_layers).state; data.fan = id(ds_turd_flinger_fan).state; data.status = id(ds_turd_flinger_status).state; data.task = id(ds_turd_flinger_task).state; data.stage = id(ds_turd_flinger_stage).state; data.online = id(ds_turd_flinger_online).state; data.print_error = id(ds_turd_flinger_print_error).state; data.hms_error = id(ds_turd_flinger_hms_error).state; data.remaining_unit = id(ds_turd_flinger_remaining_unit).state; data.nozzle_unit = id(ds_turd_flinger_nozzle_unit).state; data.bed_unit = id(ds_turd_flinger_bed_unit).state; const int seconds_left = bambu_display::duration_seconds(data.time_left, data.remaining_unit); const auto clock = id(ha_time).now(); if (clock.is_valid() && seconds_left >= 0) data.finish_time = esphome::ESPTime::from_epoch_local(clock.timestamp + seconds_left).strftime("%H:%M"); data.trays.push_back({"A1", id(ds_turd_flinger_tray_0_type).state, id(ds_turd_flinger_tray_0_color).state, id(ds_turd_flinger_tray_0_active).state}); data.trays.push_back({"A2", id(ds_turd_flinger_tray_1_type).state, id(ds_turd_flinger_tray_1_color).state, id(ds_turd_flinger_tray_1_active).state}); data.trays.push_back({"A3", id(ds_turd_flinger_tray_2_type).state, id(ds_turd_flinger_tray_2_color).state, id(ds_turd_flinger_tray_2_active).state}); data.trays.push_back({"A4", id(ds_turd_flinger_tray_3_type).state, id(ds_turd_flinger_tray_3_color).state, id(ds_turd_flinger_tray_3_active).state}); bambu_display::render(data, {id(ds_turd_flinger_status_label), id(ds_turd_flinger_task_label), id(ds_turd_flinger_top_progress), id(ds_turd_flinger_remaining_label), id(ds_turd_flinger_layers_label), id(ds_turd_flinger_stage_label), {id(ds_turd_flinger_progress_arc), id(ds_turd_flinger_progress_label), id(ds_turd_flinger_progress_detail)}, {id(ds_turd_flinger_nozzle_arc), id(ds_turd_flinger_nozzle_label), id(ds_turd_flinger_nozzle_detail)}, {id(ds_turd_flinger_bed_arc), id(ds_turd_flinger_bed_label), id(ds_turd_flinger_bed_detail)}, {id(ds_turd_flinger_fan_arc), id(ds_turd_flinger_fan_label), id(ds_turd_flinger_fan_detail)}, {id(ds_turd_flinger_aux_arc), id(ds_turd_flinger_aux_label), id(ds_turd_flinger_aux_detail)}, {id(ds_turd_flinger_exhaust_arc), id(ds_turd_flinger_exhaust_label), id(ds_turd_flinger_exhaust_detail)}, {{id(ds_turd_flinger_tray_0_card), id(ds_turd_flinger_tray_0_swatch), id(ds_turd_flinger_tray_0_label)}, {id(ds_turd_flinger_tray_1_card), id(ds_turd_flinger_tray_1_swatch), id(ds_turd_flinger_tray_1_label)}, {id(ds_turd_flinger_tray_2_card), id(ds_turd_flinger_tray_2_swatch), id(ds_turd_flinger_tray_2_label)}, {id(ds_turd_flinger_tray_3_card), id(ds_turd_flinger_tray_3_swatch), id(ds_turd_flinger_tray_3_label)}}}); - id: jordyns_layer_slayer_refresh then: - lambda: !lambda |- bambu_display::Snapshot data; data.connected = id(ha_api).is_connected_with_state_subscription(); data.progress = id(jordyns_layer_slayer_progress).state; data.nozzle = id(jordyns_layer_slayer_nozzle).state; data.nozzle_target = id(jordyns_layer_slayer_nozzle_target).state; data.bed = id(jordyns_layer_slayer_bed).state; data.bed_target = id(jordyns_layer_slayer_bed_target).state; data.time_left = id(jordyns_layer_slayer_time_left).state; data.layer = id(jordyns_layer_slayer_layer).state; data.total_layers = id(jordyns_layer_slayer_total_layers).state; data.fan = id(jordyns_layer_slayer_fan).state; data.status = id(jordyns_layer_slayer_status).state; data.task = id(jordyns_layer_slayer_task).state; data.stage = id(jordyns_layer_slayer_stage).state; data.online = id(jordyns_layer_slayer_online).state; data.print_error = id(jordyns_layer_slayer_print_error).state; data.hms_error = id(jordyns_layer_slayer_hms_error).state; data.remaining_unit = id(jordyns_layer_slayer_remaining_unit).state; data.nozzle_unit = id(jordyns_layer_slayer_nozzle_unit).state; data.bed_unit = id(jordyns_layer_slayer_bed_unit).state; const int seconds_left = bambu_display::duration_seconds(data.time_left, data.remaining_unit); const auto clock = id(ha_time).now(); if (clock.is_valid() && seconds_left >= 0) data.finish_time = esphome::ESPTime::from_epoch_local(clock.timestamp + seconds_left).strftime("%H:%M"); data.trays.push_back({"A1", id(jordyns_layer_slayer_tray_0_type).state, id(jordyns_layer_slayer_tray_0_color).state, id(jordyns_layer_slayer_tray_0_active).state}); data.trays.push_back({"A2", id(jordyns_layer_slayer_tray_1_type).state, id(jordyns_layer_slayer_tray_1_color).state, id(jordyns_layer_slayer_tray_1_active).state}); data.trays.push_back({"A3", id(jordyns_layer_slayer_tray_2_type).state, id(jordyns_layer_slayer_tray_2_color).state, id(jordyns_layer_slayer_tray_2_active).state}); data.trays.push_back({"A4", id(jordyns_layer_slayer_tray_3_type).state, id(jordyns_layer_slayer_tray_3_color).state, id(jordyns_layer_slayer_tray_3_active).state}); bambu_display::render(data, {id(jordyns_layer_slayer_status_label), id(jordyns_layer_slayer_task_label), id(jordyns_layer_slayer_top_progress), id(jordyns_layer_slayer_remaining_label), id(jordyns_layer_slayer_layers_label), id(jordyns_layer_slayer_stage_label), {id(jordyns_layer_slayer_progress_arc), id(jordyns_layer_slayer_progress_label), id(jordyns_layer_slayer_progress_detail)}, {id(jordyns_layer_slayer_nozzle_arc), id(jordyns_layer_slayer_nozzle_label), id(jordyns_layer_slayer_nozzle_detail)}, {id(jordyns_layer_slayer_bed_arc), id(jordyns_layer_slayer_bed_label), id(jordyns_layer_slayer_bed_detail)}, {id(jordyns_layer_slayer_fan_arc), id(jordyns_layer_slayer_fan_label), id(jordyns_layer_slayer_fan_detail)}, {id(jordyns_layer_slayer_aux_arc), id(jordyns_layer_slayer_aux_label), id(jordyns_layer_slayer_aux_detail)}, {id(jordyns_layer_slayer_exhaust_arc), id(jordyns_layer_slayer_exhaust_label), id(jordyns_layer_slayer_exhaust_detail)}, {{id(jordyns_layer_slayer_tray_0_card), id(jordyns_layer_slayer_tray_0_swatch), id(jordyns_layer_slayer_tray_0_label)}, {id(jordyns_layer_slayer_tray_1_card), id(jordyns_layer_slayer_tray_1_swatch), id(jordyns_layer_slayer_tray_1_label)}, {id(jordyns_layer_slayer_tray_2_card), id(jordyns_layer_slayer_tray_2_swatch), id(jordyns_layer_slayer_tray_2_label)}, {id(jordyns_layer_slayer_tray_3_card), id(jordyns_layer_slayer_tray_3_swatch), id(jordyns_layer_slayer_tray_3_label)}}}); - id: constipation_orion_refresh then: - lambda: !lambda |- bambu_display::Snapshot data; data.connected = id(ha_api).is_connected_with_state_subscription(); data.progress = id(constipation_orion_progress).state; data.nozzle = id(constipation_orion_nozzle).state; data.nozzle_target = id(constipation_orion_nozzle_target).state; data.bed = id(constipation_orion_bed).state; data.bed_target = id(constipation_orion_bed_target).state; data.time_left = id(constipation_orion_time_left).state; data.layer = id(constipation_orion_layer).state; data.total_layers = id(constipation_orion_total_layers).state; data.fan = id(constipation_orion_fan).state; data.left_nozzle = id(constipation_orion_left_nozzle).state; data.left_target = id(constipation_orion_left_target).state; data.right_nozzle = id(constipation_orion_right_nozzle).state; data.right_target = id(constipation_orion_right_target).state; data.exhaust_fan = id(constipation_orion_exhaust_fan).state; data.status = id(constipation_orion_status).state; data.task = id(constipation_orion_task).state; data.stage = id(constipation_orion_stage).state; data.online = id(constipation_orion_online).state; data.print_error = id(constipation_orion_print_error).state; data.hms_error = id(constipation_orion_hms_error).state; data.remaining_unit = id(constipation_orion_remaining_unit).state; data.nozzle_unit = id(constipation_orion_nozzle_unit).state; data.bed_unit = id(constipation_orion_bed_unit).state; data.dual_nozzle = true; const int seconds_left = bambu_display::duration_seconds(data.time_left, data.remaining_unit); const auto clock = id(ha_time).now(); if (clock.is_valid() && seconds_left >= 0) data.finish_time = esphome::ESPTime::from_epoch_local(clock.timestamp + seconds_left).strftime("%H:%M"); data.trays.push_back({"A1", id(constipation_orion_tray_0_type).state, id(constipation_orion_tray_0_color).state, id(constipation_orion_tray_0_active).state}); data.trays.push_back({"A2", id(constipation_orion_tray_1_type).state, id(constipation_orion_tray_1_color).state, id(constipation_orion_tray_1_active).state}); data.trays.push_back({"A3", id(constipation_orion_tray_2_type).state, id(constipation_orion_tray_2_color).state, id(constipation_orion_tray_2_active).state}); data.trays.push_back({"A4", id(constipation_orion_tray_3_type).state, id(constipation_orion_tray_3_color).state, id(constipation_orion_tray_3_active).state}); bambu_display::render(data, {id(constipation_orion_status_label), id(constipation_orion_task_label), id(constipation_orion_top_progress), id(constipation_orion_remaining_label), id(constipation_orion_layers_label), id(constipation_orion_stage_label), {id(constipation_orion_progress_arc), id(constipation_orion_progress_label), id(constipation_orion_progress_detail)}, {id(constipation_orion_nozzle_arc), id(constipation_orion_nozzle_label), id(constipation_orion_nozzle_detail)}, {id(constipation_orion_bed_arc), id(constipation_orion_bed_label), id(constipation_orion_bed_detail)}, {id(constipation_orion_fan_arc), id(constipation_orion_fan_label), id(constipation_orion_fan_detail)}, {id(constipation_orion_aux_arc), id(constipation_orion_aux_label), id(constipation_orion_aux_detail)}, {id(constipation_orion_exhaust_arc), id(constipation_orion_exhaust_label), id(constipation_orion_exhaust_detail)}, {{id(constipation_orion_tray_0_card), id(constipation_orion_tray_0_swatch), id(constipation_orion_tray_0_label)}, {id(constipation_orion_tray_1_card), id(constipation_orion_tray_1_swatch), id(constipation_orion_tray_1_label)}, {id(constipation_orion_tray_2_card), id(constipation_orion_tray_2_swatch), id(constipation_orion_tray_2_label)}, {id(constipation_orion_tray_3_card), id(constipation_orion_tray_3_swatch), id(constipation_orion_tray_3_label)}}}); interval: - interval: 1s then: - if: condition: lvgl.page.is_showing: prints_charming_page then: - script.execute: prints_charming_refresh - if: condition: lvgl.page.is_showing: polly_pocket_page then: - script.execute: polly_pocket_refresh - if: condition: lvgl.page.is_showing: ds_turd_flinger_page then: - script.execute: ds_turd_flinger_refresh - if: condition: lvgl.page.is_showing: jordyns_layer_slayer_page then: - script.execute: jordyns_layer_slayer_refresh - if: condition: lvgl.page.is_showing: constipation_orion_page then: - script.execute: constipation_orion_refresh lvgl: pages: - id: prints_charming_page bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false scrollbar_mode: 'OFF' on_swipe_left: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.next: animation: MOVE_LEFT time: 180ms on_swipe_right: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.previous: animation: MOVE_RIGHT time: 180ms on_load: - script.execute: prints_charming_refresh widgets: - bar: id: prints_charming_top_progress x: 0 y: 0 width: 800 height: 5 min_value: 0 max_value: 100 value: 0 bg_color: 1647403 indicator: bg_color: 65280 gesture_bubble: true - label: text: PrintsCharming x: 16 y: 17 width: 485 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: text: 1 / 5 x: 520 y: 24 width: 70 height: 22 text_color: 11449271 text_font: montserrat_14 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: SYNCING x: 598 y: 21 width: 186 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_status_label text_align: RIGHT - obj: x: 578 y: 64 width: 1 height: 362 bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - arc: id: prints_charming_progress_arc x: 24 y: 62 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: prints_charming_progress_label text_align: CENTER - label: text: -- x: 30 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_progress_detail text_align: CENTER - label: text: Progress x: 16 y: 199 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: prints_charming_nozzle_arc x: 210 y: 62 width: 154 height: 154 min_value: 0 max_value: 300 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 16755200 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: prints_charming_nozzle_label text_align: CENTER - label: text: -- x: 216 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_nozzle_detail text_align: CENTER - label: text: Nozzle x: 202 y: 199 width: 170 height: 26 text_color: 16755200 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: prints_charming_bed_arc x: 396 y: 62 width: 154 height: 154 min_value: 0 max_value: 120 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 58853 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: prints_charming_bed_label text_align: CENTER - label: text: -- x: 402 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_bed_detail text_align: CENTER - label: text: Bed x: 388 y: 199 width: 170 height: 26 text_color: 58853 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: prints_charming_fan_arc x: 24 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: prints_charming_fan_label text_align: CENTER - label: text: -- x: 30 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_fan_detail text_align: CENTER - label: text: Part x: 16 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: prints_charming_aux_arc x: 210 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: prints_charming_aux_label text_align: CENTER - label: text: -- x: 216 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_aux_detail text_align: CENTER - label: text: Aux x: 202 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: prints_charming_exhaust_arc x: 396 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: prints_charming_exhaust_label text_align: CENTER - label: text: -- x: 402 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_exhaust_detail text_align: CENTER - label: text: Exhaust x: 388 y: 366 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: -- x: 16 y: 401 width: 544 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true id: prints_charming_remaining_label text_align: CENTER - label: text: Telemetry unavailable x: 16 y: 430 width: 544 height: 20 text_color: 11449271 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_stage_label text_align: CENTER - label: text: -- x: 594 y: 397 width: 190 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: prints_charming_layers_label text_align: CENTER - label: text: AMS A x: 594 y: 70 width: 190 height: 28 text_color: 11449271 text_font: montserrat_20 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: id: prints_charming_tray_0_card x: 594 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_0_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A1 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_0_label text_align: CENTER - obj: id: prints_charming_tray_1_card x: 642 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_1_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A2 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_1_label text_align: CENTER - obj: id: prints_charming_tray_2_card x: 690 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_2_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A3 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_2_label text_align: CENTER - obj: id: prints_charming_tray_3_card x: 738 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_3_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A4 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_3_label text_align: CENTER - label: text: AMS B x: 594 y: 215 width: 190 height: 28 text_color: 11449271 text_font: montserrat_20 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: id: prints_charming_tray_4_card x: 594 y: 247 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_4_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'B1 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_4_label text_align: CENTER - obj: id: prints_charming_tray_5_card x: 642 y: 247 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_5_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'B2 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_5_label text_align: CENTER - obj: id: prints_charming_tray_6_card x: 690 y: 247 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_6_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'B3 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_6_label text_align: CENTER - obj: id: prints_charming_tray_7_card x: 738 y: 247 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_7_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'B4 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: prints_charming_tray_7_label text_align: CENTER - button: x: 16 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: < align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: x: 720 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: '>' align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: text: Waiting for Home Assistant x: 94 y: 449 width: 612 height: 22 text_color: 15658734 text_font: montserrat_14 long_mode: DOT gesture_bubble: true id: prints_charming_task_label text_align: CENTER - id: polly_pocket_page bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false scrollbar_mode: 'OFF' on_swipe_left: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.next: animation: MOVE_LEFT time: 180ms on_swipe_right: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.previous: animation: MOVE_RIGHT time: 180ms on_load: - script.execute: polly_pocket_refresh widgets: - bar: id: polly_pocket_top_progress x: 0 y: 0 width: 800 height: 5 min_value: 0 max_value: 100 value: 0 bg_color: 1647403 indicator: bg_color: 65280 gesture_bubble: true - label: text: Polly-Pocket x: 16 y: 17 width: 485 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: text: 2 / 5 x: 520 y: 24 width: 70 height: 22 text_color: 11449271 text_font: montserrat_14 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: SYNCING x: 598 y: 21 width: 186 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_status_label text_align: RIGHT - obj: x: 578 y: 64 width: 1 height: 362 bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - arc: id: polly_pocket_progress_arc x: 24 y: 62 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: polly_pocket_progress_label text_align: CENTER - label: text: -- x: 30 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_progress_detail text_align: CENTER - label: text: Progress x: 16 y: 199 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: polly_pocket_nozzle_arc x: 210 y: 62 width: 154 height: 154 min_value: 0 max_value: 300 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 16755200 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: polly_pocket_nozzle_label text_align: CENTER - label: text: -- x: 216 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_nozzle_detail text_align: CENTER - label: text: Nozzle x: 202 y: 199 width: 170 height: 26 text_color: 16755200 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: polly_pocket_bed_arc x: 396 y: 62 width: 154 height: 154 min_value: 0 max_value: 120 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 58853 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: polly_pocket_bed_label text_align: CENTER - label: text: -- x: 402 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_bed_detail text_align: CENTER - label: text: Bed x: 388 y: 199 width: 170 height: 26 text_color: 58853 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: polly_pocket_fan_arc x: 24 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: polly_pocket_fan_label text_align: CENTER - label: text: -- x: 30 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_fan_detail text_align: CENTER - label: text: Part x: 16 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: polly_pocket_aux_arc x: 210 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: polly_pocket_aux_label text_align: CENTER - label: text: -- x: 216 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_aux_detail text_align: CENTER - label: text: Aux x: 202 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: polly_pocket_exhaust_arc x: 396 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: polly_pocket_exhaust_label text_align: CENTER - label: text: -- x: 402 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_exhaust_detail text_align: CENTER - label: text: Exhaust x: 388 y: 366 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: -- x: 16 y: 401 width: 544 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true id: polly_pocket_remaining_label text_align: CENTER - label: text: Telemetry unavailable x: 16 y: 430 width: 544 height: 20 text_color: 11449271 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: polly_pocket_stage_label text_align: CENTER - label: text: -- x: 594 y: 397 width: 190 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: polly_pocket_layers_label text_align: CENTER - label: text: EXTERNAL SPOOL x: 594 y: 70 width: 190 height: 28 text_color: 11449271 text_font: montserrat_20 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: id: polly_pocket_tray_0_card x: 594 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: polly_pocket_tray_0_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'EXT --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: polly_pocket_tray_0_label text_align: CENTER - button: x: 16 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: < align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: x: 720 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: '>' align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: text: Waiting for Home Assistant x: 94 y: 449 width: 612 height: 22 text_color: 15658734 text_font: montserrat_14 long_mode: DOT gesture_bubble: true id: polly_pocket_task_label text_align: CENTER - id: ds_turd_flinger_page bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false scrollbar_mode: 'OFF' on_swipe_left: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.next: animation: MOVE_LEFT time: 180ms on_swipe_right: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.previous: animation: MOVE_RIGHT time: 180ms on_load: - script.execute: ds_turd_flinger_refresh widgets: - bar: id: ds_turd_flinger_top_progress x: 0 y: 0 width: 800 height: 5 min_value: 0 max_value: 100 value: 0 bg_color: 1647403 indicator: bg_color: 65280 gesture_bubble: true - label: text: Ds-Turd-Flinger x: 16 y: 17 width: 485 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: text: 3 / 5 x: 520 y: 24 width: 70 height: 22 text_color: 11449271 text_font: montserrat_14 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: SYNCING x: 598 y: 21 width: 186 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_status_label text_align: RIGHT - obj: x: 578 y: 64 width: 1 height: 362 bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - arc: id: ds_turd_flinger_progress_arc x: 24 y: 62 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_progress_label text_align: CENTER - label: text: -- x: 30 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_progress_detail text_align: CENTER - label: text: Progress x: 16 y: 199 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: ds_turd_flinger_nozzle_arc x: 210 y: 62 width: 154 height: 154 min_value: 0 max_value: 300 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 16755200 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_nozzle_label text_align: CENTER - label: text: -- x: 216 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_nozzle_detail text_align: CENTER - label: text: Nozzle x: 202 y: 199 width: 170 height: 26 text_color: 16755200 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: ds_turd_flinger_bed_arc x: 396 y: 62 width: 154 height: 154 min_value: 0 max_value: 120 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 58853 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_bed_label text_align: CENTER - label: text: -- x: 402 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_bed_detail text_align: CENTER - label: text: Bed x: 388 y: 199 width: 170 height: 26 text_color: 58853 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: ds_turd_flinger_fan_arc x: 24 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_fan_label text_align: CENTER - label: text: -- x: 30 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_fan_detail text_align: CENTER - label: text: Part x: 16 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: ds_turd_flinger_aux_arc x: 210 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_aux_label text_align: CENTER - label: text: -- x: 216 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_aux_detail text_align: CENTER - label: text: Aux x: 202 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: ds_turd_flinger_exhaust_arc x: 396 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_exhaust_label text_align: CENTER - label: text: -- x: 402 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_exhaust_detail text_align: CENTER - label: text: Exhaust x: 388 y: 366 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: -- x: 16 y: 401 width: 544 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_remaining_label text_align: CENTER - label: text: Telemetry unavailable x: 16 y: 430 width: 544 height: 20 text_color: 11449271 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_stage_label text_align: CENTER - label: text: -- x: 594 y: 397 width: 190 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_layers_label text_align: CENTER - label: text: AMS A x: 594 y: 70 width: 190 height: 28 text_color: 11449271 text_font: montserrat_20 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: id: ds_turd_flinger_tray_0_card x: 594 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_0_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A1 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_tray_0_label text_align: CENTER - obj: id: ds_turd_flinger_tray_1_card x: 642 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_1_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A2 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_tray_1_label text_align: CENTER - obj: id: ds_turd_flinger_tray_2_card x: 690 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_2_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A3 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_tray_2_label text_align: CENTER - obj: id: ds_turd_flinger_tray_3_card x: 738 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_3_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A4 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_tray_3_label text_align: CENTER - button: x: 16 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: < align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: x: 720 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: '>' align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: text: Waiting for Home Assistant x: 94 y: 449 width: 612 height: 22 text_color: 15658734 text_font: montserrat_14 long_mode: DOT gesture_bubble: true id: ds_turd_flinger_task_label text_align: CENTER - id: jordyns_layer_slayer_page bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false scrollbar_mode: 'OFF' on_swipe_left: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.next: animation: MOVE_LEFT time: 180ms on_swipe_right: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.previous: animation: MOVE_RIGHT time: 180ms on_load: - script.execute: jordyns_layer_slayer_refresh widgets: - bar: id: jordyns_layer_slayer_top_progress x: 0 y: 0 width: 800 height: 5 min_value: 0 max_value: 100 value: 0 bg_color: 1647403 indicator: bg_color: 65280 gesture_bubble: true - label: text: Jordyns-Layer-Slayer x: 16 y: 17 width: 485 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: text: 4 / 5 x: 520 y: 24 width: 70 height: 22 text_color: 11449271 text_font: montserrat_14 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: SYNCING x: 598 y: 21 width: 186 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_status_label text_align: RIGHT - obj: x: 578 y: 64 width: 1 height: 362 bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - arc: id: jordyns_layer_slayer_progress_arc x: 24 y: 62 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_progress_label text_align: CENTER - label: text: -- x: 30 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_progress_detail text_align: CENTER - label: text: Progress x: 16 y: 199 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: jordyns_layer_slayer_nozzle_arc x: 210 y: 62 width: 154 height: 154 min_value: 0 max_value: 300 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 16755200 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_nozzle_label text_align: CENTER - label: text: -- x: 216 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_nozzle_detail text_align: CENTER - label: text: Nozzle x: 202 y: 199 width: 170 height: 26 text_color: 16755200 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: jordyns_layer_slayer_bed_arc x: 396 y: 62 width: 154 height: 154 min_value: 0 max_value: 120 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 58853 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_bed_label text_align: CENTER - label: text: -- x: 402 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_bed_detail text_align: CENTER - label: text: Bed x: 388 y: 199 width: 170 height: 26 text_color: 58853 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: jordyns_layer_slayer_fan_arc x: 24 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_fan_label text_align: CENTER - label: text: -- x: 30 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_fan_detail text_align: CENTER - label: text: Part x: 16 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: jordyns_layer_slayer_aux_arc x: 210 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_aux_label text_align: CENTER - label: text: -- x: 216 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_aux_detail text_align: CENTER - label: text: Aux x: 202 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: jordyns_layer_slayer_exhaust_arc x: 396 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_exhaust_label text_align: CENTER - label: text: -- x: 402 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_exhaust_detail text_align: CENTER - label: text: Exhaust x: 388 y: 366 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: -- x: 16 y: 401 width: 544 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_remaining_label text_align: CENTER - label: text: Telemetry unavailable x: 16 y: 430 width: 544 height: 20 text_color: 11449271 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_stage_label text_align: CENTER - label: text: -- x: 594 y: 397 width: 190 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_layers_label text_align: CENTER - label: text: AMS A x: 594 y: 70 width: 190 height: 28 text_color: 11449271 text_font: montserrat_20 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: id: jordyns_layer_slayer_tray_0_card x: 594 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_0_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A1 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_tray_0_label text_align: CENTER - obj: id: jordyns_layer_slayer_tray_1_card x: 642 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_1_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A2 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_tray_1_label text_align: CENTER - obj: id: jordyns_layer_slayer_tray_2_card x: 690 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_2_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A3 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_tray_2_label text_align: CENTER - obj: id: jordyns_layer_slayer_tray_3_card x: 738 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_3_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A4 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_tray_3_label text_align: CENTER - button: x: 16 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: < align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: x: 720 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: '>' align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: text: Waiting for Home Assistant x: 94 y: 449 width: 612 height: 22 text_color: 15658734 text_font: montserrat_14 long_mode: DOT gesture_bubble: true id: jordyns_layer_slayer_task_label text_align: CENTER - id: constipation_orion_page bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false scrollbar_mode: 'OFF' on_swipe_left: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.next: animation: MOVE_LEFT time: 180ms on_swipe_right: - lambda: !lambda |- if (auto *input = lv_indev_active()) lv_indev_wait_release(input); - lvgl.page.previous: animation: MOVE_RIGHT time: 180ms on_load: - script.execute: constipation_orion_refresh widgets: - bar: id: constipation_orion_top_progress x: 0 y: 0 width: 800 height: 5 min_value: 0 max_value: 100 value: 0 bg_color: 1647403 indicator: bg_color: 65280 gesture_bubble: true - label: text: Constipation-Orion x: 16 y: 17 width: 485 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: text: 5 / 5 x: 520 y: 24 width: 70 height: 22 text_color: 11449271 text_font: montserrat_14 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: SYNCING x: 598 y: 21 width: 186 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_status_label text_align: RIGHT - obj: x: 578 y: 64 width: 1 height: 362 bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - arc: id: constipation_orion_progress_arc x: 24 y: 62 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: constipation_orion_progress_label text_align: CENTER - label: text: -- x: 30 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_progress_detail text_align: CENTER - label: text: Progress x: 16 y: 199 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: constipation_orion_nozzle_arc x: 210 y: 62 width: 154 height: 154 min_value: 0 max_value: 300 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 16755200 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: constipation_orion_nozzle_label text_align: CENTER - label: text: -- x: 216 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_nozzle_detail text_align: CENTER - label: text: Nozzle L x: 202 y: 199 width: 170 height: 26 text_color: 16755200 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: constipation_orion_bed_arc x: 396 y: 62 width: 154 height: 154 min_value: 0 max_value: 120 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 58853 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 109 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: constipation_orion_bed_label text_align: CENTER - label: text: -- x: 402 y: 148 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_bed_detail text_align: CENTER - label: text: Bed x: 388 y: 199 width: 170 height: 26 text_color: 58853 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: constipation_orion_fan_arc x: 24 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 15658734 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 30 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: constipation_orion_fan_label text_align: CENTER - label: text: -- x: 30 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_fan_detail text_align: CENTER - label: text: Part x: 16 y: 366 width: 170 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: constipation_orion_aux_arc x: 210 y: 229 width: 154 height: 154 min_value: 0 max_value: 300 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 16755200 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 216 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: constipation_orion_aux_label text_align: CENTER - label: text: -- x: 216 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_aux_detail text_align: CENTER - label: text: Nozzle R x: 202 y: 366 width: 170 height: 26 text_color: 16755200 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - arc: id: constipation_orion_exhaust_arc x: 396 y: 229 width: 154 height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 arc_width: 13 arc_color: 1647403 indicator: arc_color: 65280 arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- x: 402 y: 276 width: 142 height: 40 text_color: 15658734 text_font: montserrat_32 long_mode: DOT gesture_bubble: true id: constipation_orion_exhaust_label text_align: CENTER - label: text: -- x: 402 y: 315 width: 142 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_exhaust_detail text_align: CENTER - label: text: Exhaust x: 388 y: 366 width: 170 height: 26 text_color: 65280 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - label: text: -- x: 16 y: 401 width: 544 height: 34 text_color: 65280 text_font: montserrat_26 long_mode: DOT gesture_bubble: true id: constipation_orion_remaining_label text_align: CENTER - label: text: Telemetry unavailable x: 16 y: 430 width: 544 height: 20 text_color: 11449271 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: constipation_orion_stage_label text_align: CENTER - label: text: -- x: 594 y: 397 width: 190 height: 24 text_color: 11449271 text_font: montserrat_16 long_mode: DOT gesture_bubble: true id: constipation_orion_layers_label text_align: CENTER - label: text: AMS A x: 594 y: 70 width: 190 height: 28 text_color: 11449271 text_font: montserrat_20 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: id: constipation_orion_tray_0_card x: 594 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_0_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A1 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: constipation_orion_tray_0_label text_align: CENTER - obj: id: constipation_orion_tray_1_card x: 642 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_1_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A2 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: constipation_orion_tray_1_label text_align: CENTER - obj: id: constipation_orion_tray_2_card x: 690 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_2_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A3 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: constipation_orion_tray_2_label text_align: CENTER - obj: id: constipation_orion_tray_3_card x: 738 y: 102 width: 44 height: 82 bg_color: 0 radius: 5 border_width: 1 border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_3_swatch x: 3 y: 3 width: 36 height: 40 bg_color: 1647403 radius: 4 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - label: text: 'A4 --' x: 1 y: 46 width: 40 height: 34 text_color: 15658734 text_font: montserrat_12 long_mode: DOT gesture_bubble: true id: constipation_orion_tray_3_label text_align: CENTER - button: x: 16 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: < align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: x: 720 y: 446 width: 64 height: 30 bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: text: '>' align: CENTER text_color: 15658734 text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: text: Waiting for Home Assistant x: 94 y: 449 width: 612 height: 22 text_color: 15658734 text_font: montserrat_14 long_mode: DOT gesture_bubble: true id: constipation_orion_task_label text_align: CENTER - id: color_test_page skip: true bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false on_swipe_left: - lvgl.page.next: {} on_swipe_right: - lvgl.page.previous: {} widgets: - label: text: DISPLAY COLOR TEST x: 16 y: 18 width: 768 height: 36 text_color: 15658734 text_font: montserrat_28 long_mode: DOT gesture_bubble: true - label: text: Each block must match its label. Swipe to return to the printers. x: 16 y: 62 width: 768 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true - obj: x: 16 y: 118 width: 122 height: 200 bg_color: 16711680 bg_opa: COVER border_width: 0 scrollable: false gesture_bubble: true - label: text: RED x: 16 y: 332 width: 122 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: x: 145 y: 118 width: 122 height: 200 bg_color: 65280 bg_opa: COVER border_width: 0 scrollable: false gesture_bubble: true - label: text: GREEN x: 145 y: 332 width: 122 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: x: 274 y: 118 width: 122 height: 200 bg_color: 255 bg_opa: COVER border_width: 0 scrollable: false gesture_bubble: true - label: text: BLUE x: 274 y: 332 width: 122 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: x: 403 y: 118 width: 122 height: 200 bg_color: 16777215 bg_opa: COVER border_width: 0 scrollable: false gesture_bubble: true - label: text: WHITE x: 403 y: 332 width: 122 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: x: 532 y: 118 width: 122 height: 200 bg_color: 65535 bg_opa: COVER border_width: 0 scrollable: false gesture_bubble: true - label: text: CYAN x: 532 y: 332 width: 122 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER - obj: x: 661 y: 118 width: 122 height: 200 bg_color: 16711935 bg_opa: COVER border_width: 0 scrollable: false gesture_bubble: true - label: text: MAGENTA x: 661 y: 332 width: 122 height: 26 text_color: 15658734 text_font: montserrat_18 long_mode: DOT gesture_bubble: true text_align: CENTER button: - platform: template name: Display Color Test entity_category: diagnostic on_press: - lvgl.page.show: color_test_page