Skip to content

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 05 Jun 13:39
f344c6d

MM1-BLACK v0.7.0

Portrait UI, paginated POINTS table, stable large CSV load, and capture beyond 100 points with SD spill.

Added

  • Paginated POINTS (#14): 20 rows per page, ‹ › controls, counter N pts · page X/Y (or N+100 pts with SD spill).
  • Async CSV load: large SD files without blocking the LVGL UI; total point count while loading.
  • Capture beyond 100 points: with SD inserted, oldest point spills to file automatically; SAVE appends when spill data exists.
  • Lightweight table: fixed 21-row grid (header + 20); cell text instead of draw callbacks — lower heap use.
  • Portrait splash 320×480 (tools/gen_mira_splash.py --portrait).

Changed

  • Portrait layout R6 (#18): TFT_ROTATION=0, custom tab bars on main screen, SETUP sub-tabs Bright → Cal → BT → About, dark theme on bars.
  • About: product version via FW_VERSION (no build date in About).
  • POINTS UI: columns D(m) / Azm / Inc; DEL / CLR / SAVE / TX bar aligned to theme; WiFi removed from primary UX.

Fixed

  • Reboot when changing page, loading CSV, or opening an empty file (no dynamic set_row_cnt or DRAW_PART_END draw in LVGL callbacks).
  • Freeze with 77+ table rows (48 KB LVGL heap exhaustion).
  • Capture button: checks table full before laser measurement; without SD shows "Full — insert SD"; with SD continues past 100 points.
  • ~29 kB CSV load: non-blocking read in loop(), readBytesUntil, EOF fix for BLE/TX stream.

Install

  1. Open Install MM1-BLACK in Chrome or Edge.
  2. Select v0.7.0.
  3. Use 115200 baud (recommended for CH340 / Web Serial). Do not unplug USB during flash.

Assets: MM1-BLACK-denky32-v0.7.0.bin + .sha256

Full changelog: CHANGELOG.md