Skip to content

Improve Display-Modbus init progress#82

Merged
dosordie merged 1 commit into
workfrom
codex/fortschrittsbalken-fur-display-modbus-verbessern
Jun 29, 2026
Merged

Improve Display-Modbus init progress#82
dosordie merged 1 commit into
workfrom
codex/fortschrittsbalken-fur-display-modbus-verbessern

Conversation

@dosordie

Copy link
Copy Markdown
Owner

Motivation

  • The Display-Modbus "Alle Register abfragen" flow is a multi-step, interactive sequence (trigger bits, wait for response, evaluate, next step) that was not represented accurately in the main init progress UI.
  • The goal is to show the real Display-specific sequence in the existing progress bar/status label without changing communication, parsing, capture or functional Display logic.

Description

  • Added lightweight progress callbacks in the Display init controller: DisplayKnownReadController._progress, _busy, _finished, _failed and wired them at key points (prepared, worker start, trigger/send, wait, response, retry rounds, timeouts) in workers/display_worker.py to report Display-Modbus steps.
  • Exposed progress handlers on the main window: display_init_progress_changed, display_init_progress_busy, display_init_progress_finished, display_init_progress_failed and adjusted _init_read_progress_counts / _update_init_read_progress in foxair_phnix_control.py so the existing init_progress_bar and status_label reflect Display-Modbus deterministic steps and busy/indeterminate waiting (uses setRange(0,0) for busy phases and switches back to deterministic ranges when available).
  • Added simple progress bookkeeping fields display_known_init_progress_done and display_known_init_progress_total and incrementing logic so the progress bar advances only on real events (trigger sent, response received, block processed, retries), not timers.
  • Propagated Display write step status into relevant editor dialogs by adding _notify_timer_sg_write_status and calling it from the Display timer/SG write flow (_display_timer_batch_send_current_step, _display_timer_batch_check_step_ack) so editor status_labels show step sent / ACK / 0BC3-confirm / optional-ACK warning / failure, without changing write semantics.
  • All changes are UI/progress/status wiring only; no protocol, parser, capture, cloud, Warmlink, firmware-logging, or write semantics were altered.

Testing

  • Ran python -m compileall . and compilation succeeded.
  • Ran PYTHONPATH=. pytest and automated test suite passed: 16 passed, 2 skipped.
  • No hardware/manual smoke tests were run in this environment (manual Display-Modbus UI smoke test recommended on device: progress bar visible, statuses for trigger/wait/response/processing/finish and no busy hang).

Codex Task

@dosordie dosordie merged commit 388bb17 into work Jun 29, 2026
1 check passed
@dosordie dosordie deleted the codex/fortschrittsbalken-fur-display-modbus-verbessern branch July 9, 2026 07:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant