Skip to content

Post-bring-up: bug & polish backlog #82

Description

@clabeuhtegrite

Captured from on-device use after the bring-up (v0.29.10). Roughly priority-ordered. No local builds — fixes go via CI + a release tag + OTA; serial (cat -u /dev/cu.usbmodem*) is the on-device debug channel.

Functional bugs

  • Printer state shows ? for everything except idle — the state-string -> PrinterState map only recognises "idle" on this Bambuddy version. Capture the real strings from /printers/{id}/status (serial) and extend the parser (net/bambuddy_client.cpp) + state_name (screens/theme.cpp).
  • Queue always emptyGET /api/v1/queue returns 404 on this Bambuddy version (confirmed from a laptop). Find the current endpoint/shape and update bambuddy_client.cpp (POLL_QUEUE).
  • AMS dry start/stop does nothing — the drying-control POST fails silently; capture the request + Bambuddy's response over serial to find the right endpoint/payload.
  • Camera image distorted — the JPEG decode/scale (TJpgDec) renders wrong; check decode dimensions / colour order / the frame format this Bambuddy serves.

UI / UX

  • Boot-splash spinner stutters during "Connecting to Wi-Fi" + the OTA check, then spins smoothly on "Connecting to Bambuddy". It only animates when lv_timer_handler runs — sparse in the Wi-Fi loop, frozen during the single blocking OTA-check call. Fix: pump LVGL ~16 ms in the Wi-Fi loop; for the OTA check, pump from its callback or run it after the UI task starts (or use a non-animated indicator).
  • Captive-portal checkboxes wrap below their label (and the next field butts up after) — confusing. Fix the injected checkbox HTML/CSS so label + input sit on one line, in start_provisioning().
  • Live nozzle temp — multi-nozzle support: label left/right on models with >1 nozzle; the temp graph should plot all nozzles AND show axis/value labels (currently bare curves). Needs a multi-nozzle data model + graph legend.
  • History range configurable — currently fixed at last 30 days; add a setting (7 / 30 / all).
  • Timezone: accept IANA names (e.g. Europe/Paris) instead of a raw POSIX TZ — embed a small IANA->POSIX lookup or a dropdown (ESP needs POSIX for configTzTime).
  • Prettier captive-portal config page (flash permitting) — nicer styling/layout.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions