From f672de484e25734018ec1650296a9f4361df4b3a Mon Sep 17 00:00:00 2001 From: Joshua King Date: Sat, 17 Oct 2026 17:26:25 -0400 Subject: [PATCH] updates --- esphome/bambu-display/README.md | 29 +- esphome/bambu-display/dashboard.h | 72 +- esphome/bambu-display/generate.py | 155 +- esphome/bambu-display/generated.yaml | 4285 +++++++++++------ esphome/bambu-display/preview.py | 13 +- .../previews/constipation_orion.png | Bin 35412 -> 37549 bytes .../previews/ds_turd_flinger.png | Bin 33309 -> 35301 bytes .../previews/jordyns_layer_slayer.png | Bin 33736 -> 35208 bytes .../bambu-display/previews/polly_pocket.png | Bin 32051 -> 34838 bytes .../previews/prints_charming.png | Bin 33779 -> 39437 bytes esphome/bambu-display/printers.yaml | 2 + esphome/bambu-display/test_dashboard.cpp | 9 +- esphome/bambu-display/test_generate.py | 27 +- esphome/bambu-printer-display.yaml | 15 +- 14 files changed, 2946 insertions(+), 1661 deletions(-) diff --git a/esphome/bambu-display/README.md b/esphome/bambu-display/README.md index 7038926..de26f1c 100644 --- a/esphome/bambu-display/README.md +++ b/esphome/bambu-display/README.md @@ -25,12 +25,16 @@ The configured swipe order is: Swipe left for the next printer or right for the previous printer. Navigation wraps from the last page to the first. Previous/Next buttons provide the same navigation. -Swipes propagate through the metric cards and filament slots. A swipe consumes the +Swipes propagate through the arc gauges and filament slots. A swipe consumes the rest of that touch so dragging across a navigation button does not also click it. Each page shows print status, job name, progress, nozzle and bed current/target -temperatures, remaining time, current/total layers, print stage, part fan speed and -filament colors/types. The active filament slot has a green outline. Print errors +temperatures, remaining time, estimated finish time, current/total layers, print +stage, fan speeds and filament colors/types. The layout follows BambuHelper's +classic gauges: black background, bright green accents, six arc gauges and a +vertical AMS column. Nozzle arcs are orange and the bed arc is cyan. For dual-nozzle +printers the auxiliary-fan position becomes the right-nozzle gauge. The active +filament slot has a green outline. Print errors and HMS alerts change the status badge to red; paused prints use amber. The display shows an alert badge rather than the detailed HMS diagnostic text. @@ -39,6 +43,10 @@ to `--` rather than continuing to show cached values as live. Unknown individual values also show `--`. Remaining time respects the HA sensor's `h`, `min` or `s` unit, and temperature labels use the imported HA temperature unit. Only the visible page is refreshed each second; every printer's subscriptions remain connected. +Auxiliary and exhaust fans are imported only for printers with those sensors; +unsupported fan readings show `--`. Finish time is estimated from HA's remaining +time and the HA-synchronized clock. Set `time.timezone` in the main YAML if your +timezone differs from `America/New_York`. This version provides monitoring and local page navigation. Camera feeds, cover images, printer pause/stop controls, power switching, cloud login and automatic @@ -67,6 +75,18 @@ this board. If GT911 is not found at `0x5D`, inspect the I²C scan and use its r address (some hardware revisions select `0x14`). Backlight is GPIO2; RGB data pins and timings are explicit in the main YAML rather than borrowed from a 5″ board. +The display and LVGL both use **big-endian RGB565**. With `mipi_rgb`'s named +`red`/`green`/`blue` pin groups, its generated bus pin map already exchanges the +two bytes. Selecting little-endian pixels corrupts colors on the physical panel +even though a host preview can look correct. Keep both byte-order settings aligned +with the bus mapping; changing the RGB/BGR label alone is insufficient for this +RPI panel's direct framebuffer path. + +To check the physical colors, open the device's **Display Color Test** diagnostic +button in Home Assistant. It shows labeled red, green, blue, white, cyan and magenta +blocks. Swipe to return to the printers. This test page is skipped during normal +printer navigation. Its expected image is [previews/color_test.png](previews/color_test.png). + CLI checks from the repository root: ```sh @@ -106,7 +126,8 @@ is also tested with seven. Each printer's filament strip supports up to eight sl For a dual-nozzle printer add `dual_nozzle: true`. For external filament add `external_spools: [{label: EXT, entity: sensor.my_external_spool}]`. Per-metric `entities` overrides use the keys in `NUMERIC`, `DUAL`, `TEXT` and `BINARY` inside -`generate.py`. A remaining-time override also updates its unit subscription. +`generate.py`. Use `extra_fans: [aux_fan, exhaust_fan]` only where those HA entities +exist; their mappings are in `EXTRA_FANS`. A remaining-time override also updates its unit subscription. Filament entries use the Bambu integration's `type`, `color` and `active` attributes. ## Development checks and screenshots diff --git a/esphome/bambu-display/dashboard.h b/esphome/bambu-display/dashboard.h index 945bac2..cdc5017 100644 --- a/esphome/bambu-display/dashboard.h +++ b/esphome/bambu-display/dashboard.h @@ -10,11 +10,11 @@ namespace bambu_display { -constexpr uint32_t GREEN = 0x60DE9A; -constexpr uint32_t MUTED = 0x91A3B5; +constexpr uint32_t GREEN = 0x00FF00; +constexpr uint32_t MUTED = 0xAEB3B7; constexpr uint32_t RED = 0xFF737B; constexpr uint32_t AMBER = 0xF2C572; -constexpr uint32_t TRACK = 0x263442; +constexpr uint32_t TRACK = 0x19232B; inline std::string lower(std::string text) { for (char &c : text) c = static_cast(std::tolower(static_cast(c))); @@ -67,6 +67,20 @@ inline std::string remaining(float value, const std::string &unit) { return buffer; } +inline int duration_seconds(float value, const std::string &unit) { + if (!std::isfinite(value) || value < 0) return -1; + double seconds; + if (unit == "h") seconds = double(value) * 3600; + else if (unit == "min") seconds = double(value) * 60; + else if (unit == "s") seconds = value; + else return -1; + return seconds <= 60000000 ? static_cast(std::round(seconds)) : -1; +} + +inline float celsius(float value, const std::string &unit) { + return unit == "°F" || unit == "F" ? (value - 32.0f) * 5.0f / 9.0f : value; +} + inline uint32_t filament_color(std::string value) { if (!value.empty() && value[0] == '#') value.erase(0, 1); // Bambu publishes RGB or RGBA, with alpha at the end. @@ -89,8 +103,10 @@ struct Snapshot { bool connected = false; std::string online, status, task, stage, print_error, hms_error; std::string remaining_unit, nozzle_unit, bed_unit; + std::string finish_time; float progress = NAN, nozzle = NAN, nozzle_target = NAN, bed = NAN, bed_target = NAN; float time_left = NAN, layer = NAN, total_layers = NAN, fan = NAN; + float aux_fan = NAN, exhaust_fan = NAN; bool dual_nozzle = false; float left_nozzle = NAN, left_target = NAN, right_nozzle = NAN, right_target = NAN; std::vector trays; @@ -127,8 +143,10 @@ struct Snapshot { namespace bambu_display { struct TrayWidgets { lv_obj_t *card, *swatch, *label; }; +struct GaugeWidgets { lv_obj_t *arc, *value, *detail; }; struct Widgets { - lv_obj_t *status, *task, *arc, *progress, *nozzle, *bed, *remaining, *layers, *stage; + lv_obj_t *status, *task, *top_progress, *remaining, *layers, *stage; + GaugeWidgets progress, nozzle, bed, fan, aux, exhaust; std::vector trays; }; @@ -136,33 +154,49 @@ inline void set_text(lv_obj_t *label, const std::string &text) { if (text != lv_label_get_text(label)) lv_label_set_text(label, text.c_str()); } +inline void render_gauge(const GaugeWidgets &widgets, float value, float position, + int maximum, const std::string &detail) { + lv_arc_set_value(widgets.arc, gauge_value(position, maximum)); + set_text(widgets.value, number(value)); + set_text(widgets.detail, detail); +} + inline void render(const Snapshot &data, const Widgets &widgets) { const bool live = data.live(); const uint32_t color = data.status_color(); set_text(widgets.status, data.status_text()); lv_obj_set_style_text_color(widgets.status, lv_color_hex(color), 0); - lv_obj_set_style_arc_color(widgets.arc, lv_color_hex(color), LV_PART_INDICATOR); - lv_arc_set_value(widgets.arc, live ? gauge_value(data.progress, 100) : 0); - set_text(widgets.progress, live && std::isfinite(data.progress) - ? number(std::clamp(data.progress, 0.0f, 100.0f)) + "%" : "--"); + lv_obj_set_style_arc_color(widgets.progress.arc, lv_color_hex(color), LV_PART_INDICATOR); + lv_bar_set_value(widgets.top_progress, live ? gauge_value(data.progress, 100) : 0, LV_ANIM_OFF); + render_gauge(widgets.progress, live && std::isfinite(data.progress) + ? std::clamp(data.progress, 0.0f, 100.0f) : NAN, live ? data.progress : NAN, 100, + live ? remaining(data.time_left, data.remaining_unit) : "--"); set_text(widgets.task, live ? (valid_text(data.task) ? data.task : "No active print") : data.connected ? "Waiting for printer data" : "Waiting for Home Assistant"); - if (live && data.dual_nozzle) { - set_text(widgets.nozzle, "L " + temperature(data.left_nozzle, data.left_target, data.nozzle_unit) - + "\nR " + temperature(data.right_nozzle, data.right_target, data.nozzle_unit)); - } else { - set_text(widgets.nozzle, live ? temperature(data.nozzle, data.nozzle_target, data.nozzle_unit) : "--"); - } - set_text(widgets.bed, live ? temperature(data.bed, data.bed_target, data.bed_unit) : "--"); - set_text(widgets.remaining, live ? remaining(data.time_left, data.remaining_unit) : "--"); - set_text(widgets.layers, live ? number(data.layer) + " / " + number(data.total_layers) : "--"); + const float nozzle = data.dual_nozzle ? data.left_nozzle : data.nozzle; + const float target = data.dual_nozzle ? data.left_target : data.nozzle_target; + render_gauge(widgets.nozzle, live ? nozzle : NAN, live ? celsius(nozzle, data.nozzle_unit) : NAN, + 300, live ? "/ " + number(target) + " " + data.nozzle_unit : "--"); + render_gauge(widgets.bed, live ? data.bed : NAN, live ? celsius(data.bed, data.bed_unit) : NAN, + 120, live ? "/ " + number(data.bed_target) + " " + data.bed_unit : "--"); + render_gauge(widgets.fan, live ? data.fan : NAN, live ? data.fan : NAN, 100, "%"); + if (data.dual_nozzle) + render_gauge(widgets.aux, live ? data.right_nozzle : NAN, + live ? celsius(data.right_nozzle, data.nozzle_unit) : NAN, + 300, live ? "/ " + number(data.right_target) + " " + data.nozzle_unit : "--"); + else + render_gauge(widgets.aux, live ? data.aux_fan : NAN, live ? data.aux_fan : NAN, 100, "%"); + render_gauge(widgets.exhaust, live ? data.exhaust_fan : NAN, live ? data.exhaust_fan : NAN, 100, "%"); + std::string time_line = live ? remaining(data.time_left, data.remaining_unit) : "--"; + if (live && !data.finish_time.empty()) time_line = data.finish_time + " | " + time_line; + set_text(widgets.remaining, time_line); + set_text(widgets.layers, live ? "Layer " + number(data.layer) + " / " + number(data.total_layers) : "--"); std::string stage = live ? humanize(data.stage) : "Telemetry unavailable"; - if (live && std::isfinite(data.fan)) stage += " | Part fan " + number(data.fan) + "%"; set_text(widgets.stage, stage); for (size_t i = 0; i < std::min(data.trays.size(), widgets.trays.size()); ++i) { const auto &tray = data.trays[i]; const auto &widget = widgets.trays[i]; - set_text(widget.label, tray.label + " " + (live && valid_text(tray.type) ? tray.type : "--")); + set_text(widget.label, tray.label + "\n" + (live && valid_text(tray.type) ? tray.type : "--")); lv_obj_set_style_bg_color(widget.swatch, lv_color_hex(live ? filament_color(tray.color) : TRACK), 0); lv_obj_set_style_border_color(widget.card, lv_color_hex(live && is_on(tray.active) ? GREEN : TRACK), 0); } diff --git a/esphome/bambu-display/generate.py b/esphome/bambu-display/generate.py index d731287..5c2b0dd 100644 --- a/esphome/bambu-display/generate.py +++ b/esphome/bambu-display/generate.py @@ -20,10 +20,12 @@ DUAL = { 'left_nozzle': 'left_nozzle_temperature', 'left_target': 'left_nozzle_target_temperature', 'right_nozzle': 'right_nozzle_temperature', 'right_target': 'right_nozzle_target_temperature', } +EXTRA_FANS = {'aux_fan': 'aux_fan_speed', 'exhaust_fan': 'chamber_fan_speed'} TEXT = {'status': 'print_status', 'task': 'task_name', 'stage': 'current_stage'} BINARY = {'online': 'online', 'print_error': 'print_error', 'hms_error': 'hms_errors'} BG, CARD, TRACK, TEXT_COLOR, MUTED, GREEN = ( - 0x0D131B, 0x17222E, 0x263442, 0xEDF3F7, 0x91A3B5, 0x60DE9A) + 0x000000, 0x000000, 0x19232B, 0xEEEEEE, 0xAEB3B7, 0x00FF00) +ORANGE, CYAN = 0xFFAA00, 0x00E5E5 class Lambda(str): @@ -67,6 +69,8 @@ def validate_printers(printers): raise ValueError(f'{pid}: the filament strip fits up to eight slots') if 'dual_nozzle' in printer and not isinstance(printer['dual_nozzle'], bool): raise ValueError(f'{pid}: dual_nozzle must be true or false') + if any(key not in EXTRA_FANS for key in printer.get('extra_fans', [])): + raise ValueError(f'{pid}: extra_fans supports aux_fan and exhaust_fan') for value in printer.get('entities', {}).values(): if not isinstance(value, str) or not re.fullmatch(r'(sensor|binary_sensor)\.[a-z0-9_]+', value): raise ValueError(f'{pid}: invalid entity override: {value}') @@ -79,70 +83,76 @@ def label(text, x, y, width, font=18, **kwargs): 'gesture_bubble': True, **kwargs}} -def card(pid, name, title, x, y, width=238, height=104, font=26): - return {'obj': {'x': x, 'y': y, 'width': width, 'height': height, - 'bg_color': CARD, 'radius': 16, 'border_width': 0, - 'pad_all': 0, 'scrollable': False, 'gesture_bubble': True, - 'widgets': [ - label(title, 16, 12, width - 32, 14, text_color=MUTED), - label('--', 16, 38, width - 32, font, id=f'{pid}_{name}_label', height=height - 42), - ]}} +def gauge(pid, key, title, x, y, color, maximum): + return [ + {'arc': {'id': f'{pid}_{key}_arc', 'x': x + 8, 'y': y, 'width': 154, 'height': 154, + 'min_value': 0, 'max_value': maximum, 'value': 0, + 'start_angle': 135, 'end_angle': 45, 'arc_width': 13, + 'arc_color': TRACK, 'indicator': {'arc_color': color, 'arc_width': 13}, + 'adjustable': False, 'gesture_bubble': True}}, + label('--', x + 14, y + 47, 142, 32, id=f'{pid}_{key}_label', text_align='CENTER'), + label('--', x + 14, y + 86, 142, 16, id=f'{pid}_{key}_detail', text_align='CENTER', text_color=MUTED), + label(title, x, y + 137, 170, 18, text_align='CENTER', text_color=color), + ] def page_for(printer, index, total): pid = printer['id'] widgets = [ - label(printer['name'], 24, 16, 545, 28), - label(printer['subtitle'], 24, 53, 545, 14, text_color=MUTED), - {'obj': {'x': 586, 'y': 20, 'width': 190, 'height': 42, - 'bg_color': CARD, 'radius': 21, 'border_width': 0, 'pad_all': 0, - 'scrollable': False, 'gesture_bubble': True, - 'widgets': [label('SYNCING', 0, 11, 190, 16, - id=f'{pid}_status_label', text_align='CENTER', text_color=MUTED)]}}, - label('Waiting for Home Assistant', 24, 88, 752, 20, id=f'{pid}_task_label'), - {'arc': {'id': f'{pid}_progress_arc', 'x': 28, 'y': 132, 'width': 224, 'height': 224, - 'min_value': 0, 'max_value': 100, 'value': 0, - 'start_angle': 135, 'end_angle': 45, 'arc_width': 14, - 'arc_color': TRACK, 'indicator': {'arc_color': GREEN, 'arc_width': 14}, - 'adjustable': False, 'gesture_bubble': True}}, - label('--', 42, 207, 196, 48, id=f'{pid}_progress_label', text_align='CENTER'), - label('PRINT PROGRESS', 42, 266, 196, 14, text_align='CENTER', text_color=MUTED), - card(pid, 'nozzle', 'NOZZLES L/R / TARGET' if printer.get('dual_nozzle') - else 'NOZZLE / TARGET', 282, 132, height=118, - font=18 if printer.get('dual_nozzle') else 26), - card(pid, 'bed', 'BED / TARGET', 538, 132, height=118), - card(pid, 'remaining', 'REMAINING', 282, 262, height=86), - card(pid, 'layers', 'LAYER', 538, 262, height=86), - label('Telemetry unavailable', 24, 358, 752, 16, id=f'{pid}_stage_label', text_color=MUTED), - label('FILAMENT / ACTIVE SLOT OUTLINED IN GREEN', 24, 383, 752, 12, text_color=MUTED), + {'bar': {'id': f'{pid}_top_progress', 'x': 0, 'y': 0, 'width': 800, 'height': 5, + 'min_value': 0, 'max_value': 100, 'value': 0, 'bg_color': TRACK, + 'indicator': {'bg_color': GREEN}, 'gesture_bubble': True}}, + label(printer['name'], 16, 17, 485, 26, text_color=GREEN), + label(f'{index + 1} / {total}', 520, 24, 70, 14, text_color=MUTED, text_align='CENTER'), + label('SYNCING', 598, 21, 186, 16, id=f'{pid}_status_label', text_align='RIGHT', text_color=MUTED), + {'obj': {'x': 578, 'y': 64, 'width': 1, 'height': 362, 'bg_color': TRACK, + 'border_width': 0, 'pad_all': 0, 'scrollable': False, 'gesture_bubble': True}}, + ] + widgets += gauge(pid, 'progress', 'Progress', 16, 62, GREEN, 100) + widgets += gauge(pid, 'nozzle', 'Nozzle L' if printer.get('dual_nozzle') else 'Nozzle', + 202, 62, ORANGE, 300) + widgets += gauge(pid, 'bed', 'Bed', 388, 62, CYAN, 120) + widgets += gauge(pid, 'fan', 'Part', 16, 229, 0xEEEEEE, 100) + widgets += gauge(pid, 'aux', 'Nozzle R' if printer.get('dual_nozzle') else 'Aux', + 202, 229, ORANGE if printer.get('dual_nozzle') else 0xEEEEEE, + 300 if printer.get('dual_nozzle') else 100) + widgets += gauge(pid, 'exhaust', 'Exhaust', 388, 229, GREEN, 100) + widgets += [ + label('--', 16, 401, 544, 26, id=f'{pid}_remaining_label', text_color=GREEN, text_align='CENTER'), + label('Telemetry unavailable', 16, 430, 544, 12, id=f'{pid}_stage_label', text_color=MUTED, text_align='CENTER'), + label('--', 594, 397, 190, 16, id=f'{pid}_layers_label', text_color=MUTED, text_align='CENTER'), ] trays = trays_for(printer) - if trays: - width = (752 - 8 * (len(trays) - 1)) // len(trays) - for i, tray in enumerate(trays): - widgets.append({'obj': { - 'id': f'{pid}_tray_{i}_card', 'x': 24 + (width + 8) * i, 'y': 401, - 'width': width, 'height': 32, 'bg_color': CARD, 'radius': 6, - 'border_width': 1, 'border_color': TRACK, 'pad_all': 0, - 'scrollable': False, 'gesture_bubble': True, - 'widgets': [ - {'obj': {'id': f'{pid}_tray_{i}_swatch', 'x': 1, 'y': 1, 'width': width - 4, - 'height': 5, 'bg_color': TRACK, 'radius': 2, 'border_width': 0, - 'pad_all': 0, 'scrollable': False, 'gesture_bubble': True}}, - label(f'{tray["label"]} --', 6, 11, width - 12, 12, - id=f'{pid}_tray_{i}_label'), - ]}}) - else: - widgets.append(label('No filament slots configured', 24, 403, 752, 14, text_color=MUTED)) - for direction, x, text in (('previous', 24, '< PREV'), ('next', 688, 'NEXT >')): - widgets.append({'button': {'x': x, 'y': 444, 'width': 88, 'height': 30, - 'bg_color': CARD, 'radius': 8, 'border_width': 0, + for i, tray in enumerate(trays): + bank = i // 4 + slot = i % 4 + if slot == 0: + title = 'AMS ' + tray['label'][:-1] if tray['label'][-1:].isdigit() else 'EXTERNAL SPOOL' + widgets.append(label(title, 594, 70 + bank * 145, 190, 20, + text_align='CENTER', text_color=MUTED)) + widgets.append({'obj': { + 'id': f'{pid}_tray_{i}_card', 'x': 594 + 48 * slot, 'y': 102 + bank * 145, + 'width': 44, 'height': 82, 'bg_color': BG, 'radius': 5, + 'border_width': 1, 'border_color': TRACK, 'pad_all': 0, + 'scrollable': False, 'gesture_bubble': True, + 'widgets': [ + {'obj': {'id': f'{pid}_tray_{i}_swatch', 'x': 3, 'y': 3, 'width': 36, + 'height': 40, 'bg_color': TRACK, 'radius': 4, 'border_width': 0, + 'pad_all': 0, 'scrollable': False, 'gesture_bubble': True}}, + label(f'{tray["label"]}\n--', 1, 46, 40, 12, height=34, + id=f'{pid}_tray_{i}_label', text_align='CENTER'), + ]}}) + if not trays: + widgets.append(label('No AMS', 594, 150, 190, 20, text_color=MUTED, text_align='CENTER')) + for direction, x, text in (('previous', 16, '<'), ('next', 720, '>')): + widgets.append({'button': {'x': x, 'y': 446, 'width': 64, 'height': 30, + 'bg_color': TRACK, 'radius': 8, 'border_width': 0, 'pad_all': 0, 'gesture_bubble': True, 'widgets': [{'label': {'text': text, 'align': 'CENTER', - 'text_font': 'montserrat_12'}}], + 'text_color': TEXT_COLOR, 'text_font': 'montserrat_18'}}], 'on_click': [{f'lvgl.page.{direction}': {}}]}}) - widgets.append(label(f'{index + 1} / {total} SWIPE LEFT / RIGHT', 130, 451, 540, 14, - text_align='CENTER', text_color=MUTED)) + widgets.append(label('Waiting for Home Assistant', 94, 449, 612, 14, + id=f'{pid}_task_label', text_align='CENTER')) return {'id': f'{pid}_page', 'bg_color': BG, 'bg_opa': 'COVER', 'pad_all': 0, 'scrollable': False, 'scrollbar_mode': 'OFF', 'on_swipe_left': [ @@ -154,6 +164,25 @@ def page_for(printer, index, total): 'on_load': [{'script.execute': f'{pid}_refresh'}], 'widgets': widgets} +def color_test_page(): + widgets = [label('DISPLAY COLOR TEST', 16, 18, 768, 28), + label('Each block must match its label. Swipe to return to the printers.', + 16, 62, 768, 18)] + colors = [('RED', 0xFF0000), ('GREEN', 0x00FF00), ('BLUE', 0x0000FF), + ('WHITE', 0xFFFFFF), ('CYAN', 0x00FFFF), ('MAGENTA', 0xFF00FF)] + for i, (name, color) in enumerate(colors): + widgets += [ + {'obj': {'x': 16 + i * 129, 'y': 118, 'width': 122, 'height': 200, + 'bg_color': color, 'bg_opa': 'COVER', 'border_width': 0, + 'scrollable': False, 'gesture_bubble': True}}, + label(name, 16 + i * 129, 332, 122, 18, text_align='CENTER'), + ] + return {'id': 'color_test_page', 'skip': True, 'bg_color': BG, 'bg_opa': 'COVER', + 'pad_all': 0, 'scrollable': False, + 'on_swipe_left': [{'lvgl.page.next': {}}], + 'on_swipe_right': [{'lvgl.page.previous': {}}], 'widgets': widgets} + + def generate(printers): validate_printers(printers) package = {'sensor': [], 'text_sensor': [], 'script': [], @@ -163,6 +192,7 @@ def generate(printers): fields = dict(NUMERIC) if printer.get('dual_nozzle'): fields.update(DUAL) + fields.update({key: EXTRA_FANS[key] for key in printer.get('extra_fans', [])}) expressions = {} for key, suffix in fields.items(): sid = f'{pid}_{key}' @@ -193,6 +223,12 @@ def generate(printers): lines.append(f'data.{key} = {expr};') if printer.get('dual_nozzle'): lines.append('data.dual_nozzle = true;') + lines += [ + '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");', + ] tray_widgets = [] for i, tray in enumerate(trays): lines.append('data.trays.push_back({' + ', '.join([ @@ -201,8 +237,9 @@ def generate(printers): tray_widgets.append('{' + ', '.join(f'id({pid}_tray_{i}_{part})' for part in ('card', 'swatch', 'label')) + '}') refs = [f'id({pid}_{key})' for key in ( - 'status_label', 'task_label', 'progress_arc', 'progress_label', 'nozzle_label', - 'bed_label', 'remaining_label', 'layers_label', 'stage_label')] + 'status_label', 'task_label', 'top_progress', 'remaining_label', 'layers_label', 'stage_label')] + for key in ('progress', 'nozzle', 'bed', 'fan', 'aux', 'exhaust'): + refs.append('{' + ', '.join(f'id({pid}_{key}_{part})' for part in ('arc', 'label', 'detail')) + '}') refs.append('{' + ', '.join(tray_widgets) + '}') lines.append('bambu_display::render(data, {' + ', '.join(refs) + '});') package['script'].append({'id': f'{pid}_refresh', 'then': [{'lambda': Lambda('\n'.join(lines))}]}) @@ -210,6 +247,10 @@ def generate(printers): 'condition': {'lvgl.page.is_showing': f'{pid}_page'}, 'then': [{'script.execute': f'{pid}_refresh'}]}}) package['lvgl']['pages'].append(page_for(printer, index, len(printers))) + package['lvgl']['pages'].append(color_test_page()) + package['button'] = [{'platform': 'template', 'name': 'Display Color Test', + 'entity_category': 'diagnostic', + 'on_press': [{'lvgl.page.show': 'color_test_page'}]}] return package diff --git a/esphome/bambu-display/generated.yaml b/esphome/bambu-display/generated.yaml index b9890d9..62432f8 100644 --- a/esphome/bambu-display/generated.yaml +++ b/esphome/bambu-display/generated.yaml @@ -36,6 +36,14 @@ sensor: 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 @@ -196,6 +204,10 @@ sensor: 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 @@ -722,6 +734,8 @@ script: 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; @@ -731,6 +745,10 @@ script: 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}); @@ -739,7 +757,7 @@ script: 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_progress_arc), id(prints_charming_progress_label), id(prints_charming_nozzle_label), id(prints_charming_bed_label), id(prints_charming_remaining_label), id(prints_charming_layers_label), id(prints_charming_stage_label), {{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)}}}); + 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 |- @@ -763,8 +781,12 @@ script: 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_progress_arc), id(polly_pocket_progress_label), id(polly_pocket_nozzle_label), id(polly_pocket_bed_label), id(polly_pocket_remaining_label), id(polly_pocket_layers_label), id(polly_pocket_stage_label), {{id(polly_pocket_tray_0_card), id(polly_pocket_tray_0_swatch), id(polly_pocket_tray_0_label)}}}); + 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 |- @@ -788,11 +810,15 @@ script: 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_progress_arc), id(ds_turd_flinger_progress_label), id(ds_turd_flinger_nozzle_label), id(ds_turd_flinger_bed_label), id(ds_turd_flinger_remaining_label), id(ds_turd_flinger_layers_label), id(ds_turd_flinger_stage_label), {{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)}}}); + 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 |- @@ -816,11 +842,15 @@ script: 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_progress_arc), id(jordyns_layer_slayer_progress_label), id(jordyns_layer_slayer_nozzle_label), id(jordyns_layer_slayer_bed_label), id(jordyns_layer_slayer_remaining_label), id(jordyns_layer_slayer_layers_label), id(jordyns_layer_slayer_stage_label), {{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)}}}); + 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 |- @@ -839,6 +869,7 @@ script: 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; @@ -849,11 +880,15 @@ script: 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_progress_arc), id(constipation_orion_progress_label), id(constipation_orion_nozzle_label), id(constipation_orion_bed_label), id(constipation_orion_remaining_label), id(constipation_orion_layers_label), id(constipation_orion_stage_label), {{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)}}}); + 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: @@ -885,7 +920,7 @@ interval: lvgl: pages: - id: prints_charming_page - bg_color: 856859 + bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false @@ -905,598 +940,808 @@ lvgl: 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: 24 - y: 16 - width: 545 - height: 36 - text_color: 15594487 - text_font: montserrat_28 + x: 16 + y: 17 + width: 485 + height: 34 + text_color: 65280 + text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: - text: P1S / Office - x: 24 - y: 53 - width: 545 + text: 1 / 5 + x: 520 + y: 24 + width: 70 height: 22 - text_color: 9544629 + 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: 586 - y: 20 - width: 190 - height: 42 - bg_color: 1516078 - radius: 21 + x: 578 + y: 64 + width: 1 + height: 362 + bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - widgets: - - label: - text: SYNCING - x: 0 - y: 11 - width: 190 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: prints_charming_status_label - text_align: CENTER - - label: - text: Waiting for Home Assistant - x: 24 - y: 88 - width: 752 - height: 28 - text_color: 15594487 - text_font: montserrat_20 - long_mode: DOT - gesture_bubble: true - id: prints_charming_task_label - arc: id: prints_charming_progress_arc - x: 28 - y: 132 - width: 224 - height: 224 + x: 24 + y: 62 + width: 154 + height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 - arc_width: 14 - arc_color: 2503746 + arc_width: 13 + arc_color: 1647403 indicator: - arc_color: 6348442 - arc_width: 14 + arc_color: 65280 + arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- - x: 42 - y: 207 - width: 196 - height: 56 - text_color: 15594487 - text_font: montserrat_48 + 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: PRINT PROGRESS - x: 42 - y: 266 - width: 196 - height: 22 - text_color: 9544629 - text_font: montserrat_14 + 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: - x: 282 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: NOZZLE / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: prints_charming_nozzle_label - - obj: - x: 538 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: BED / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: prints_charming_bed_label - - obj: - x: 282 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: REMAINING - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: prints_charming_remaining_label - - obj: - x: 538 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: LAYER - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: prints_charming_layers_label - - label: - text: Telemetry unavailable - x: 24 - y: 358 - width: 752 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: prints_charming_stage_label - - label: - text: FILAMENT / ACTIVE SLOT OUTLINED IN GREEN - x: 24 - y: 383 - width: 752 - height: 20 - text_color: 9544629 - text_font: montserrat_12 - long_mode: DOT - gesture_bubble: true - obj: id: prints_charming_tray_0_card - x: 24 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 594 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_0_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 119 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 642 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_1_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 214 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 690 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_2_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 309 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 738 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_3_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 404 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 594 + y: 247 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_4_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 499 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 642 + y: 247 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_5_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 594 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 690 + y: 247 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_6_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 689 - y: 401 - width: 87 - height: 32 - bg_color: 1516078 - radius: 6 + x: 738 + y: 247 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: prints_charming_tray_7_swatch - x: 1 - y: 1 - width: 83 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 75 - height: 20 - text_color: 15594487 + 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: 24 - y: 444 - width: 88 + x: 16 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: < PREV + text: < align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: - x: 688 - y: 444 - width: 88 + x: 720 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: NEXT > + text: '>' align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: - text: 1 / 5 SWIPE LEFT / RIGHT - x: 130 - y: 451 - width: 540 + text: Waiting for Home Assistant + x: 94 + y: 449 + width: 612 height: 22 - text_color: 9544629 + 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: 856859 + bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false @@ -1516,339 +1761,517 @@ lvgl: 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: 24 - y: 16 - width: 545 - height: 36 - text_color: 15594487 - text_font: montserrat_28 + x: 16 + y: 17 + width: 485 + height: 34 + text_color: 65280 + text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: - text: A1 mini / Office - x: 24 - y: 53 - width: 545 + text: 2 / 5 + x: 520 + y: 24 + width: 70 height: 22 - text_color: 9544629 + 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: 586 - y: 20 - width: 190 - height: 42 - bg_color: 1516078 - radius: 21 + x: 578 + y: 64 + width: 1 + height: 362 + bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - widgets: - - label: - text: SYNCING - x: 0 - y: 11 - width: 190 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_status_label - text_align: CENTER - - label: - text: Waiting for Home Assistant - x: 24 - y: 88 - width: 752 - height: 28 - text_color: 15594487 - text_font: montserrat_20 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_task_label - arc: id: polly_pocket_progress_arc - x: 28 - y: 132 - width: 224 - height: 224 + x: 24 + y: 62 + width: 154 + height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 - arc_width: 14 - arc_color: 2503746 + arc_width: 13 + arc_color: 1647403 indicator: - arc_color: 6348442 - arc_width: 14 + arc_color: 65280 + arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- - x: 42 - y: 207 - width: 196 - height: 56 - text_color: 15594487 - text_font: montserrat_48 + 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: PRINT PROGRESS - x: 42 - y: 266 - width: 196 - height: 22 - text_color: 9544629 - text_font: montserrat_14 + 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: - x: 282 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: NOZZLE / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_nozzle_label - - obj: - x: 538 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: BED / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_bed_label - - obj: - x: 282 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: REMAINING - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_remaining_label - - obj: - x: 538 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: LAYER - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_layers_label - - label: - text: Telemetry unavailable - x: 24 - y: 358 - width: 752 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: polly_pocket_stage_label - - label: - text: FILAMENT / ACTIVE SLOT OUTLINED IN GREEN - x: 24 - y: 383 - width: 752 - height: 20 - text_color: 9544629 - text_font: montserrat_12 - long_mode: DOT - gesture_bubble: true - obj: id: polly_pocket_tray_0_card - x: 24 - y: 401 - width: 752 - height: 32 - bg_color: 1516078 - radius: 6 + x: 594 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: polly_pocket_tray_0_swatch - x: 1 - y: 1 - width: 748 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 740 - height: 20 - text_color: 15594487 + 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: 24 - y: 444 - width: 88 + x: 16 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: < PREV + text: < align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: - x: 688 - y: 444 - width: 88 + x: 720 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: NEXT > + text: '>' align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: - text: 2 / 5 SWIPE LEFT / RIGHT - x: 130 - y: 451 - width: 540 + text: Waiting for Home Assistant + x: 94 + y: 449 + width: 612 height: 22 - text_color: 9544629 + 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: 856859 + bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false @@ -1868,450 +2291,637 @@ lvgl: 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: 24 - y: 16 - width: 545 - height: 36 - text_color: 15594487 - text_font: montserrat_28 + x: 16 + y: 17 + width: 485 + height: 34 + text_color: 65280 + text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: - text: A1 / Upstairs - x: 24 - y: 53 - width: 545 + text: 3 / 5 + x: 520 + y: 24 + width: 70 height: 22 - text_color: 9544629 + 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: 586 - y: 20 - width: 190 - height: 42 - bg_color: 1516078 - radius: 21 + x: 578 + y: 64 + width: 1 + height: 362 + bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - widgets: - - label: - text: SYNCING - x: 0 - y: 11 - width: 190 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_status_label - text_align: CENTER - - label: - text: Waiting for Home Assistant - x: 24 - y: 88 - width: 752 - height: 28 - text_color: 15594487 - text_font: montserrat_20 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_task_label - arc: id: ds_turd_flinger_progress_arc - x: 28 - y: 132 - width: 224 - height: 224 + x: 24 + y: 62 + width: 154 + height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 - arc_width: 14 - arc_color: 2503746 + arc_width: 13 + arc_color: 1647403 indicator: - arc_color: 6348442 - arc_width: 14 + arc_color: 65280 + arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- - x: 42 - y: 207 - width: 196 - height: 56 - text_color: 15594487 - text_font: montserrat_48 + 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: PRINT PROGRESS - x: 42 - y: 266 - width: 196 - height: 22 - text_color: 9544629 - text_font: montserrat_14 + 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: - x: 282 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: NOZZLE / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_nozzle_label - - obj: - x: 538 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: BED / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_bed_label - - obj: - x: 282 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: REMAINING - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_remaining_label - - obj: - x: 538 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: LAYER - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_layers_label - - label: - text: Telemetry unavailable - x: 24 - y: 358 - width: 752 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: ds_turd_flinger_stage_label - - label: - text: FILAMENT / ACTIVE SLOT OUTLINED IN GREEN - x: 24 - y: 383 - width: 752 - height: 20 - text_color: 9544629 - text_font: montserrat_12 - long_mode: DOT - gesture_bubble: true - obj: id: ds_turd_flinger_tray_0_card - x: 24 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 594 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_0_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 214 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 642 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_1_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 404 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 690 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_2_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 594 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 738 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: ds_turd_flinger_tray_3_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 24 - y: 444 - width: 88 + x: 16 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: < PREV + text: < align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: - x: 688 - y: 444 - width: 88 + x: 720 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: NEXT > + text: '>' align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: - text: 3 / 5 SWIPE LEFT / RIGHT - x: 130 - y: 451 - width: 540 + text: Waiting for Home Assistant + x: 94 + y: 449 + width: 612 height: 22 - text_color: 9544629 + 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: 856859 + bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false @@ -2331,450 +2941,637 @@ lvgl: 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: 24 - y: 16 - width: 545 - height: 36 - text_color: 15594487 - text_font: montserrat_28 + x: 16 + y: 17 + width: 485 + height: 34 + text_color: 65280 + text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: - text: A1 / Upstairs - x: 24 - y: 53 - width: 545 + text: 4 / 5 + x: 520 + y: 24 + width: 70 height: 22 - text_color: 9544629 + 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: 586 - y: 20 - width: 190 - height: 42 - bg_color: 1516078 - radius: 21 + x: 578 + y: 64 + width: 1 + height: 362 + bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - widgets: - - label: - text: SYNCING - x: 0 - y: 11 - width: 190 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_status_label - text_align: CENTER - - label: - text: Waiting for Home Assistant - x: 24 - y: 88 - width: 752 - height: 28 - text_color: 15594487 - text_font: montserrat_20 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_task_label - arc: id: jordyns_layer_slayer_progress_arc - x: 28 - y: 132 - width: 224 - height: 224 + x: 24 + y: 62 + width: 154 + height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 - arc_width: 14 - arc_color: 2503746 + arc_width: 13 + arc_color: 1647403 indicator: - arc_color: 6348442 - arc_width: 14 + arc_color: 65280 + arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- - x: 42 - y: 207 - width: 196 - height: 56 - text_color: 15594487 - text_font: montserrat_48 + 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: PRINT PROGRESS - x: 42 - y: 266 - width: 196 - height: 22 - text_color: 9544629 - text_font: montserrat_14 + 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: - x: 282 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: NOZZLE / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_nozzle_label - - obj: - x: 538 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: BED / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_bed_label - - obj: - x: 282 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: REMAINING - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_remaining_label - - obj: - x: 538 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: LAYER - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_layers_label - - label: - text: Telemetry unavailable - x: 24 - y: 358 - width: 752 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: jordyns_layer_slayer_stage_label - - label: - text: FILAMENT / ACTIVE SLOT OUTLINED IN GREEN - x: 24 - y: 383 - width: 752 - height: 20 - text_color: 9544629 - text_font: montserrat_12 - long_mode: DOT - gesture_bubble: true - obj: id: jordyns_layer_slayer_tray_0_card - x: 24 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 594 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_0_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 214 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 642 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_1_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 404 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 690 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_2_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 594 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 738 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: jordyns_layer_slayer_tray_3_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 24 - y: 444 - width: 88 + x: 16 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: < PREV + text: < align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: - x: 688 - y: 444 - width: 88 + x: 720 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: NEXT > + text: '>' align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: - text: 4 / 5 SWIPE LEFT / RIGHT - x: 130 - y: 451 - width: 540 + text: Waiting for Home Assistant + x: 94 + y: 449 + width: 612 height: 22 - text_color: 9544629 + 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: 856859 + bg_color: 0 bg_opa: COVER pad_all: 0 scrollable: false @@ -2794,445 +3591,795 @@ lvgl: 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: 24 - y: 16 - width: 545 - height: 36 - text_color: 15594487 - text_font: montserrat_28 + x: 16 + y: 17 + width: 485 + height: 34 + text_color: 65280 + text_font: montserrat_26 long_mode: DOT gesture_bubble: true - label: - text: Dual nozzle / Office - x: 24 - y: 53 - width: 545 + text: 5 / 5 + x: 520 + y: 24 + width: 70 height: 22 - text_color: 9544629 + 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: 586 - y: 20 - width: 190 - height: 42 - bg_color: 1516078 - radius: 21 + x: 578 + y: 64 + width: 1 + height: 362 + bg_color: 1647403 border_width: 0 pad_all: 0 scrollable: false gesture_bubble: true - widgets: - - label: - text: SYNCING - x: 0 - y: 11 - width: 190 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_status_label - text_align: CENTER - - label: - text: Waiting for Home Assistant - x: 24 - y: 88 - width: 752 - height: 28 - text_color: 15594487 - text_font: montserrat_20 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_task_label - arc: id: constipation_orion_progress_arc - x: 28 - y: 132 - width: 224 - height: 224 + x: 24 + y: 62 + width: 154 + height: 154 min_value: 0 max_value: 100 value: 0 start_angle: 135 end_angle: 45 - arc_width: 14 - arc_color: 2503746 + arc_width: 13 + arc_color: 1647403 indicator: - arc_color: 6348442 - arc_width: 14 + arc_color: 65280 + arc_width: 13 adjustable: false gesture_bubble: true - label: text: -- - x: 42 - y: 207 - width: 196 - height: 56 - text_color: 15594487 - text_font: montserrat_48 + 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: PRINT PROGRESS - x: 42 - y: 266 - width: 196 - height: 22 - text_color: 9544629 - text_font: montserrat_14 + 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: - x: 282 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: NOZZLES L/R / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_18 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_nozzle_label - - obj: - x: 538 - y: 132 - width: 238 - height: 118 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: BED / TARGET - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 76 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_bed_label - - obj: - x: 282 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: REMAINING - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_remaining_label - - obj: - x: 538 - y: 262 - width: 238 - height: 86 - bg_color: 1516078 - radius: 16 - border_width: 0 - pad_all: 0 - scrollable: false - gesture_bubble: true - widgets: - - label: - text: LAYER - x: 16 - y: 12 - width: 206 - height: 22 - text_color: 9544629 - text_font: montserrat_14 - long_mode: DOT - gesture_bubble: true - - label: - text: -- - x: 16 - y: 38 - width: 206 - height: 44 - text_color: 15594487 - text_font: montserrat_26 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_layers_label - - label: - text: Telemetry unavailable - x: 24 - y: 358 - width: 752 - height: 24 - text_color: 9544629 - text_font: montserrat_16 - long_mode: DOT - gesture_bubble: true - id: constipation_orion_stage_label - - label: - text: FILAMENT / ACTIVE SLOT OUTLINED IN GREEN - x: 24 - y: 383 - width: 752 - height: 20 - text_color: 9544629 - text_font: montserrat_12 - long_mode: DOT - gesture_bubble: true - obj: id: constipation_orion_tray_0_card - x: 24 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 594 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_0_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 214 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 642 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_1_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 404 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 690 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_2_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 594 - y: 401 - width: 182 - height: 32 - bg_color: 1516078 - radius: 6 + x: 738 + y: 102 + width: 44 + height: 82 + bg_color: 0 + radius: 5 border_width: 1 - border_color: 2503746 + border_color: 1647403 pad_all: 0 scrollable: false gesture_bubble: true widgets: - obj: id: constipation_orion_tray_3_swatch - x: 1 - y: 1 - width: 178 - height: 5 - bg_color: 2503746 - radius: 2 + 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: 6 - y: 11 - width: 170 - height: 20 - text_color: 15594487 + 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: 24 - y: 444 - width: 88 + x: 16 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: < PREV + text: < align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.previous: {} - button: - x: 688 - y: 444 - width: 88 + x: 720 + y: 446 + width: 64 height: 30 - bg_color: 1516078 + bg_color: 1647403 radius: 8 border_width: 0 pad_all: 0 gesture_bubble: true widgets: - label: - text: NEXT > + text: '>' align: CENTER - text_font: montserrat_12 + text_color: 15658734 + text_font: montserrat_18 on_click: - lvgl.page.next: {} - label: - text: 5 / 5 SWIPE LEFT / RIGHT - x: 130 - y: 451 - width: 540 + text: Waiting for Home Assistant + x: 94 + y: 449 + width: 612 height: 22 - text_color: 9544629 + 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 diff --git a/esphome/bambu-display/preview.py b/esphome/bambu-display/preview.py index 58537ea..d17975d 100644 --- a/esphome/bambu-display/preview.py +++ b/esphome/bambu-display/preview.py @@ -21,7 +21,7 @@ def main(): package = generate(printers) demo_values = {'progress': 67, 'nozzle': 218, 'nozzle_target': 220, 'bed': 60, 'bed_target': 60, 'time_left': 1.75, 'layer': 134, 'total_layers': 200, - 'fan': 80, 'left_nozzle': 219, 'left_target': 220, + 'fan': 80, 'aux_fan': 45, 'exhaust_fan': 30, 'left_nozzle': 219, 'left_target': 220, 'right_nozzle': 37, 'right_target': 0} demo_text = {'status': 'running', 'task': 'Workshop organizer - plate 2', 'stage': 'printing', 'online': 'on', 'print_error': 'off', 'hms_error': 'off', @@ -83,6 +83,8 @@ inline void setup() { steps += [{'lvgl.page.show': printer['id'] + '_page'}, {'script.execute': printer['id'] + '_refresh'}, {'delay': '300ms'}, {'snapshot.take': {'id': 'panel_display', 'filename': printer['id'] + '.bmp'}}] + steps += [{'lvgl.page.show': 'color_test_page'}, {'delay': '300ms'}, + {'snapshot.take': {'id': 'panel_display', 'filename': 'color_test.bmp'}}] steps += [{'lvgl.page.show': printers[0]['id'] + '_page'}, {'delay': '250ms'}, {'lambda': Lambda('bambu_preview::setup();')}] if len(printers) > 1: @@ -106,20 +108,21 @@ inline void setup() { 'includes': [str(HERE / 'dashboard.h'), str(touch_header)], 'on_boot': {'priority': -100, 'then': steps}}, 'host': {}, 'logger': {'level': 'WARN'}, + 'time': [{'platform': 'host', 'id': 'ha_time', 'timezone': 'America/New_York'}], 'display': [{'platform': 'sdl', 'id': 'panel_display', 'dimensions': '800x480', 'headless': True, 'auto_clear_enabled': False, 'update_interval': 'never'}], 'lvgl': {'id': 'dashboard', 'displays': ['panel_display'], 'buffer_size': '100%', - 'color_depth': 16, 'bg_color': 0x0D131B, 'text_color': 0xEDF3F7, + 'color_depth': 16, 'bg_color': 0x000000, 'text_color': 0xEEEEEE, 'default_font': 'montserrat_18', **package.pop('lvgl')}, **package} filename = root / 'preview.yaml' filename.write_text(yaml.dump(config, Dumper=Dumper, sort_keys=False, allow_unicode=True)) subprocess.run(['esphome', 'compile', str(filename)], check=True) binary = root / '.esphome/build/bambu-display-preview/.pioenvs/bambu-display-preview/program' subprocess.run([str(binary)], check=True, timeout=30, cwd=root) - for printer in printers: - bmp = root / '.esphome/snapshots/bambu-display-preview' / (printer['id'] + '.bmp') + for name in [printer['id'] for printer in printers] + ['color_test']: + bmp = root / '.esphome/snapshots/bambu-display-preview' / (name + '.bmp') with Image.open(bmp) as image: - image.save(args.output / (printer['id'] + '.png')) + image.save(args.output / (name + '.png')) print(f'Saved {len(printers)} demo screenshots to {args.output}') print('Passed LVGL pointer swipe tests, including wraparound and button gesture consumption.') diff --git a/esphome/bambu-display/previews/constipation_orion.png b/esphome/bambu-display/previews/constipation_orion.png index 8814633dc7792cae949f5f14072899b2ce02bb59..de7dd0637d55defdc15afc29e646be428185eb24 100644 GIT binary patch literal 37549 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�?3$ojE3hvT7FnQ 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%0AaxWAt@(A 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 diff --git a/esphome/bambu-display/previews/jordyns_layer_slayer.png b/esphome/bambu-display/previews/jordyns_layer_slayer.png index 4d38a1a2d106017b736dca71ff700d2176410c9a..a637c28a58575f5d2b66ffde5f650c05e6e7dcf3 100644 GIT binary patch literal 35208 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 literal 33736 zcmd3O1ydZ+7A6THB*8*}!6CS7u%N-+-CcsaThK7LySuv%?iSoNxV!6Y=e^z9t^EO8 zTQ$^l56$%HdyjtSJA}x|h$4N$`2+(4gCs5{qyPg0`xOS}&EF4iflsE4Gjd>H{3FGM z_?2AKPF8))a8278UKa&llYHsJvf%SVJuYaeT>T(IEl5JrgGU0}Mnozt z!9wDamFaZqT&9bL9)h?}an?Bjwc%eDdO!7Az_qUxNlp*y$4dM%%CBOL&dxS$Fd2Fuw>+36Tx2|qz=PL4W85=?a560XpKvf&&!Hht|2cZ6 z_V0YR=K~0M^BwxE_Xc=RLVWZ8_>@iFs((&jw!b5r()`iU_Ho9sEfw|#m1CQbhgU*= zCe`Llh9Uog38oGrjb0x@&Nq?DHVV_TuCFjkdXbw6ngmNJqQerGQQb&Z#2q1#M0~Q07p=P=*(v zD%F#^Pw$#CjqTR!Nyf0%ys={UgQE*M+bSfdzzUM*8)OXgx8rER?-7M9?u&zBiq_C1 zKh~qd;2=s*v%D`|qFTsdmz;`4LZ}@@tWrRUiKU=GAjqQ|J)iUqIeRPDSwHQ?>uOSt zMqglna4`!0As-iC-J(T5j!OW}!COU^AKjRF(|H*GFwF(kr(a6Sqhs2$Eu$?dC!sQ*FlU}kW#W;u!~+sO-h1Eo#@W%vv%6;QwRIsm=AQDM z=tL~+6`>^9s@akoe)|%r?O(Es27}mO_t` z+`3DiDlUrTMmHdHxvh5+`3xnzLw*pK9IT*+Zg8&;SR7k<+WWOuPPGExs)Z>!OJJ1^ zd~YJuHlyyA&q&YHJ(P*>+f^mw{3}74Jk6kpF8B9O9BHKfn0qMW3GjX#d=FK;d=?A z<9nZ*|^Q)@dV{zvD9_~Q1-!&}pIq%< zK*CIpKgnx}f4hZLPiQsPc0`(Dne0j=m5`kgxM@kF_bmv}db7){X@B2)eQCcoQ272) zISu<}00)8*>Wz)zJ*ZJ0W)ZyHu|B{!s&#MQVWT^Qm9t`6Le~}t5{}l#IwPp8icvRp zU2@-phcWtHq1R(r_Rr;%kX3|29%gSgIo1Acc$l_ug>Zx?M~-*MBhBmfkoZkjv;tvF zFU!l>2~E?*tGi=FtDHw8T%bt&D#%p4RFu`b)u}XwvfNtSE`&idSUcn@?Q}j~gj%%R zTh6NjQJb~2$iL6YE>;hlOk@5qmLjE^Bmc*0Hp3zq5!Klq++m!|zx(gV}#ZbuRO0hE+AB+`pUqu#u zdLHkagcum!i{*n$48pkzQ?lB=LRt9G9{lyg8!3;*VT|g1J2&gG$rH*!mb;Uim|sOP z^V$!G?T_6C4&(jbj!W{eH=@%Rd!4JuDhJE~6J8&{go@507UPq#SH_l~j#BP*XbC7d zlc7N{V!1jY?tF^rdqkXstB+`Vg99W+Pz(5}uE)El-R{JWkaaC6(z|dsZWMV2^kP%SZ-bu? zCo4M-`-}UOnm6*d8}kWOhc%ePl-+DE8>fvB4X^Lb{>puQ_?rBvB2y4T*ZZj=J%b?8 zeMxddDn3b*rFTxBaOLRgxhiyEN_mM?*_ZN%+%EXe*4$d&F3yBCL+C)I%b zJ>+7x7{;H=^OaKC&O`fF8_%#-!cF{{jl?sZ+Et&+F)1Zdk7>NUzEssuk|$MVTI`2P zkb~F>EKdO8w)c;kkP)k`1G=Y(gM3GG`O``xo{h|1Dl%*s`s@K)LJVVA$DWn!jVRKFSGtwwyy#FT+V z`6-W|b}}=%=OK~~HcRJ&zBE4vUo9D8g>c!~BO&8`iW)T*L@N4ywl%WKS48?+8vHn# zFV*1go~b%cVTtd2!rBbj=*@up1Ik{gAzXW;Z2#77#fRRz3&3W8XRZaAV8ywN}G;=aZN z4*lI`2qz2l6km`CkzDW2qb(*!!Fq`{F}e_jwx-`RT|J`K-cIRdKQ<3;&{gdzRD13F zP=^nEY@(Eg33zeNuUky%|KutB+$Af$Ql_`1>|{hNek`wsH-1689FH-^FJWW--o-e& ze=#{&FXm1qZNj%WEAfsLt<>PN+!si`z-n;wgPAkgH+DiY#VEyCv|-;*R@rS{&kGmb z3Ocjt*gJ+dts4)o8$A>Gj1Ouj_+|F8>oYzw$GcBdvFA2JU7yucf6ttbSA1xm{W?p3 zN3Zj-m||qT_($FL!y7Z*KT*EQirw>wuARzOWGDkK6zCep(Lh; zij0h3thSp)HjeUR**xc6nSo>BbE44jZpoUjSbCU-Zhft}zL{XNBC|{(g`O05GXX(#f$HVRE!F1P*fdmx= zQQ3!R3wyfDRZpLC8gY@mT$#J0Y)SnaNGw`~QC0cXXjJ6QpGKG9?LKU{{BKc)o~thf z2la#gdjgt1o7`9&3g;2SAzr|TW5fz{|AOI#x|PZ!nZ|2nto{?n_}TUYVGO>oWrHRC z!jECeL!{vlpU)LZT*hJ;T-y=1<|}mzCFboQ{pn(ZUma|}zWHClP6(MPNAHQKXa)X4 zH~0;uCZ-EDW_OJXfwD=kQK}a3KTs?WeCOSqo{vd}9KpAQ9(;9 z!7!2Hfg&V!Kq;FOl*1?Mbou`{qy1gk}NF$^l zs)~%bGd!chfQ<3#3p63vNHm(%v7~Kd^zSna3&X)dEV)F_FzqKJTe0!?RGOm~?Gz5| z9 zJ?GUddXl>UJFu43y!}Fcd7LbOTKn~l>F7s|B}k#&RuhQ6N(8@G@}ZO!7=R`p{{dvi}s{unM8 zn7SNkbZzrhM;IgpUemd+Dv(H^vi@P=Zf?ShR0j)`tx~8!{cWiQoCOw|oFb9{b@)V1 zp7VG?Ag43dzp8wqhV)}?fLvyU9}EHvj0WcW>MR*;xPOIt9W$ZL#h;`@m3WZb)RueA*{H1~!$QgL(#w-Tw*6?+%j>@qxp=Ve9XS5&q zK6qxTeykGPj$6)4h4jy zH?2|2yG8CzgKf2{YU;?kpLkG($LYPd@9$@Z&=xKGO=_P|@G>AEP{Nc->gq*_U`$>z zgI|U=_j2DKPgJGN>@@<}OC4@bKGEsa2i{7X4rn)KSBy=ZTUz+)ZfCJjPF%YYBP%|I=CmTH zX64M&qa8yk9T{o2oVG%Px4wtJ!X;FIjKG%rlhf9W%P2jG(zIT$;2gA!wXM`X9M_1RUh@wg^;6vmcM zNV??$dWJ`?G#QXJtxf*h{PV0+4@#iBYscoTDT80?+Pd?fXFexMsh+){U9h~3-rCB; zQg)ijFZm}A4uASQ@u42NWA?_r`%(K~Km*n-};k=9N@HtyP zqVpb}(-&2n#^G+W4$|kgaV=s40iY!>o8@qYr$^g-t^*1*;dx-a!{@$nJ9)gYiGD1O z=bz!dQ#;77t0Jz#x4dBWZJ3C#h8LFie}WIy9>08DTMKX57|rZE4jO-RGUzwaZ1 z(#($?O*Z?v83__LW+=8~$O=7aX}|V7_&mRO1nE2lx!H7(~lIc{D%1L^5VnC*M16$ z=cgU)p&0|}yRQS*`fVPq5huu($4eQFWhd%tsP+$dKm7~mZ(5$DZ^n>V<5@_YX~=hl z2Ats+r+n^z_v?*w%J!XC>od#ew|ZXRQ?3ta(#_eQ#dt;;HCAP?a|16R;hxzOBJf%{ z73=Simq~X>t=;}9AA6~=t+6p$=@N;jOc|V2r?_}BL!k($mCMx&Mr5`55mZPbqg05P zXjjPIclZ|#YRnjka*-g7FnuNo1)$@Fmy zXf3|H$GX1Nw$Fe|O<(x@98ybzUDLHPJ7Nis%dxF0Aebwyd=^E@AnV19!Rb+;C)vj- z3%5RiLWqRkns&A|4nL0GI=SK*ceE*@L_)T$4d~^kx3mrZKobA2P|=(Mxt|_}URM7rEBoL?9J3^&w@q~=BC*#oD+ z%T@;KC;7q7`{dyO#pu-ccpey-ACS18lo@2#TcjJKq ziQR}j=%aKXo8o>aJNAy2iiiqIumP6aIeFrEab?zGyi}KO6drm>h2LWQ=pchE`gQ`g z)nQjQ$ziC$y+qzhLO~ihh9PoHRFv0yqeM31bTF9Y5bX;9;84x>UCF)b;>kC}T~77d z>{R{m8LPLcobOmq)R0QY!dGmp{kshmQ9^2{;H%#H;KVTI#}F(YRX9ZapW>ycC&u6$ za@j+0KMYJ({@XG?kB>tx*2XPHr;AO(Ll6AS67rs?NV+M}SE^d{H~wUeqyPp6$S)%z z5w{Q4`YOIG_9)rRwH7M+0q9+nUMybyq8F6LPzl(?qJPZyq#mxrQN?hlfMYa@zjQR^_m4>8@Uk7R^Qke(l(=fJOn@Gr z;oO`78+^dR`bp8lxX$OPcBy>dWwH5}WV_u&b zf){`ulD15JPX-=?4oeRR?=T~f;7nfDa+zv{3@1mf$EW)RzqH!2Q2>w^^9omrf=8eS zHxD$&oXOC81GcQiwE{d#b7|tN`U0Rc*6q3#BlUj{JmVdjwMbo} zDqpr;I`|>^cA$J>u%5x>8clt#nb|Q9?z8qA7#6B4SX$$RiN^WT3_?8|fB_<)a>m_i}i$?r{f-IU>Wr5CD5 z0f5;4Yjq|;X}YHJ7%V*34U?9eX)Fm{gJL2>q}A2LV41cxa$sfN)+7VJ1V$fz!!gtv0O;By4)8? z#vK@DTABgW?(hyD*!b10S&kwg^w=|Hq@>Apq^%^YRgsAkDMVV@X{Uu)tTs8fh(<ujo50xmY0A@lrgdS9pPXm97hSe0NouL z?`t0VmS}>P$uV=~Kb!#U#E!(fjgfBfS1|E%7c-(DbMDA0cP0O@?5l0E7n$hM7GcA)KPDd4)wlBifS+B0o*4&}h?uP1@`q8P-dg8t%zW49?LSKZvC&^yk9j5U{@0;v=&KLQtzm>ml^s z<-xCqG*z8$Zm@n3Xc<>%J1XB$QMBIrMmy^+!A2bb_ z_5l%QV&7Zn+a(_M%v-7f3<$>Z-Iag1Z4hob4=#!+kg=w?zC$<+ZJ03S&7>BCt#Miq zFAv!KB?$b+%ny&Yh+%+@A~{4;^Wn6*^^kbzK13@tOMwiCBjrS$=KKH-TKII+)y6AZ znR=opj(xFEuI37w#DIb66#0St-#&Yk|Nl>!@c)&c*GQY3eZDqmIYt*;{tmPN(1q3U zoi918vXkj7_!3EZhsE4Np3@|aDZw$93gmQhIi&PM(18B>kQ}zj8FKJiUGtjsuLcqx zF9DwXqQaPGXv+_1u=635F9&=1eVZ~@?Sxcg`s$cGX!sGFzGy(fuS_TAChi$GaXtmYag?Y*GQOBl_Y#xNP4Yx^;G2oR%(0+AyaB> z`^YZA&bI4Oh1@_w9hH_wRyxDCedt8R3*noDWJ?IglSSETm-+a`Y~np-toX;|CxKg$ zmNl!Nuppe;UlaR@$xBG~xllpeJD+!IN5U>@i`vLfY>@Kc+!X0sXU?myBr9U#G|ldf z`4}6AZ%;hK`JutL5!IjdltT_`YCZ6fc-4#@)g+q|1X5am+B*GmZtu^6!p@#Df!>yx z_m?ib5%robF&7=(4Om3)ubV?q#WdTqKz!t5N!938`%raVJ#h@tTy(*2u%ewMs6hdo zM%?+1;7WiQ7QitmVf=9woku~w{hR|8(jrc=j~XT6jRh_`YMk^p5ko@u>KQV_2exC#(`~rJ%~Qi80;HNoaPm zcmc8jQ782;d|P{XcTLt2bDmyHdM`WvBbv&!WE8l=a6Wy_COm}Q_1gYb>P6$F$v#RWv!*$ z(tJRuZE`F37&MyK7*ztXi@o-_R$EB24(rRl9x! zK1No(Q$$#t8Ga$;0kM_gviC3u9TilY5)LNjYf;y7o+bQwsZx>Awg}vvb;=!zoJ%YZ zlh!F+K8zwP9{I({R=OA4b*z)uIkIG{j2GdMhpJrTB00O0>cq$-F_( zEkL8#lVczGJWjuMlVbQ-`%~QM=o8Sg+|IlF4H?+kcV4nemnD@~8_H7%x!zn-h&cw$ zbwF(|GPdr}4jfBX6el0VE+CX=r;Cf4=YLl+yNf-FH?_aFG@o0ly$tr+$i#C`6_1k( z%aiiKBf}jxjD^Hfe2UO`Y5&fY+C&(+E>q-^lLimYVP4!>I7zZ67-oe)3){gbzuc+r zXEMZcD8ZAs^2Sn1x$K}0wihw6{4Yye#rxG&`bz-jg6!G^dx}(KL1yC6tfZn7NFKeG zMP{bb!{GF{&vEgDK4Q_Jk<+q1RrO@b1}pgzkb-i4f#b zYkl@=Nb)SE07e^}WJWo8~tyw#RT$h&|pRl7n5`r31NuA0kUl4(#D_Qcxg z0NvQ1kM{G<{}CA&KBMynG;Qnx4Q?zbg$H_&QXj)>{c4)xa1Koyoi4p}zA$2(Bi{o|AYB`UI|Z#qJWZn-fkPdM7*eO-fW&F55zTyo z-xe+Tot3&2m#*`a?b1k^lc?_mA{^A{QbX^iA)%4$vPLy;p&(sPBBcgdhJtU{`nGz5 z*0shpi!pmd&LkS2DKI*;`)+@%7IPVykk#JYH?{Rtyc)6cvfd~bdr-MVhWd=qcv8e2 zZv)#Gy|hm+Fd(0S0&kA4Jrs{%vQ-^vN(?n6zTJ>|G$=#ODSbO7LGQ%`da|vLCLGT* z-7;t(4>xL9c(CoXi>vG#(;P<=PkT~acu5(lUX?#bm!2N87QH^|W+ZM)lA$l)=HlsF zM!`R)z*Ov;cEgcX{xkU}Um-vE)3834$q|U&n@c36%gI7|I@W^XDyDwLt&>tIH2de$ zD#_hp$=2Wd6Cs(=78Mr-M8IGbG{f{}t^Z04OC~Q1JSvnOh*;FHPc7me%nVUZ8}HqE z9P{i({3GbK^ZWSzK#Di1ZT?|U)VOf<92A8>ti&fDJ}m1Ka{kSHwQOnOIrq{D(wAu0+A0SB zWGaQy+6e|3LLjc*RhRd@78QS+>rHxXDDE3uk3kI_60r_doX2atHZr3oHH-F64W3WI z+iClzily!;NZ|#46%BQx9nS0xMA9`(hX=p}2)JeWu(Sv#535lCHgyZDX^BT4n zhRg+I4AyM}eaK18O{^}RR!$3sgrk4o3tDA|W^Y6WwZXO@*YeZGjE=N-gT{}l)3szg zdFOT(PHj7OKWTH8z8>mcP$6Ml)#0tC#V}UHIyfP-*qW)mWR1+0zEkTn#Q3IaQaA2D zX(E`rr)OM?Xz0?htKu^k#H(VBKoi$O0SoM|+Q@sgQRKO+gRBsFKOnGXNY_0xdjiVm z#F@g0AFqmpW1GxcX};X=o=Z}#JEqrcRvybBj!7Q`fU=9T*i4sV_Dp>peF*Cx4?RgL zQb`UDw=?2lkMq_&;%<8FWtSYyU~U5 zibIq@bxg1eow|-XrQ%Yy5i($GY`HPpq=f_ssAKV7ZC3`tgs{#KLt3AWYLr~MtWQGI z?6r(=I&g`3k(O%pT1W$-5P+XMvpWYxbGOI16bkf@Kr-U06pKffN*cR?#Vk}%QVQ@+ zhC+9o-y%C1GL0+u9qnAPdqd#SF59%!g_VEuaSdc3SL%ui2|*h%+>?cxws1&4=IS#C zOIaFxL+o-(VCbs4+?h0FaU$us6fRc0)2eZKrLs9kSJctFY*;ZYo~Q$7vXZ1vp2MBi zvNZvrN-7;>IX)pF-AdDY8YG2S%c!j;f2adK*`85v>2lzAi5$5}S$;_gMaM}`Zp#WI zu&W&YHDZ!NT||{KL_csgFv24|6|nO~ivjQ;i$+5O;#N~PqYbX^+!s$|*5AX{Bk!Oy zm=O7-d{dGt8G@&!w?AE`e@cr4P;YT*LQSa?-#6!Rv`_NNwO z{ObV+bO9vJ7P|Nvz9B9M#C6nm?tc(!dqtBIS|L#;=9|o0 zO!E@|iQZYzMtfglm8p2G$-_;7kv$D%>9IeY6Oh-Oa|Ipqwz#sOwoaHj2VXe74{ysb zt6*j3?JB8UJ`~XR+tzBrftKt#4TsZ%LSmy;z{YmJe$Dy9AS@*Zpwb3zaf~CCvFG!6 zaN+Y|ShZ~;)C;<(tq$DZ%>R)X?^mSI%##4Ur8PtPP?eP~{-Nr_{Px$U)0T=01s!nY zc>Rx|iI%F9%@vBr`R{RLp2_5WGO76g$K_HX6*Z01)sx>xKURbW-b&q8I#8Cf8qmH| zo51<3$IlhJ#M4aBto;*)_>#RP;)&N--Y0mRa z!jY@b>|}ggVotDN@id+NxQ3xbdV~l{aGv>=>VO@}izOK^a4Go>!%6HcJ@2s4eKDxi zaxtkF;^$dHsH|9&4q(qO^p9k{|2mGnuldqBG#ew1*KJ=5;Miq!!0njm?PUe`fliQg zeXRdn)0#rwX^*#88d0H8Xhclm`P#7#FmhQY6!IFVt-!4gdWs*@Zy(k1_GP)LQG1p9BYbHfR@NytsCHIod&t< zF6>`8o+0-nzY)^h2Wn&J8$#aqX3G296DDsG0-b?y4;CjDQbiKe8WwWuRa4OUva2f= zUdTRq$pM-f|LeovQE7!>S$zS>4t}J*vtNPd~$qLC0P=F;(lT%JNzx}fP6bxSQYpijtvR!$IvNbF>%Lu$wZx8 z-v&mt-v#td0Qr~*N-okN6sTh+y}vDofRwV_eXQ3E8)Snk8_qXPacv(LrJkLMxw#UDOpqF_oJ<&2EEw+a^(Si&cMDq>Pe- z5A+VC-}CJh#x$)o)!&z589G3;wkU$c)8uI{_x1s>6zfwJ0AB4Z9#Gvm$7V_g(+45d zGd?7yBKF{66HsAl?(@CN#ic3W#lLG;B!-nzL%l`9pG0F_3wxb3uYS)E#7u)-VPWz2 zC3_)#p{r*A+=$1E^P!bb$(j#fxrNKtc_!6ggz{WL+$m(jqCe*?9NC=F-^b0blOZ}? zayFo8H@abZSogw=ICSauZR^co_VV~ko1hsVv1oCt42K#t@Y^7>y8qg6xyeY*Am$r5 z?fr76kQ|TrM=f1bjd@N$Ug=)K^>~{lxv%Q=Xvya2T=b17rYfEumCv7{#%)JxvfWI^ zgg>VQs(*bmwJ@%=gwa<(x9;1K=)y1e6i|sK?E=Iw1y%k_Y>VlUh14y=iSdV;v(jvf*K} zD(nhVv}_!m#Dt$8zF+Q{J?l_Ih@lb7oX4J(lB1Gv`gf0zfNU9^0q2~fIbk4xN91~9 z#QKNCqRv3fMe6cXxZd>*sMmVG8CC9s+kIYCw4~5{)&?Mei+!grUofDn6h2L%uw`e^ zTh%WR^vFMyTvBxTPwUHtwQgtw!CoF-JMR-pINs$Bl=d3+S;=KkvxD-JAnxDqI25a- zFB#YkUA7Lrs0{;(^RJ^(M8Kk$O?1b}>*+NbWsr5;GJ~4>5KAN9{9blWcqgfYFCtuS zZA&2)nwTcqx;QjL=?68csM`551AwVfQ89${GboKpHi-NoU^)J~VQ6#7NAqe(x0C<3 zuf7Dd0@7wGT5Y&BrfP|zr>_jv+xC`1(9h+4VlRuzB+{f{$QurjP&NziKYE^6BGl$39rliD;hvb-DE1$?=(-e9{_`C8#>sRIN zVMQD9evo3`R9O9WZpI2i6_zKtTj>>~TuWN+j$ta-OKxQ%BcHCA#OO#rKfW%S<{Z*C zJh;~AV_g!6Z7q#S?0NgRmytzmjUc(X6f)fc@?b2L#5&o&F{fy;Rwi+(>xF zby1Je{cul@7o2$`(1M^?9uR1z7NhK^=s99Ih(irpySckG<2@)vha~~^Y4zL)i!qR`DFYiq=47;Oe&A7{ zAcW*l?vPm{96|e{TGsnddx__B4slUO5C4~LEzhvAo^9(LCw@ckKh*r4^k?DvMOulG zO-1YHN(qv3F5PwVdU@d6X(%?!wLmyJO=;h-Q#I$_)4ld3=26KWJQBV@bGQ}5h`O=g zu4tJ9h&lF8`w(>0y0)5@=7Rt~GLl;^bwP=KdeZC<(!_B$_*O*<5rmAJ<7-!E_Zjg` za_5hN=|HbgXx>T(302Pyo?Cu zvL)!@0O>b?M$RxlEIM9~sFA1U)71^^;Ji|HI#;c^+>fHD^Q6yF=BBsm{F6ojDazkC zJ6s0Ygz!W0v|4>GoVbC^FfOiemM*pSMWy&8=<%`E;LX$P$?xn*k~81LR$C)a`|U)E zsmOQCJkdiY0POIO)^4)?_6&vU4%eK;Kkl%Y_|3=!k(o`}3qNv08K~Td%b4DTXAn2O zl;C4MNr{M^vxg6;1&bWDD(#KE;Xj)rl^3UaF*itLoEbV=kg?it2`_v7mjZQU=bT)w z?h=m9)CkMT8nBV@utuHB*yJ1}Y8c_0LH;p>fj3?Yl|-7vzHN(<3u+l_1JVX^eEgDDidKpC7uB#eC|zi{tg?pyZ(fk# zk-HK3_Gl3W3!|e$g@v@1b6ZjBbHWgc5jHH^|McAEg7a2JPRLbh9YyETEk6K+(!;Ra z5vh(=oS9R8ki~82eY4p0EVe?V>79qa$Uyi9eW!Sla8j52yzHXn`hw>Jl<~3I{m(%D zvBYQSpTWVF(Ac1T9WP|a0+D4XqAN`O%3V#w&}D4z6=^lHh4?9G6^>$JnAO9 zRA*5Y7UWSeZ!j*=fu#FU)TR%PUynBRd$8fLS=RQaoujk=I+$X#mWt*S?`l)$&I3;C ztXpMZw{D5-mzNO?YexhXTS6A=pLP%P!3c=z8O=Fbm}_955$EGd~0Tg zht-*P4z67mUz1ToRR}#;2v2hN%n7uz^%Xvcxbr}`hec`2K1?!TvT$0>YUhAubP}Ca z-e}LG|H0S8#&4I<4a+@O_Q=65&7R7=!S6NywSziDDmHYsIl+7QMb8S$(S9Kbrj%Fw zbma|fp9z3YJIT{fU~05p7ezZ|{VWhRH<*QM3?!o>KWeT0n5CZ`+Y?kQ=-Y?Pfwa?5 z$UvWUuFMtN8`jn5kaFYP-9p0ZVc=qLBW(;@gb#c(qf-(wOPp7{*Vo>lIqGeJW#+gO zodKyblVsvIW_wfuzH@2BM$T11L6tEb1KVHaa-vUVrX8>5df&qM&Yd%aYqjt^{rG$~ z*Ia|jVrX?|!f*_5#Qs-T6GV>!uZ~PsA_r%q(L<6JjW0uSd0Njh_~%q!Li77F-$+JA8CJn3h7)vStk?&qFH=^N6OV{ z;DU|SF5n1YQ3}|LEX*7IBz^64|1ewkI zsWl~j285;Utg)Hq@&s_{&6r=MMTn-A3h8l_lg_MAhEciSVPEo^PCwfu049KOk_Gow+8-;H!qk8lRY^nGNCD+J=d) z{vvXMdbtS|*nmD0jo@Rk&Gdy3u^olZdCA4lN2qru6_OZTf%DZ1S?1=G>$>lJ^PeHc zFiLPY_;Y&X`|&`;6F%EPK6lT!=jYvJ$h71^P+MZuS{{vk4qfVvEET}=WpVb+hy3tQ zGLP7x0ccJOl|lHcWXyNT%9ij)Zav>TS-ye|_NS!Iwd9~L)<;H1RpZ)iqt4uXdx$+8 zSi!l=s2u13!$Hn84fqw!dIwp@aGmb0_i<4 zX6H@s*=*#f9HyTH6v9A*vYyBc0Y6knHHStXT``nO-F$%ROUDDS4vL``d(NkaQhhuqgdV)SF1Gt0W*10@2D8u&{^{E< zDgkH68lnqRs>SvVyf)XW!^TKo**IFr$PRJ#La$AIkk6ynQ}2L# z#VV!gmgO4$LHh3r!6RFYJ1C zf=T|Dt@BWC;c62(hY}) z<~uMC&=TL-(RH@7@v%Jx;#w1K3V50dNtiw*x`B;t{{v2=rg(Rf((ki zY?&X;W}k1O10I6)Pgl+UD&w8DKeFz{+2xX;s0iFR9Gc74(Z@@GN!2H4mea&0TCi4w z1u>=z7~bifOTtqcyjj7`siFs3=-~_;bE?-es1l3s+v+8?Z>Z~&G@#phz$hXsR{Oh* zKwcdFj23+@OjYY7Y3y7H9|w|0{-Jc@u_lV^uNx$G>>0? zd%bjO)532D1>^yQH!59KpVtSjY~1jc@l`^Vi!*_N2Pv=Ah%wPW60-^=ny6jtx|EH^ z=XaQcuBp284$5ku0Qx}gK=9D`hNS+E-Mmbry^lex3^GpnOqPSO8Q|tc@VX3I5LX1m ztnR(s+!vGuMGy0T21O$Mn_bLA$+$SZh*{d-whPi9#2E)TTd&g31r~)K=}5qM^Q=Q$ zH#kc^iN%hhqAVB&ouA~e(~V#A?z!ZZWWW@(n2I#fe< z;J#$6AFGbjei>)r#@_T%$uz_wrSs%^rRuynBVaHzzI}Pt!#JZC{qE5^%qJ|5sOzSG z(Pf~Zb9oMl{~V={1-~VC)&-CwnO%xA@bDg7g_7~MpYExY{|evVJt>41M?=}?-btbz z{s4yB55~dpzzx%=1YSO>H7oh=zC>N%3iCT+w4k5fojd__Q0SGF(qoBTVEzMOWf?RY57jRUj|SXME!UTB zH%_}(R5w^L#Pvy+&`q&sPunE{S!o&c)`*GWmkAwCK zKNJWIJ*i#84wP+wjr?^#{ zdfD^MnA7T~$6fB5AClT3k>oN65gq2I{Gq1TNVkvm*TO7ZF;PoPV%W)#*3Bq7RbvY? zG866=DH?>EC@MMa2gH0!di5GM|Gm>(EqRs+w;mu9jYR{wJqDt|BIj`dCT6*xd(GM3 zjXf7+YGeG}T}jz_^3&e<>zW(YEHmS9)V((|g}4AQ0l{^NTKp7=CZ4+0klxw|yUQ

+()ciiWgBcn-|FI^Plq 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 diff --git a/esphome/bambu-display/previews/polly_pocket.png b/esphome/bambu-display/previews/polly_pocket.png index f15fa099f7c63ca26f5525cc9b7ac6e9dc76823c..37607eaf8511b4980703cf7c478db0a3e01dc77e 100644 GIT binary patch literal 34838 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 Hb^ZPig)J1# literal 32051 zcmc$GRa6{N*JYCgNYDfi8rPyLYDj{sssYP{Q?5PY`%X39GNlA%msnG9wkME zRNT@}Uwkd_%v(8MCkdYi-#Ht+#8y}=` zNQg$R{a8~+ZoRL0ySP3zAYjU=_-jf0gN+gFcEcNe`?&(k-D=5#ui*S@_Sl>p<3=-f zhc~!f{$oTBJEQjy3iKD8@gdUVg(orUC^p^ZqmL7+qz z1r>N%pKRX7&4>oj;ga&v(z5(y{tZzoPj@c;^<6Y!qGyu+-t66MP1R0K5Y9Z>@~ImP zNDEn(wAf10c`#|8c_Qh?Ksrtf@-F<;WJ&IK)52iZCMq(K?ZfwiMxOQ99a0Q2(fI7vHe zDoL8M8$<+6mD91+mM`PW+Q;%x(J(eF>jp{);zn*n#XAz%cO_f7oI=_`ph(1N%<|X( zo6%)kWO}ti;_Hy`UHAn#*NeJJ-Ltx`v{wqpV-2`w2AN$XK2eR!GUt8a2nu^6 z@CtfycmD5RK*(DaVt&ohs`6mpaRfx2LyB2&OzcsM}1$88!{ac%HIbN>Hcky0&V0 zE_xR0afFC*OrrAs_Hj`zDVHkPa8VAjtHG3bADpkKPVY=13OU%IlwVB5;KSG1XrA-Z z55Q-1pRcI0dxvsATsHJqW77}%Tb+}lkiw;LWaT^~S|^7}3PUW~HM%-gwW~jJ@!4xP zY@a@QhDjpY_;L17g=A}4l|<$p$im`BrGb-iIb3OgnD&7RNe>fJ%kCs&AB!|tXM6pS zf?Ec-MNtbaFM_-(Yph`Ps&P+N*P`j&lJUoewYJ6UzYfi$+C+brG*a_axJp*Y1d) zukWRu5j`5R7{eq>m4;+FRu@6mqis+V9B9$zM`bort8utViKKv<_ZzxF2<5|fsE`6- zyTch>OR+?i1h7X+`3PHZ2?+4Ax;Tyx9NpG0-=V^n66zsjphjlkkhUoFbGDTPR|z9~ zwqs9ZkWZ`jlu^;}xLC!tOZnbRZy!jlF_DLn7$Me7Jxo0}(ArSq3Ap|~gh;zfYK$YO zsHJdXI2o0#Q-1)Bhl#84s)W^8T$P#3n};#oUm0GCT&_Rfq#gg^vv=QJsxP=6bqtUh zk$y{r6q;L%5>WcFldo;vPl;OX`&$t*huEr2;`IBz=r{Rbk)DKUfDI|pxgrgbBqmKsvcAhj>*9dLzw~`R$@`NjSkJ zk9vI6j6n;fs@xv-v1246G2c*jHukbs>U*n z`(7XC`BANIxA5EfQ!^cn16F=Ez;^N3% zm3xdq}`|B?z4po%t5uM@qn{v6NF_FZ+ zDl7&9WAA>cU{$u;l+h|dYfqnJ9n8Ran`@7`riJ~LV>|*p%DV5Bx^{7kDt0EtLQ(3I zWg{O1C(B9Rz&{UrhHi_pU1E7?(0eq!0~Mnp>3=6?vo)glT}aVlP3M#D8Am#6h|Acd z^*akw?IDtl)LB3V4(uNiK&BhI`|YBv-NS?m%&ujZTCO)(wy(Muqh63a12`hYoH{Uz z=Yh?I1-?6CSnlfr^wkmb{0(U8EAD~#L+y!o`SGrFe}E|QAY=YRnPmnZ)k>dW3g$WD zh+sVW^vSk#vb0&q_|@S@_f>30?FTAuV*RIxv%md$Z2hNBORi24<1~BZ7b|p7m)6ao z(BvjU?=F2vEv(Q!jY8$OA;N~b zi$dZ0btt`S>_ukcXGB;ICyn#pVaU#|!ZgL~)=5uxjrpcEblP#Yint7kDJI11vU0K} z1U0tpZpyfY$Vb>(j2Xq-QJ%yUn~!^88#0?lm_MtVmRZNOJ&P)?-h+RQs2Kcp@LMgU z4BLhqEaTX6Gp`b-=`7XxaDQ-9jP_%WRcDN-WG+vc8|p8<&@SdQy`R!2h%;)&7)Zg!O*dSE; z1bR9ASty~x47Wm5%vj?(Qf3o$125RKS%bBAET_M1aml+!=*)-6H>P)}ns?)AAD


*}v+eZkzaI0w4-*jfXExu+EkeGKjEfmR3s&k$I zt{P)d2{133SgIz9=puQ-mp354$S=2O8Dr&CfPT6I#{**SAGId=vD{TrYM1kDm8g%0ld)AS_>`Sc7CcX_p4~$NHVtd1L6MkL5e#!_&HC~ zCKM(lr@d%w5~oXz>^p+V6CI4J2+-Gtr<)3a`>KUX6wi$9nJ{W<1x!~9r<&*Sh+BN4 zC+9S{BR?fQkEb<$z(3x!?-}Bl(d)QT8~x-)FKvD!gGswzE~Xwkp0!(g<|fN0{mbfB z;V+e>n>tM$b~|j#M)fBBy{f?9D{OMgAH%b(nF1}6z$ABrE}Lj+1AuhsC^rS z4F4|Mv^0GQA{JGQ(2FKSAoQMnfjA=58?qlexAi8I9!1tL5QF>()zT7uf|8)eMvFcZ zSDxJP$tDt?wCS`FIASj2JOaRIT|ZRDGFbA%2*87nY<5~Usua-%lJ1r}O?Q;%6xXPp zffFIpa=1yJ?QWL)_ovN}o2y_RJux$GC$P=4Nx?WxW(W`h_l#IF>~nxKw!bVkpQ!^m z`vq}bqm+zHNbWylV=lz^~1G12u)Vf6*)R(REPJi0{dIDvS`I>$& z*5@f(`DBr_O&}$oe@|JLDIe0l;4d6E$v+V%oCkPBfpvwTzvISAiPOQ-;Hr$F`GW(> zyu*TLKw;sM-R#Kn8_-wMII>l__qe-fiUF|`x5(AsEc%Tz@Iih_$r2H;dwI0; zJpB|_oi6W!1(BrUFk0}}Hj?bI9Vs5G_u`CP9p*osYdfdi_`z=R9AsI*Yhoh6cX-$y< z4&1Tlc;---q1)2_Q+F%=Ei+J66+cAgdlS@LVhSH?BzWrjb|p%GA=F;JWhMY^`1y~pQ^ zYi`5INYnK_Ez^BI3cFnP_rFh*}6V zQwziOS)L6QFvM6&O&XX=;D--Z=~g<%SI+CYj79}M)*dW zcn+xVgn^&wU}Iut)V{rvm`;>$x%?1peS6gJ&pE;;Q$R?@-_~*H8M?$MoVljgn3ncJ zB1-WU@l~^%lWTW zUFn8x+;(jupHXS=ex=6{@H6)?shwg_rH$)>eWup?liI47u5$B@fo zJ}XBWmIFIwOL~7uax>5f%K%oc$tznuU&+1>49G9k5NrPX?%l0M zzvl8>LHrm}wM8oA{3uPpCGMHkomZfGVG`ox0cSS15>vgiCn5UOwMg3;Bg(CoCd=Cm zzVncpKuwJjwK@72&lbT)$R|+9CwB%|sNZ-aWIBBzDlN(bc!glP<=e&15@zOZ7pIo5sJ@%jhCh3{lp`p>T7{-%ejMBe@D7r(__Pl;Z#9 z@#Oss7GE>4Ym47C`|Qn#R#SpLJyhcMdLJ$+pIRtg=m0pEuiEe$tB|7kUl@gwA2fYj z`s-H8=D3P^Pak@Q_8k7+-{0HI#p4l6rUcvaN6iJ8TvV%x<^Ggj)kVVR%Oz{^T)&7j zx$Rr)|K8zqEXbO2&VpoobNfV+-1`j-5BM15LRgK=wRK>?_8_|Jw#ZYkG2#_6i?Fht zkHRM&en|vcU~9$-=Sd}bU;;+71f8HU#WkzaBU4PcY~ClZXJ9NmC;zAmOte0NXgVU& z3Xdbr`?~L4i5e`h$_k{XmJ5%LD9tpoPjCAzUmw(-rHaF;j%sps=eCVsQK2q`ofD ziNje#uE5AzWFF^=&IQHWb>>=> zVKr)kexfmz#Ku_vk@-eo^GSzu5K?=w;z-R%9i9HN#+HKhK;dX@WL5ixg48M2+?P{U z`yjMrSi)D@a%?Cj*3b9(#gqKx>edsnP&bTJ*mTk)ZJPtfwzOil@+8K_^0;1|FAI+k z6TnnxecQ9!`P{g^Dq?Ws9c8#Zb&Qyi1&lO|>Yh<0+$QkR!@5h?2fYHA2;+l(3uOJr zI5yyLADeH|XCl2wmiLc<-1->+SXhxn6cfPtN6Pu$`BpVSi_uNCyxbg>&w2_NE?^rS z46$ItYc@;}=%}o>&%4C@1MBGL%j}BTvjfLI`$3?}5RZcGcv+u%sJ=u)Tcx@R=;{3q zg2MWVC^cftXo_q`DJRfH7B(RC$%$0dh(8(NTLPK9P-gN zsEQ_9)-*5cizVHuJvtozEHtS{(Iki{ESH=>0JtXSt%zs)Tg>PhD?F&ERA!k83-upS zu;0jc+D~y4q^iXtv|_-FC;?ktrs^iC3nU9us?2^nDMDq)o~9=iuPMB@Efm}~bThni zPQc4d5tjSNBT;E}wP2QE*Yp^-bKv+RmuquF|150C#R)hn>5SPzqkn3FNWirTRPP$B>1E+b{WOL$$ro5 zz9CNGX7>$I37mFOhO?Y0fP79dnBs<+e|WJb72kEd^fgUVNFgGFk~wL>=Di2%`M-Pb zdzoOJ!uz#Lfms1KT5%q2ST2q@Vf*l&(-CcPbt*m1$G8CDc~u3C@u=5J6Ct~l=|VzW zfznPY0QnlVwHzs-dbnH^wz-Z^u6*1*hypMu0pgr1!#E{fK2*&62Srn9YDU>tH5A0_ zeVwPf2LPP_e(rFMqYE#h+yw9|A5=TJBg^shZ@AhE@*2 z#??pWcO|s#bhrh6d0}e6%Id&5V3||#No0)LGSVL@%GJT+aHARN)N$cJn8MO}kjL2L zZubAq&tD|=763SXdFZ2sy_r;|BDz1TXX(-93x){ze?ulh<_voP+^g4@3jpu91QO4ElF#+p0R-?g;t@P5 z$gs-#xn7|*8HuyOBIGiF)>^ysb|y*n47x|puBSIMbP?PAJtxdjsed;2d*c)~!$@8H zcT&cI?r*%GgCAa}^Wv(E^c%<%U8|hAG6k?#9=7WNRK?;QiMZgWy!}$Y98!Am|H3Y( z6DNj6fpFIYqHX*FuhH4D4is-k7_@tu0BV}Ofv2C~l$7`&ga%hq6^n3b&?CltN2Y$c zHr#)%@VEFsaHgQ|X&4Wpw#N9`1S`i5?&@?9KYdni!x02b1mnW~I2O$zK_oUSc@v8CC;^XkR z9(n*g>M@D&waunYnY)jJqQxN)X#e0QNY5K&W@axTd-;$`6w_3D_@fB~`Tx$lzfwaQx?%>PNK#^S2KGd;>#lyi+GvcSL&EC@+(U z?Awg<{i>#ml+-_@=n-2_TCkMLhqv+_Ie?!I_rk$HOZDUcd(WQ??^ZR9uT|mCKn*y8 z!{v3k{Lxz?DjERH*-)$kiu`pVii#-a87W;Uuxuoie$0_->u{QHYjFZW3Gn>SG`_`i zo54%}jL;0c|*EqQl zowFZ(R3#0PpZ6h@y-bG%_0xTZBC>nx?q&TRfT^?c7siAo?CEmhd;g2|i(Y_7j09)!^`sa6lD&}2~KB*23F z8gY7n7_lqRxow^|nU}JC123}QYv0vI>A`Q+paB4jIs(|8_>Qe>s`A9Kh%3vRJ&B9L zCjj7+Qk!s9*~t6wuliPLk&0fv=2VTcUp)i7=~7%eR?(B}>B=_XU(Dntk?!vX?FTEc z%7FdBkd?;6E_Sv_O3FN9mX{R~mP@tZ^ys{NxQPNA9hb(>DfdAKpC4sIFY8h8{Au04 zmn=<_{`bMn!OHnriLSHi4Q1|?j##C5k(}(XOXF|2ru+RC@8GC}Q!POklO2C(Ittwb z5@_lGDDE%uKhM3P9>nY-*nrlFL^=fHRq&^wngcm(s@prnqwvNlAd2Y5z?lHBsn&=7 zw;{kMQ}4Jn6!fD`v&#R{Z=nnO#(Z{8osw&d>8M4p~A1vpoR z<5;#YRxXC{b7}w8B!2in-46oA6T|;MZu|XT<;DbN=O3?)T2C=VR=ATIr!d4c2_TnT zwmB&k$AZaZ0uxg1q0i~k=G0+vmr5MH%DH3=qtL*Cc_Bptwt1mx0_~$U3=3WW8ku7a z^Pm`pRv}*dS`@uPNmFZVXS5qw5y!6=mk97pbIPlhQYs*5D)asc$$f)MtFD?f@)vik z+e%3ugpor0(?80xdn(yxC|*s!LPKtkq3^4$f|iDBdAW|&XkStzYcxw9KLw> z$L~~ldJ$;P6gpUbhjfl*Lq*zdecx%A)t>%2v9E@}m+=p(>u>MaaEzN1{rxpA)3GuG zN5^LNHfNfVwE=He92&xL2ArQG?5w`Fjo|haqRlA5j<+R8@x(N`AtPPZ;?Y!qxpnmB z)GJa5m`ha6M+4Q+!^S#K0%QRVQ)i9vu1xXNc1s5r;OYa}(6{qv%vf*Atp>^#g(SRZ zORXd@z|T6k##(qmWr+1x>~Jqcsj~D&bni4CH7sslY)_t0Rv<}MsJ}!qp)BLR5AQjN zam8oZB59DOyvPnqK5%y(K&K{N^kHGtV4aH+c{hzVTz^+q3zNoQqCrh*oVY{D=->Xm zAy|Hp=6e)mqZ~dF0?uv9%&WOS$$!dfQXuO#RP_2$A~9s-e~n@tp8Ge7ygESc%s{`) zOw%@yYL_J$>!C%Z18=7L{}{+9WKjVBtGt$nYT3UTKQ%33Qne-N{i9&L6O_@vKXaib zK+fK#&*fLh_p&gYw0W0b`;n2=0TUzIO^HzunK?XO<^j8Y84tvgRy)X6oOj%4J;h)6?SDJKKTsrzZS~@j4;sq+xO&#tx_)h z{h=?dR`kw;SfO!R4bZ$n;mAkd8VGVVUHx$%=;^hP!H$$~*J;C)Txi71t>UAUww{vR z9<8JNhSt65zQ(e+wtk(x){yDSgvTW8JtOO|@>Ow~=@0X!g_~gGKUbe6U5*jl9ggM_ zE`PKw>>W5R+v>`b$Lfz4&JK^wJSxSVsBt)Ke!Iv-M~zF7XZ$|&D1g|I4w05@rvjS4qt9ERuaO*v> z&YRkjFr*Wt2h>>DhWm3oi*yuSrGL7bsd^ z-*Vvg#6NrrO{YrolxmZdC$ITpGg6s!(0!r?K^(`>nM`nXZh1VZ(#W%pOz)I3BRj*yz(h0i#>dl|n z7oPlU*L=CQfA0tppDP!|m)#@pk$PaHdBcGh6+hIQfc`)o;aX!+2EZto*C2OYPgboS z*?_BI+u)+53Ln)ZZ&dzWV1{oKxeZhmyix9pcP)L;NFz;=my<>Y`>yDBGO%6&KEZ}_ z3u)IcYzw4=SeoDEH{_+`@=+X5IMV6{nW6jN)IK8A<{@Ox6jD}%?ckRbIJaPf(|fI! zl-jd80o*0PL~XO<+%23jaO5_nK!#%!6&Yp4wz2$60w3x{T8%$f$^9u!Bm9xv8gX6O zk}W00Ne1MGvh1RyBui>TzRgp2-PP;a)oWNTiV!iaB=U^J8UM@MTMD!LScJDD|sP9n}dN6x6cbrL0S738b3Kj~!EM<3t0#_S`v6v?bG;AWip4X#_i{={;fvOPCtPAHIg^jWquhWFXV_8BVe za$n)ylNB92gYBzAO^0omXC{O%-1BetKJ@L`fNj*|R5r$KpF(GUkERGDB(@}c%L+|tUP;2x z{!yE8yA|*~WzxKKB>(_;nPi5Ot@%`$>CH~F$nAz4P8_g-DG_G5^Wq zCiDabniiAiA!8l!a(d5h42do4{^3ON%=GS##~loisj>cwmH@l5UP5R;ogLF0RwoAG zgIgcx0d^*;QLKsHEqkMzUi9fUcssm?VGt$c30eLAlKVy-8YXX9{Ih89U@IZeF(cjD zDZ8ha^ax(JQh>ahhOq2s2Tz$dVFU*rEGUYa7XTubh-2^8YH2Xn@luihd{l-!riU_yjKg&fss=S1JuwGIYaIW^>ZWdQ91-Hd0Rknu~48dfU8Z27doR0lBKN;qdFyAS)9+uP-%8Bih^z`;jM-L8V zxaQ0BHdds^Rm#;a?3L7?NGn?^y;{m)jPe%*Qp48SOW~{ibvtt}SH7`9T<8U|q3sp8 zx?f>!3wbhE)X0eX2+=-#163wNhH+OP`S^0v;TywO8WY1ebXCq}+m@z&o>;@iOLp5f zt*qKN8|h29_>_+*M{>N?6TI>g9FBpTkTq*#PS#TLuGPS z>Z@1j?oK|(p}3hgUq@zN09q411tA%n&vx_%-PjDem?PwDdup?q#i~F6b(acZBumYP zgDsn$EiaROB2-w2m^Lz6^#y~P4Y$*)a@T{NGndrR!b&q5~RA zL+#G-eBjv3^bgvhGQAQx zA`DhN+&hh_39@$@f!0<(ynRI$+^8AJDgJ0@n^@>BLY&Ux-{RqqYt7!{49{BOex zMb&?0$avWhI{D)nTc%lL?5bpu76NhRHHnWL{-qzDN zgDvVnqrz>_HT8b7Pq}4qWDMrUJVtcXj2DQE1p~7L^?XsVH>_+2h(25=-W%blFj|;A z-1X{ydk-%PnB-L-b=m1IV6ylsR09EKR?4hnsRcu9p`|-M;!&R<)#UW#gldX3{M7x_ za84vZFk`mI46g)IONZxq(Ubjx(U`acnq=w@aTr^}>W{Lz4%(WH%CE8!-k}H`Q>nmr zuyEO$fFcGAkG#S0qL5O?Z0^v&Mm%D^K(`4z5^w|#>b7H%6lB)D@9$ekFIA`7> zLqchI+;x{jD_7ca!8PWHr{R&fvK_+C^Cmo0h4BTvNIoNzWR3-n))(r`1Aibb6mn59 zTzMMTj5X8xnQRyax?HZyb)(8>r-cGpAN0d;tPGE;ns9=-d04a<8mD~Ui*u^U_;PG{ zR*Aylbd8)736xS=wPQZT&l@4@BABb!>D)DLhV)*vT>v~8Yw`8Wd;p0U)=e0k&CoP}e(oOb%#f%SN_I-bc z#F2tB^4ql8tvmr+EJw&5h27)(#n~AzFRQFi)J7!bc~M=NW@-&jQ>{sPP;T+i{Lp>L zXO?iom*ks`-?7mFQFfJF-Ab>i@%F_BeJi&J&c-SEk&oo3&VCK5#A7W^pq7il_2LHhEM zuAN4?wx&t)KL!5Po;$j~6ez2Vd8b{Db4}m=XY!;nBM z-G1Y=wQAWIPXEdPP&GwQ;68+gLC@j^SNmap-}yc&ELPRI$5Vh>MlkvENT;Njlbw0;CuG=qco zQeBszZG*<07n4fAi8cDt7)UzQ-WlcS=L~rS~x#JeHyfqwnl#Kd?{{G^hUQylTFQU@71*z zbLD}NRpUcZiR42%RhYQ`JW65>xOJcF2lkadFFrY^!}So1sFmdTGMrsX*sfT4IzO`eT z*B_RMx@Q!W|NGpc{$$`MB;(@$ZhJ&v<8n+iZ;e<}p;EUU+AlU&k*-~_Av@=N#D04* zK9&;mb28GKZ`*TH+v^;yYa}cE=QL4eEPtQfD0+BFVSS!w$Epao zlHT%F&s1W#c_M~qoT)1QN(1D`fcY2xo^Fp1xX_V>6eDJ9pPn{qnL*A~xsudmN1&H0FsHsYEpsnnUGZ+D~6f*367GllC9{@o_K3 zRb^Cr;h3$ze`CnHLVhfikHX|TUfR1jxh#(FlRZHT=5Z%j`H$};>E1^1h>$}uV<7MI zq<1s5wT>eb__X^DB7z=-Rdx+-1lK8JBQ8Si2WTFt7$aWEv0i({^oFF|hwbXP_4eNo z!Qrp1E)J4L^p`3c*BKn;x9&M25&RO5S|~36@ls3w$5M$05zI4n2*9D3+1M^x54=CQ{dd+ zMFEh%@g~DzPoPbC!Q#JUdgAn3kV4=C7RV)HN-AElT~G zS=$94=9+~w`K0UhuzPbZRgyHBlG#T4c{2UYtJm9yH2$uUWBJ9>?T<8eGJh0sf~W7% zd${p2_l;4ClxIj{D8cygHQ&qZ=1mrI^TWxQ59(lRH%{u7g> zyU6)VIhirio6?5Q^m7cTd{Y!&*yU9X7RE`ZCVRrXompzJ4}Fkf-=&93bNLhkW4100 zWej#Us(sOcPMz{K;)5lP&stQjv_R`@_#k<@Fv&9y2q1V%s5psk)p~4XZ5+GG5&P;x zs3xD^qPGR+$mtD2tV9-UO*k%C`DBP?E0dFzUXgmyU~&!(frss}*8E^R`Wz z+gZBmiJ5jJ_1D)fP$V7JrM9H9GOM8WeI#|dV&{36foD#5MRvjG=HN}7@unvL=CW7Z zO0qneTer-Cm~zRBVj+G`!OZ69P!;7$u zliAVFFZ9gL?}Irqb)-Kte7*ymNo+#${hFH#amn&n%16n(i;n$_E=Yk1M!&78egCWT z&aw^Wd{Yh?HKSPNNW-Alx%*n>jg~UPvT!`J*o|l=weBwq$|`lx|G@%oi40KV29$ol(QzOT(|%aO%tWwVPt2*AoV+>(!*3AS>vQdFPxwDg#*lv z)|Rp9o>^nFg&%cc+!IHeVBao{^Usosea@24of^9R}nZ7rT8j^Vaa};j$>z^-reOIJUs{1#%)fE#IB@cvkK27|Q)X=%4_(d}R;>zBGrcOy<~j*l1{ zSAPzWdlfHAW_?R^Qq}+O;=9>ESjfzoZt6FPFB7VrH~6oR+_7t)x!n?PlTe0#KE& zTV=PRtZE_!634th=HHBx#!1G+ZS?1O&yja8vmNYKbHk{4$E~&mz=e(f5N7a}q@~2x zYQHXyb;-6Y6tgm#hXsNdH3eRK-G^+$ocP|t5)r?C6dvTgMso)G+`p>4@qOhz{Z6Sj zkYBB&?4H}MJ2$eXZ;J_>!HaAzKS|gUyvg}?cY2R8!8x{{M<7+k6l!%cv7q`Z4C1fW za-UduHAQ;WO9TzTAE~ClxfWTrx?39o^@;U;kvPK|1K)1Hr%R>HyK#+`jwQslx1g_e zD|4XmvwB>bwWuxHV(`b&UkU_V?m*v&5C+RN+aU-B8K=`f63K{|0AP(SlXllmojl3C zq#55MaPa&97*$i3Fj!Bo94~j1K>aq<2{2q`_APUG6{`NxHAuR_2OC_h3)|A(J!W%# zwO{55fW|*hH%r1g!ydU0gX#{JkaFB*+_lWz7c8YU7*KY@TRKS7_bpmc^=u)u$o$q> zoIZelj)hVU7deKiH~9P|fqV}*Tt%<{j|SlngEec*Ssz#n zL!qN^m8ny|Gl#DNd79?CfDb`mo!)6Q>dEaVE%6R@zIjU~dDjuBk^B+({nXvHr@!%Z zhhcudB{TRAqx4$xy}}X+xJ%uCN^B#)JmFQiL%-POc)#e~$#Fj60u+QXEp}-|45tTt z=udgyG)c1f;kHnJbwD=*hjK4#`PGBEV~|(jlG?s&LGZxI&Xom;G>oKcWDv^;plpad zq5elcM=IF$a+Wy;E;KwR&*ya(ldCrkf29@!is1p2YG-VVkF(> z#j|`4Ag|l0!IN?(4>R(h9H~KnMU3t(|y%Z5y{UC8D};vUu6N60B_EOiUCInE#QUyD^B{MC^mxsCIGPUxXGI z?!0!TE_Q&vs0qt(m06;LIX(I48Mx&e6~}{i#a0#!)aN2}J+IT@qTJ)m9>SnCB}`6p z>2~+Nj4}8v>uAb%)L=Vra#TBJBy>LfsiDE`)|Ob~oxiACLA&VJ-;7bq3QIM+;Ri=gk5Iur8YBZGEBY5{g$N-G=KOZ3AI zP&vu7Bfi|h9kp!$`#Af%Q#Bo%@hq=@qAbUOippPyul&w^RhRZ%Pc!dUDKzkqJQY`k zF#7$eq;v~)jFsdi-566`t1|J^dDt6<2b;MqHHMu2YjQscJMK_NghcWxW0aYkoh|MU z3g>mG7J{c98e*w1gEdi2#1zYFxuI_S-L+bKI``oC0DyQ9YHXjjl@c2nyAN2kEP=t{ zqysh~hXpJhpigXJtm>5907Pj=zQK&@o#<0kH@gO#`;k8T2F%n|p5yo)(vd5G9#>%& zpDuhI*=d9Q;BVrcch&7wtYXep&TdDaxPLpK%DDKLN>w=-Thc@~V5f_k1Lm$_r+~)< z^WOzil>;4dg&oAG8}<(6z__XGCP+z{9w4Z~%fiP{t78t>lK$&{koRe~1aH8_X)kyw zfw}a$S0!8qg~r*J#Tnj?>>Y4pCVFP{d--R70MsI}$(?Za6716PhS3VSn&^$FWIVkv zK=VoT%s5F&)BbXt=lD!hg)#)lAk#d+F)^8kdN-fBH2~w9Bh@(4Ua1e2j^v`;b7;pf zz(hiHf9hCw<%=RfDeEttlb7e0Dd-yS!!j}}u%e!?_%TJqkhH=AC`L`%>Axhm(9i_| zDRK=u>F)l}-jB;>>tyW~!5T?Q_((OYsTLMCz?+dq0WB#wJK}tfmrg$ZlhPd0n;ACJ zL5WvDL&_L9@d&72ZJjTWmY>2CqG?4;g$RxUQ{D|_= zu+Xyb(__b3hMieO>RV{Q$0ruGJWNbkvOTfo+{7KIFuW|kb>B}yz$;4vynSACgOvRN z6L0sh_*0|a{Ryj$LUlkHHK>vDPa)dhHmW$Gmvt$xh(W5ZujN(!Ga;F8onPwx5K}~e zWAWWbF0e{Un~FS2ln+a(42s87$82eL_HOSo#OdgvSI*WPQRPrIpRa6F^dC zbqg?IL;NLnns)NZbEyiGXOxQy0fMaZ=b&8rdKPY+E&_Gorp>MHAcey(Gt)cGH}jGH zeb8W%&l*fcjr2fZ&Zat&V9Rsu|N8QuW|FStw-o8n>y(+%{rQEZ4cW567>vUL=gobI z(Y=6KEDsN>+RY$vp}XVJu_4>&DPG7CdvMeKm7VM45Mh+?C8NSL0&lqDuW~J=9 zEY+bYUe(v>5nR%Vx5e_D0A&N~Z@FsRDxMmTuG^r_uOSwHSiCx25BoBFAm&bN=ZXVH z%SZt~I56LnyK{4M;u2YawiABbzrDtQJwIoqWsL#*B^y@dzh=Z2kJ~m?eC7hit&8w< zJcKBHl7f!*m(~_G+f7XGOlj)OeT?Oz+xK|R6}rQhGxj!Lk0vQYCeRo+{78lAE0 z((ivZlgxhDm*8OX57HF2*m&J=P!2?Pm)7cehIl{463W^%uVeYTzk|TfMXO;;@t~QuCq?vk2+Y?-=WVj^_Bq6K$gPq6$C2t2gubPkV(LFKBX-bw|vz;@JIWbOBFm3LhFO{>fL!H zC9JYq0VvJ~b`5&Q13Ej7Z*UO+PbYQpeh(r%6*nmQfo)~Jzb`@qSd{%&D86_#4bHtm z*JD-`p#;svIACLKkd}GYU>#0Quoqe4H;nRlbgB`m1$CWzuuP#f`0uRc>2Qz#utH-z z{kM9`U%qaN`yI^5BbK7g17CUdb*G>?9eK3nUfL&htZB3==FbfhV~olH{RQJzt|#~SR%`43g?==d`7C$hPs9v;NAyU8ZBjp=UbbL`A)9Az)W7;xlSR#(+`l# zE-#kk)c7ko05Q3yDd}<)*%r%NWDiSb-m<2-v>d2N+AS2&dwhRP;c>5mb-{9qCioD3 z7ZHgxpJAQ6^3=I-7=!(dg7YA@o61`-17I04^dXs2W0Li!p$)G77?01E1!{MwRkj!Q zhx=#vU_NgKG~J6buWJuFXMwqc5_Pr;jJPR4Z)V}ZG$TV`ZGGcxu>SE#z2GrLrAZ0_ zU^~gZbWy-0?HhGBX4uYy5P^yjpi=sU%7H+|6&~`R{yqGoKAi_%K0oP{fmpHyT@YO=0_~8SP0P%`Z9TD`*XpX~t#k199{HC_Vx(i5MzB<8aY=awb z!dgVafwUI*o_$=~D;r%Qyro7pb1Ql^8InFQN*P{b+qfe@1A6U}3g%@$w_}`NPDMvN8l^Te*%2njp`X@;sat?25k@#DzwxGuzqsgg> zd|CaI7U1z1zJk33&c{n=oM`{8wXY1TvRVHH6;Tn8mNr1TyBkEhyHh%(7AYy+-JP=N zTBLM?fHX)W-5qD}-Fu(wfBM7m;)APao@eHsd+uM%kGy$7a&eh$$C}ScTl9>{&vhZh zJ5v>BWS;$3vBpd$10crUUU`0hL~YyK8tMyJJyW3pa1#zo4Xe6KKOZ5xiS}S zEAjOXb$908yhc%48{IEu$a0sqRC&-#S#0c=zqa3q;MfWFOHF~tSzI+ECvh{_eSrH0 zcycV7!LnD+xv1A;s`)?8*V$r-o3EorHo7<2f8rYJ5#|MG|nQ-P9OmnvXBGL&d6v~At zRWc%Dk}fcntun!8BkM7tS_X}`yu)1DYw6Qug3Hp}E?lL@YTeT3<5LAk#{(U85O(2d z-76=YPtDh>(C}dWp_r~$K*cviXjM~56^~O%<#y!3cucQ!kk`j*R|ac9Z^2clVHk(g z2XecUrYBNk3wQ8Vuy!-O3K`#>7sMLhqJ+kri_p-^43k;CMGTBzC82`EBWv)21zZrv zz58Sg-AKqD=W+4Q>@K7mRutPG9NE8At#ePaQ>^va^>)sDu9Hp>lBQItp3qu8I`XG? zIbU$YqzBc#iKuvxC^eb%o;r+)^=HCgc_x*u6N9Z7N+1E0>k(o&$sR4GwMrxMIUWwX zv+omef4q#I(w-%|-&5r6^dxrruZve45NqcJ-Z6#dn+4P`uiofddKSas!M3yRg`&4i z4{n>Nlh+-ds)iUaVGk_DPiEH*v}4}4e*&7v)QV)RQ6fpV%`st_r~{2mRrzOXSJ(o0avA?5?L- zt}5vU`L5CULSt3O$SSr4F)j%Y!a2wOW5`;~XxjHND=*G~K-W;F6Gh}+&pro4)yu(8 ztv@E6OwI6jTERFQ=fra~5%EpN-BM`6pIy{l+hs#)S7kv@@2#wtZ&xvN_IHmZoMB7R zT9QDqohV>9qjgDvuC}VK!$N=<(G9QPTA>`i?@*m4gfl%vN9%cNS`5i&Fbp!?+vgm~ zT2gx5;^m?mnA3^~XY_L@uhu2evXr^1TH`Om%qG$Qb@%TbgzBQpPq*-<%FgZnD3lN4 zUX(eNH@9W(U}UntlH)5z;}+R4-qo`BJ=HVNagoR3Z*)@nT*2a^J%c=`b1aE8oGl)w z-NZNuBLT=!fy@>N23nsT4#@XEw9ix$wran?vwTmx%&u#n=J~YuZM-4IHo<;%KlvIV*g2$zA*nz z>-%k;N7&8H$+nK-9A)4qL~Se=-uDd%f@>I0D}{)k+6&g`2f~X-{V*{Wm6424tCunj zArUV`6bGa_ouPtcAd2N&v>DWHDp(M8y{ZUWA!Q2O8f08FnuA@LCdHA6uTT^{HSOX* z^%O6%tbT^DRU;HU5G6ZtGXusn*ZDo?6V;z)L;U6b3o{E61w7+9-1xjqOn1p+K>mnj z?T6t@-OJO5o9A^_*|}9D;;hL{a|(*@F-_?|3pQbM z!i+mpES?N0AHG%Y1?vMAZ5cgg^xh<^y26U0Ff2@sz) zm}c-d=Mrqr8whx$VN$eRaahXBPRoh8gZ-7hUHPM-{in0Pmvm|GneEi>cnc5CuBW73 zH{Cv7tB9^RA-8@>X2>aSQGHw=Z^NW8FM-~vdGWKpwe3B`ZfcG4In)+m>7x`r1}D!S zNdL;-=|AdDpu>GpkvcwGG7MJ~q^snHRP6Vhh)B*_Xv@NHX!zt50(g$ae!Xj*1MOcd z^wK)a*3ydZZ+()LGcwg>NEs?v1*kXLr`7hknoDV=>pjSaDJzP%-R+PD>s+-ERG#_k zal@|Cn%&0#JC9RnC8)yB_z~jc%wwz%-40fgw4s5By&aG1SIV{KMt&dMU|-7To7}^Z zUhnQqOalT|9g+0&U%39ZElcu!ugq@xOz%tKnRUE6b!6;)AXIo3*MXJT@X8i%@ie|| zd9ohU=dPj_rqk4?dncukAT*1HzKyCyGKb-eO^MzgVgt$X+Mdj~bKjTMG_lkiJe6oR zgnQ?v3~^(M=)of)pLRf0qI!lfjD6g^A~EmzIcH>cpK77Rx|Z$mO(K@_K9}|`bjML6 zzIHKxl+VFx2mgfWCDZL?40&k)1WYMpd4ZaFU9%oT|QcDOdgoq#2^zA)0CMW{gofZe!ubU8adt|AbS~RZb6M>ux;DXO#3qbmDX1e zyxX{rlbj>s$@XbWEkGqrx&s$%PmA~_B~tOcsq`dquwW8y@LSDmyk@iJL-cKR29(3z zE2k(LW~R&JvA#+*JrN!%u{?<=r{z_uI_M%!3#=|~{C?T&Uu?=cwZCjiGZMkv{rp{4 z$KPZgO92+0&{F_;I`vV&-#9&0evd$&F>jrXGzvJt1GN-7E!KC#Xs2&V&!8b)`*;tz zlIR|(A!6#YvJ8Tmj|^o}FwYT8JMEA8^OO4;_(|&FDrujVJ0H`bcs$W4vzk^v9RM>ZW-XJAgzPlr?lI zW@>_U{hhmQ5{Ayr9fjfNUBbJogB!ZY;+6NZEN3F+AfncC(jgiYf~N(@_*9PNe~)}I z4bEJ%?Z`_YroQ{Z<9eD)z`KjYe`9R1x`O5eEw+v)Q^$m{Pp zVkt6Q49pgR?&^GJgD8c8=B{_?ghko;i=xnBz;47mcL~)=3~Dil`!Lh^!{#Rbb1Hls zw*>p9pceu@jc2Sizy(fmtnQmLccN1=HA%&z^mV!cCvW%#Rj0kDJB%B!0k@_(|IK#9 z+kYqivr}T}_Y#_;Wd&6K@e9_t;BuN=Kq)>QV0wf(HfG&B5|e2p%60*JI#LGz>wPx^ zbm&NAK$)vD8f*V8up=`~9AbLM6U_?sy7s4#`*w@ChhPX4~BC-Z=o-N08d8BE}^THXpM1ZJ^wIoX=p zsN!Bn_Dd16XDxg}Wm>aBeZAn2iyO8c)=)f>=pr&JQNj{$MW@?YF3-~QE+JDF{{U#x z+olJEWg_pXDyB&8oowb^U6LhN|4zy7mhT9Gsk*1FT*ZY9jRp{mkLbe3IfqZ`Oc460 z$_^gHlE|@W7=na91F(zg`R7O<*P>0=RPJO{#tnWoE^s$8y!eDpRWghWJ_%qKKu=}< z)=9XNeS+oW6=zs-7CSCEfeSvZH1QT7W#2ldO2T}49IX|Y4JLH1U$g^Tn2}%baiap% zjw9ku%TF)P#`M0d3H;r9;3KMvB9@yX?egw@H?q$_V}MSbLb<;!0RfUJfdf)m2#WqR zgk#pKG>*o5op#XcKQF8%siv!_7G`^0ufkQ#&mtOB;upgmJz+xyt|Zw7CSIg-1FtD} z0EcjRoS#PHNvL-@ZVJIbaDh9(hC;K`Ky!ZVC6HU-JS9VvYXH{`Pb&2>^&!!)XClK1 zx+G=|cYCzYJAWwXRrxqaYZf`Bi`jy#(MOl8gL9#33pD15)!$6wf@eUg&75$BsH&(9 z7?H0bewJL@?EXc_H0sLZzgII(giF-y;ow%SPXP$})yE?R$+QMeqBIZ-hZrA*5W=-- z>{!8KjyC>SiU~UPvPu6tv(Hz3VmLTaWaKNrMsQv1u7#NXfD6tl091cG_dq~lRqVulx4i}QYR;4kmZvXDXmGUG$u%3T^VF6vD@C-{dfX7C<{QA z0bvAm&c9%={hfiTu71xO=)FuR{xh0l{rh|H(@M5vSgsk4sL*c%FT3`;s;#?@_V$i< z&e$RB=%ImGuUq23X@`?W_1e+d!Ze$kw1=hHDr=U_ARJ6wIH6`?(MpHt1=*swZAFl* z2>0|A6o}av!PLvD&QEu$uf2N(qNRD=*Ot{>{uC)SuT}>bm-TQ~*`Y#BO)Wj>Ax%36 zv9oIpSl46IiJuo;wb8YDb?$Jx&eP8OJkwI|EV5RM!3C;2N;h%ecZqHB2(z-fTAlhn zl@8<+YII+(%relZjj|%RHd#+7yBWe`aDet`a0a1TP{XwABHceOkpR^4#J5{Yi0^v3 z+q|uhlYj4+U|5h*1ufq#Ws|b$PNJ^}%W+@zUVNxUR@d&lYq?+ig_+8egGt$BQ4hf-iasBko}eC7P1R7l=e;Zy0u84i3rkOuYuWlyKbCX* zU-)?OCh-BghSr+N4zA~zFB2ZF7Od+@-ryzmOoVr6N?MezU(v1tT73w!tqGpzb5p#MgMYTaYF@B z_0x5>XJF{v(Q0t~fQWcq7yZEW@Q3jgOQpsqcmf7eXy}JJ1IlQDu6M6=8;}?MpE``a zC9A=Ak35k?_d7$*uK&JsVuDfFvTy~4(dq5t9q@v~TAV@1c(E|=-i8`L5tMZ0Ci>o4 zAGSLDO=szJV`W$eCV1uvsDVGn$91fw058+Aetf@_;3J^-(WY?i&d;mNf92O$s;MyS zAopP7wf|6cNK{G&FJa&jkyQW~nk~DxpKamD)^bO3%YIs{9ri{a>C(6K6$_ERbF^nT z=@hxNtLd+7i|2oD+5s2bCvm8QH>447O&Rh;j-Z%hr0RPx6J++c`j*nQs0s)GY+0U^ zL#=P%r5scW0bOTF0xgsVH~0qE$dmqT*Ym0}u##ykO^fKKA}O&E(9TLaM)+c_sSVQ( zPbdDdo2G<&Vwq_|r#%uao7)m#ZUfVN+5Rm{)xj-}3Xei|oj}M)J-5T~)AV;r?MKL2 zZy%Rbv%CmZwtUmL@u;r7yVTvxS|7+K*c`N$p)oQJ1>JKCLJFeWr*(C9N!ujnr zq9WJl%-^08w!K?!NnmO4Mfv(}|GQ#os$!GbMz4Urn|{Sb7US_H1TW~=At1AOeB|Km z>7uz9>c-|e`(7@!f%&DwTM&7yh3^%u9BQI5=;oP3vdGsMF&Z#wd0#OOwmB*jz4bX; z-BjC8F>JWJZn;(I-7^8#@{RacrD4>c*jGFIll!zOm*F_|`mA=7Ju?yChXOnQjt5(@ zGD8=NL(l9qz9%7fgSj+SD;Z?&PyL+mt!YeFTvW^hcVCB7yJtIJ%?@1YEDiNVn*Yv7 zccUOqO`v4E$ce-9^`;D~@-wz{+`ral)ZsWg{Aip=*Ze59@q-Z~ZqUo;Zn$)SCkSy> zP1cf`&6xM46)C|^Dp%zw4W5%{J3D-4URi8C!Zg!PHH4~M%Z-wlO=7!n=jr-qPtcSK zna5j%(m*NlfEIQ5OuwvZX#`j&G4~j#(8!&dz5j@!z;Npco2Q+e>b5IVUNy_v`piy2 zXGC-i+!+85PibBYT3i^U+5F=vTxXX3=s|AJK;j7C+1A!ClBkK@xqGbbDJnqN1vE_2 z+m#}{{t^PI#`ggs5J894xB42i^!rs)UyAMo-Pfn1Q}0#HJ6zq46vrKYsGb#Pk~-H0pwJKYxEzo=e0gn9l?4Pg``BFMPcvq zvV8=*VGd@G5&)4d3ySCWF+D+}_D+{DS}z)4_FX3pdSr%?oEvodttyi47o5Y}HBv_9 zPa3#muIz<$c-Qj9L7y4G7p~0gTv-w{r^ls`tN3^H#VSS|Yy1*ziE)B1gK3qd`y}{d zdeA5~)phd%X6IJLN@gC3_)orXq(NCHIp3}EnN{kQ#J*LgOEbR2Xu)rBc5$~7>65@) zOgPNN-D>Ikr7ldm)=}hI=h%pzm^`^iWJOgx*Q9Dw3sqld0ET2;$dzqAU%l&!{=D71{ah~DWmDXdjQc+_+I$KpBKLdC`ON%GXF#y zSmZZS3JE0A=3co0`2Y`>TBk$?8nc3zh<*u8+*=K6zt{WI6#pA9l#1 z1j$}LDT5f3@-JgzypzbKVsOX*6dOh*vfpM4SjBIHT!NG@fL3IRr8AjgHwNdGrbf>6 zdD`S?yU2Q$p}XnP@2iXG&MRO3DL=!fLmN5fpgafHtwvm%Tv9Cu$M zkwWp{)mB2>IA{|GhM-4cp0)(ycCznR?s+>)<_E>%)a9ebu)vBt7SC2QYhh@r?D_R6 zX+u=8O{ylb3RPaIv)yLT;h*6TfPpwI9XEGb@Ww#5vqc&F@>c2PBWg-Ik(8AI>0igw zvbOHj=vtW}t}E(Pxay2u>N-8RKwJ<4C@5g*1JnrDfcDW!ZLr1c9G9o8Nf7RJD4?LA zBjmKxEDhjg|Gno>&dP;by{vM1BL4xxV|+Cg>xQ`e8!nN!#G#S#sy}*kn_*EKYLcH! zpz=4Bo4BYhS|*j%;mb-i`$hBlnfZk9ZWDE3&l}z$|&lhi;5lr_#H})?JWL=pK*DDQ30u@K}IN)7HlYg-KJ-8npNq*MXZqq z#(55JhS9LU9r;G;IWWZK^87D2E9QkDYhd2e`m8deNw65l`T@q9x%UK?lj<#qa3$Lr z1t@rr)n$jb`lA#Iv&t zTIwq;lLRvvwxXMzR@zeqAWgS)?Zl6RVk%Id8fcF>iWxK}zM}s)_T@_ZUCk>R(_H}8 z1nvSVq$!AMALq0N?wo+5IqlCZfqTK$7#2|Z7Ls2ZH^~jV7KEa(R44aJmeWq&19;vRZb4gDwq&=|xfji5r=B4!J9|y#yu7}e6iR|V{jP*#%_il!((YMwu!^dGxC)q-M zt8y0uA+?LO-@7CG`{On2ER~<~kq6=NFbK#gZV5znC|#ZNPgyt~QH#ih$NdEUh6fj_ z>w27=Y!WO_PjRz9&&=|*S~{uHNS*~oxFpCAr(&fK+nI>VH41#Os#(@BO_xWI8bb(= zj^to$-rPGqDBfO?7ye@P>(ak}ezul1&Ula~JPX)VOc>{r2kov;Sy`D`jE`dgSE`X4 zcxCv9S~GDp35Bgw`D!JoxP#hzr3&55edoGMxB0%l_>mMSIRm_-aRqoOqKU}WzusPa zT(1j?X{$&2H`}Uvp28a_=fDP00h!vyB1SLaq)8Y&cc%2~I4nM|w!omx`&jLe8p}Fk zgN9kUP<=U!0Iy-;D59LL#x>cbHeN>yt&>1%>`cYt5NfcsODf*Si#D}qIWDM(X-`t{ z4j%V&y|oQFCl14P&cjvr^fJB>!+ zTcQ(x(*-G1p(w7AkjzB|jLg+YP3@QIi5~)W%pa=@wn^9t#&sy&*!gp`md$HA`kn8b zby;^c-Zt;NfD#>owwW$6BEK{sy`Q#l?3Q-=J@u@&NRCx@m>)~QTAa3&v)) zHt_=p^~T3kL+P0cY`ez47P_%78pY^}Y+ROn9M;&pk#+MCnuQPq!h!)V03f_|Xupq4 z+X`g=P9ymn!D|kV#D?^q=KxT30yo*X5-~hHTnbEzfFd4Y5XIMt+wf-CO72X~0_ok? zb2#%T>auWTt;IcR?kdZ<=KFT_`ez935%w3JofDa*F!+~WJ-t1n{bfesie5ErA_7?u z91i$FuY6w0Yg8hEOM*m1WV`bvx@_Q%uI8j4S~0WJH-zxEn4~8>B_)JLm{eTeispp) zne(+fe#i$vwn}1Y4e}&h@l<_V*vBC-^?PkmSVpAW*}^~XbI}6xkm|uj0(lTXeNx`Y zl!Bnux09?k070^|f5-6(AyG7Dg;J>@_Q;~QgW8Tbmqh%J>+|Hn(&lQL&Gt7BVbpXC zj_Noyh0f^8O8lmr_m$Fw)U|iS;F`#=6|~{zYpthOQLUXxh+c^@5=Lt9YtD54A$bRD zIeACFcnLioIw(JYNDbZOTlBngP51FW(#pmRyZaV`3yJ}R+7r({V z^%@afat`#G@+lLDKtO{3o{WqMRbiD@P`=XZ32CS(7@qG)-fM7n$GuF=-CD>Zu_McN zRUwvofVpx;3IJew7Rdi@W_7pDK7h;S;NzBn-S>kDR$%bEYupvz#qRENcQN?dMfO!i z$N;dKb%G*3-v@J&I_WcwAOPp$heny39C2oAD2>lA)&@=rqk&nhOE*{9+-Zuat%#xf{dP2Dt2nbV5BCeHbHEW3<#&TiD%d>_VrhE zy2nZX2<4N3|4docOZ%owc>K|96XZOi$?w75{(&FGJaJG1g98puq3Zf??!m7?Ru9UuaLfo`1qc5=2zh}rC7dqf|Lν-Ik! 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

bTwm#MBDYK0X^YEms&<>E?d;UXS#_4?``jS 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 diff --git a/esphome/bambu-display/printers.yaml b/esphome/bambu-display/printers.yaml index 894ab0e..b22ad07 100644 --- a/esphome/bambu-display/printers.yaml +++ b/esphome/bambu-display/printers.yaml @@ -6,6 +6,7 @@ printers: name: PrintsCharming subtitle: P1S / Office entity_prefix: p1s_01p09c470102673 + extra_fans: [aux_fan, exhaust_fan] filament_banks: - label: A entity_prefix: p1s_01p09c470102673_ams_1 @@ -41,6 +42,7 @@ printers: subtitle: Dual nozzle / Office entity_prefix: constipation_orion dual_nozzle: true + extra_fans: [exhaust_fan] filament_banks: - label: A entity_prefix: constipation_orion_ams_1 diff --git a/esphome/bambu-display/test_dashboard.cpp b/esphome/bambu-display/test_dashboard.cpp index 80dc8ce..bc0f854 100644 --- a/esphome/bambu-display/test_dashboard.cpp +++ b/esphome/bambu-display/test_dashboard.cpp @@ -13,13 +13,18 @@ int main() { assert(remaining(INFINITY, "h") == "--"); assert(number(NAN) == "--"); assert(temperature(219, 220, "°C") == "219 / 220 °C"); - assert(filament_color("#60DE9AFF") == GREEN); - assert(filament_color("60de9a") == GREEN); + assert(filament_color("#00FF00FF") == GREEN); + assert(filament_color("60de9a") == 0x60DE9A); assert(filament_color("#60DE9AZZ") == TRACK); assert(filament_color("unknown") == TRACK); assert(gauge_value(NAN, 100) == 0); assert(gauge_value(110, 100) == 100); assert(gauge_value(-10, 100) == 0); + assert(duration_seconds(1.75f, "h") == 6300); + assert(duration_seconds(105, "min") == 6300); + assert(duration_seconds(NAN, "h") == -1); + assert(duration_seconds(1, "") == -1); + assert(std::abs(celsius(392, "°F") - 200) < 0.01f); Snapshot data; data.online = "on"; diff --git a/esphome/bambu-display/test_generate.py b/esphome/bambu-display/test_generate.py index 822b82b..2d345fc 100644 --- a/esphome/bambu-display/test_generate.py +++ b/esphome/bambu-display/test_generate.py @@ -26,7 +26,7 @@ class FleetTests(unittest.TestCase): extra.update(id=f'printer_{index}', entity_prefix=f'new_printer_{index}') self.printers.append(extra) package = generate(self.printers) - self.assertEqual(len(package['lvgl']['pages']), 7) + self.assertEqual(len([page for page in package['lvgl']['pages'] if not page.get('skip')]), 7) self.assertEqual(len(package['script']), 7) subscriptions = {entry['id']: entry['entity_id'] for entry in package['sensor']} self.assertEqual(subscriptions['printer_7_progress'], 'sensor.new_printer_7_print_progress') @@ -62,6 +62,31 @@ class FleetTests(unittest.TestCase): self.assertLessEqual(props.get('x', 0) + props.get('width', 0), 800) self.assertLessEqual(props.get('y', 0) + props.get('height', 0), 480) + def test_rgb565_primaries_reach_the_correct_panel_bits(self): + # mipi_rgb emits named RGB data pins with bytes exchanged, then copies + # LVGL RGB565 bytes straight into the ESP32 little-endian framebuffer. + # Exercise red, green, blue and combined primaries through that path. + class Loader(yaml.SafeLoader): + pass + for tag in ('!secret', '!include'): + Loader.add_constructor(tag, lambda loader, node: loader.construct_scalar(node)) + config = yaml.load((HERE.parent / 'bambu-printer-display.yaml').read_text(), Loader=Loader) + display = config['display'][0] + pins = display['data_pins'] + natural = pins['blue'] + pins['green'] + pins['red'] + driver = natural[8:] + natural[:8] + order = {'big_endian': 'big', 'little_endian': 'little'}[config['lvgl']['byte_order']] + for color in (0xF800, 0x07E0, 0x001F, 0xFFFF, 0x07FF, 0xF81F): + memory_word = int.from_bytes(color.to_bytes(2, order), 'little') + panel_word = sum(((memory_word >> i) & 1) << natural.index(pin) + for i, pin in enumerate(driver)) + self.assertEqual(panel_word, color, f'RGB565 color {color:#06x} is wired incorrectly') + + def test_diagnostic_color_page_is_skipped_during_normal_navigation(self): + package = generate(self.printers) + page = next(page for page in package['lvgl']['pages'] if page['id'] == 'color_test_page') + self.assertTrue(page['skip']) + if __name__ == '__main__': unittest.main() diff --git a/esphome/bambu-printer-display.yaml b/esphome/bambu-printer-display.yaml index b34030b..46f51fe 100644 --- a/esphome/bambu-printer-display.yaml +++ b/esphome/bambu-printer-display.yaml @@ -57,7 +57,9 @@ display: model: RPI dimensions: 800x480 color_order: RGB - byte_order: little_endian + # Named RGB data_pins are byte-swapped by mipi_rgb's pin mapping. + # Send big-endian RGB565 pixels to match that wiring transformation. + byte_order: big_endian de_pin: GPIO40 hsync_pin: GPIO39 vsync_pin: GPIO41 @@ -99,6 +101,11 @@ light: restore_mode: ALWAYS_ON default_transition_length: 0s +time: + - platform: homeassistant + id: ha_time + timezone: America/New_York + packages: fleet: !include bambu-display/generated.yaml @@ -108,7 +115,7 @@ lvgl: touchscreens: [panel_touch] buffer_size: 12% color_depth: 16 - byte_order: little_endian - bg_color: 0x0D131B - text_color: 0xEDF3F7 + byte_order: big_endian # Must match mipi_rgb's named RGB pin mapping above. + bg_color: 0x000000 + text_color: 0xEEEEEE default_font: montserrat_18