Commit Graph

53 Commits

Author SHA1 Message Date
yuquanjun bb6d9ae7f9 Release 0.2.7: refresh rhythm 1.bin pack with fixed BIN3 layout checks.
Update pack/publish to enforce 41KB song limit, verify 1/2/3.bin at fixed addresses, and emit .res aliases for the tone and ALL extflash images.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 12:17:42 +08:00
yuquanjun 99f7ed3e5a Pin BIN3 to fixed 0xA71AC and reject packs where 2.bin drift shifts it.
Variable 2.bin length previously moved 3.bin; firmware still read 0xA71AC and saw zeros. Pack now pads to the fixed slot and publish verifies DAB headers before shipping ALL.res.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 11:47:15 +08:00
yuquanjun 92e5e32de3 Diagnose BIN3 LoadPreset failures and add flash bin3 tooling.
Log Flash magic on load failure, expose RTT flash bin3, and document the 0903 pack offset for the universal bank.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 11:32:40 +08:00
yuquanjun f1f9520637 Fix settings BT/restore icons and soft-off BLE protocol plumbing.
Point system-settings rows at the correct Flash icons, keep Main/UI alive across soft-off, and expose git build id for 01 0C with matching BLE tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 07:03:52 +08:00
yuquanjun 57448b3da8 Harden BLE protocol test for Windows pairing and flaky notifies.
Default --unpair on Windows, probe/reconnect on first timeout, resync FrameParser on duplicate F0, and retry query once.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 22:14:18 +08:00
yuquanjun 0aedb45e6e Make BLE SysEx UID and fw-code MIDI-safe for BLE-MIDI.
Encode 01 07 UID as hex ASCII and use 01 0F (keep 01 FF alias) so high-bit bytes are not dropped as timestamps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 22:02:06 +08:00
yuquanjun 7b08f5e098 Start BLE UART4 App protocol receive on power-on.
TaskBTRecvThread previously started only after mode select, so GATT SysEx never reached the parser until then; verified BLE-MIDI 01 01 now replies with GATT notify.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 21:46:14 +08:00
yuquanjun f762348883 Merge branch 'main' into develop 2026-09-08 18:15:45 +08:00
yuquanjun 7138123201 Release 0.2.6: refresh HKTK 2.bin from Doc/音色文件/0908/2ss_2.bin.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 18:09:15 +08:00
yuquanjun 8febbd7742 Align BLE SysEx style/transpose replies with Doc protocol and add BLE test harness.
Drop ineffective Dream BT rename SysEx; fix 03 04 boot/list/total and 03 07 read length.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 18:05:04 +08:00
yuquanjun 725ac495ba Merge main: bring Release 0.2.5 (2ss.bin tone pack) into develop.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 10:18:06 +08:00
yuquanjun f1e4177e92 Release 0.2.5: refresh HKTK 2.bin from Doc/音色文件/0908/2ss.bin.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 10:13:06 +08:00
yuquanjun 01bc2a592c Implement full BLE SysEx protocol handlers and app-sim test.
Wire missing 01/02/03/05 commands, fix chord-map reply and section/End dispatch, and add UART4 protocol regression script.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 10:00:55 +08:00
yuquanjun a6259b5fca Release 0.2.4: package Boot with UI0902 flash-mode screen.
EOF

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 05:51:58 +08:00
yuquanjun 4544f8706a Release 0.2.3: fix local song HKTK load/play and keep tone map logs.
Use 41KB preset buffer with compressed 2.bin, expert/normal StartWithNote path, Flash Map address logs, and ship flash-mode/hub assets plus flash helpers.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 21:48:54 +08:00
yuquanjun 50e847e2ee Use 0907 hub icons and full-screen flash-mode artwork.
Replace settings-hub mixer/gear bitmaps, and show Boot IAP screen from UI0902_FLASH_MODE in external Flash.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 11:16:45 +08:00
yuquanjun 23c2dee80f Release 0.2.2: package ALL extflash only and bump firmware version.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 09:29:01 +08:00
yuquanjun 0a0bd9b3ea Fix system-settings icon dark fill on focus blue rows.
Treat baked #242B3A as transparent when drawing icons, and limit #IV octave drop to keys 10-12.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-07 09:28:35 +08:00
yuquanjun a02379104d Fix system-settings icons, version dots, and auto-off centering.
Use correct BT/restore glyphs and triangle steppers, put version periods on the baseline, and center auto-off minutes between the triangles.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 20:56:11 +08:00
yuquanjun 49af730f91 Release 0.2.1: persist mixer volume across power cycles.
Sync faders on shutdown and re-apply LoadConfig after DSP boot so
saved mixer levels and master pot stay consistent after power-off.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 12:29:42 +08:00
yuquanjun c5428ad81f Fix incomplete status-bar battery outline.
Keep L/R walls when generating the outline asset, tighten fill to the cavity, and nudge the icon up so the bottom edge is not clipped.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 07:57:55 +08:00
yuquanjun db03ac501c Fix broken size-16 ASCII glyphs used by transpose key names.
Regenerate ascii_1608 from LiberationSans and lower binarization threshold so E/A/B strokes stay complete when switching keys.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 07:12:41 +08:00
yuquanjun d654581f4d Fix mixer labels order, vivid track colors, and solid blue knobs.
Map 伴奏/弦/麦/麦混响 to correct assets, boost track saturation, fill knob disks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 21:30:59 +08:00
yuquanjun f0c60a0024 Draw charge percent with MiSans glyphs for aligned 50%.
Replace bitmap-font % with shared-baseline Semibold digit bitmaps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 21:11:28 +08:00
yuquanjun 2bca0c5673 Add full-screen 0904 charge art to UI0902 resource pack.
Charge page draws UI0902_CHARGE_SCREEN instead of legacy 160x190 Charg.bin; pack/gen/publish paths keep the asset in sync.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 06:27:12 +08:00
yuquanjun 8c3c14ccf8 Drive local song titles from CSV and add 海阔天空 glyphs.
UI shows LocalSongNames instead of bare indices; pack regenerates the header; WQY font gains the four display characters.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 22:15:46 +08:00
yuquanjun f179a46c5d Fix teacher accomp issues and add ExtFlash chip-erase helper.
Pick fires on downstroke; #IV drops an octave; local songs use 2.bin; transpose updates notes without restart; intro starts on key I; boot string volume/PC corrected.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 17:06:02 +08:00
yuquanjun c724ddd2c9 Align settings UI to 0904 and fix WQY glyph packing.
Settings hub/mixer/system/restore match 0904 layouts; regenerate Chinese bitmaps without shrinking native 16px cells so strokes stay continuous.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 14:43:32 +08:00
yuquanjun d4973f633e Include UI0902 bitmaps in release ExtFlash package.
Colleague boards showed garbled mode-select when only the tone .res was flashed; ship combined tone+UI0902 image for full external Flash programming.
2026-09-04 12:02:55 +08:00
yuquanjun c05301d8b9 Map tone Flash banks for pack 0903 and bump firmware to 0.2.0.
Point normal/expert/universal ADDRESS at 1.bin/3.bin bases, add ExtFlash_Tone_Addr.h plus pack/publish helpers for paired MCU+.res releases.
2026-09-04 11:12:22 +08:00
yuquanjun 8f0d0a3a52 Fix status-bar battery to match mode.png with intact percent.
Replace the mistaken fill bitmap that embedded "80%" text with a solid level bar, right-align size-9 "N%" with reserved 100% width, and refresh Free/Expert battery updates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 08:50:00 +08:00
yuquanjun e56f480135 Tune free-mode card spacing and restore readable Latin glyphs.
Move KEY/BPM values and chevrons toward mode.png rhythm, drop musical-flat b and digit dilation so Db and body digits stay complete without looking bold.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 08:28:56 +08:00
yuquanjun 9516586a9c Widen size-16 Latin cells to 10px for Cb/101.
Liberation C is 10px wide; packing into 8px crushed hero values. Keep ascii_1608 symbol with 32-byte glyphs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 07:53:05 +08:00
yuquanjun 65875d5e9c Tighten glyph packing margins and widen digit tracking.
Regenerate size 13/16 WQY/Liberation cells with edge margin and a fuller flat for Cb, and bump ASCII advance so chord numbers match mode.png spacing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-04 07:47:51 +08:00
yuquanjun b36c9c785e Fix WQY Latin metrics and stop duplicate timbre text.
Use Liberation Sans for KEY/BPM/Db with wider ASCII cells, redraw KEY/BPM after value refresh, and reuse the centered timbre layout on refresh so a second line no longer appears.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 19:33:36 +08:00
yuquanjun 0d906e9e9f checkpoint: MiSans Semibold + card textboxes before WQY MicroHei test.
Save current UI textbox layout and font regen so we can restore with
git reset --hard checkpoint/misans-before-wqy if MicroHei trial fails.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 17:59:58 +08:00
yuquanjun 89e7401955 Align mode pages to 0819 font sizes and four-key bottom nav.
Apply label/body/hero hierarchy (11/13/16), enlarge section digits to 13, and switch the bottom bar to 万能|普通|专业|设置 while keeping touch/key logic.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 11:58:08 +08:00
yuquanjun 65f38bb5a3 Fix TAB missing glyphs and tighten mode-page typography.
Use size-12 tabs with full 节/类/型/地/目 coverage, denser MiSans bitmaps, dark row chrome, and safer section-label draw order; skip ASCII regen by default.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 09:19:29 +08:00
yuquanjun c8e32958a7 Restore 演奏段落 and reduce Chinese glyph clipping.
Widen TAB text margins at 11px, regenerate section/timbre labels, and regenerate MiSans bitmaps with padding so strokes are not cut.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-03 08:28:30 +08:00
yuquanjun 2f84c3bb9b Add 0902 full-screen boot logo to external UI resource pack.
Draw POWER_ON from UI0902_BOOT_LOGO, add ui boot RTT preview command, and harden RTT flash ACK pacing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 16:57:36 +08:00
yuquanjun 41052d334d Align mode-select and status bar with 0902/0819 design.
Fill three mode rows to the screen bottom without a nav bar, and fix the status bar to one volume meter, centered Bluetooth, and battery percentage.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 16:23:18 +08:00
yuquanjun e62c2270af Fix mode-row asset pairing and add RTT external UI flash path.
- Map 0902 rows as 16/19 universal, 17/20 normal, 18/21 expert
- Add flash ui0902 RTT writer; avoid LCD dump stealing down bytes
- Restore UI_ReturnToModeSelect; shrink flash-trans RAM use
- Disable mode-select debug touch crosses

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 15:24:49 +08:00
yuquanjun f8675e3529 Reskin UI with 0902 design assets and 3-icon bottom navigation.
- Mode select page draws 222x84 row bitmaps from external flash
- Mixer page uses flash track/knob images with picture labels
- Settings and restore pages re-laid out with 0902 row style
- New status bar icons and battery outline+clip fill rendering
- Add LCD_WR_PIC_ClipX and LCD_WR_PIC_FROM_FLASH_Trans draw APIs
- Replace 4-tab bar with GUI_NAV_BAR 3-icon bottom navigation
- Swap 0831 assets for UI0902 in the IAR project file

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-02 13:37:25 +08:00
yuquanjun 42534a28b8 Add RTT touch diagnostics: tp status/live commands and live event monitor.
Harden reset/recover when RTT is missing, and stream touch/UI events only on press for field debugging.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 21:59:13 +08:00
yuquanjun 956eeee1a5 Add RTT sys reset command and remote reboot script with CPU resume.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 12:31:53 +08:00
yuquanjun f6ae34892f Document verified J-Link log dump workflow and harden flash script.
Kill stale cspybat before download; note successful RTT log export sample in LOG_README.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 11:45:36 +08:00
yuquanjun 7fea921727 Add J-Link RTT logging module with RAM ring buffer and dump tool.
Log boot/power/touch/key/UI/NVM events; export via rtt_log_dump.py for field diagnostics.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 11:24:10 +08:00
yuquanjun b996c8876e Use designer 0831 PNG bitmaps for mode-select labels.
Replace on-device Chinese glyphs with MiSans icon+text row assets so the trial format matches the designer's export.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 09:41:13 +08:00
yuquanjun 68e3a37883 Fix mode-select layout/battery margins and enable reliable post-flash boot.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 08:20:24 +08:00
yuquanjun 27cf30cbe4 Align UI focus colors with 0819 spec and fix J-Link flash script usage.
Only the focused control uses the blue gradient; unfocused widgets use the dark normal background. Drop invalid Commander commands from IAR jlink_script_file to stop V5.10m parse popups.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 06:10:13 +08:00