Skip to content

EmbeddedDisplay Studio 0.0.8

Choose a tag to compare

@Hitheshkaranth Hitheshkaranth released this 16 Sep 10:55
· 398 commits to main since this release

Automotive widgets, a canvas that shows the real thing, and deploy keys

Automotive widget set (new palette category)

ShClusterGauge, ShGearIndicator, ShAutoLevel, ShAutoReadout, ShDriveMode, ShTelltale, ShIconTile, ShTripInfo, ShSegmentBar, ShVehicleStatus — modelled on a classic instrument cluster and an EV infotainment screen. Every bindable property is proven to change the picture and every control's signal reaches the bus (tests/test_automotive_contract.py). 47 Tabler cluster icons are vendored for the QML kit.

Design presets

A brief that reads like a cluster or an EV dashboard gets a style guide and a hand-built exemplar appended to the AI prompt; automotive_cluster.edsui and ev_infotainment.edsui also open as projects. python -m tools.hmi_deployer.design_presets --list.

Studio

  • Live QML canvas — the Designer draws each widget with its own QML (rendered offscreen, cached, at the canvas zoom) instead of a painted sketch. Toggle "Live QML" next to Grid / Snap.
  • Live Preview window — Preview runs the design in its own window at the panel's resolution, on the Studio's tag engine, so buttons and selectors can be operated. Also "Open Live Preview" beside Deploy.
  • Resize from any of the eight handles.
  • Disconnect beside Connect (Cancel while connecting).
  • Export key… / Import key… — a .hmikey bundle carries the deploy key and the panel address to another user; import installs it with owner-only permissions and fills the connection fields. CLI: python -m tools.hmi_deployer.deploy_key.

Fixes

  • The generator never emits a property or enum the widget does not declare; the AI importer maps enum spellings onto the real choices. (An AI-invented active on a status dot used to make hmi-gui fail and the deploy roll back.)
  • A bound text property falls back to "", not 0.
  • Panel: the GUI loader finds the shared validator in the panel layout; the provisioner ships modbus.py; 32-bit Modbus tags read both registers; assert in the daemon replaced by a real error.
  • Designer: page names may carry punctuation again; binding multiplier/offset are coerced to numbers; undo stack capped; preview child processes are reaped.
  • Tests no longer overwrite the user's "last bundle" setting.

In pictures

Designer — the automotive cluster preset, every widget drawn by its own QML, the gauge selected with its eight resize handles

Designer

Live Preview window — the design at the panel's resolution on the Studio's tag engine

Live Preview

Display Console — connected to the panel: Disconnect, Export / Import key, readiness, Deploy, Open Live Preview

Display Console

AI Design — the "Automotive cluster" example brief and the design presets behind it

AI Design

How a deploy key travels

Key sharing

Full Changelog: v0.0.7...v0.0.8