Commit Graph

117 Commits

Author SHA1 Message Date
yuquanjun b9bf460232 chore(release): bump firmware to 0.2.54
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-15 06:48:50 +08:00
yuquanjun 6166bb8346 chore(release): bump firmware to 0.2.53
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-14 11:31:15 +08:00
yuquanjun 9b9aaeaadf fix(ui): keep the boot logo until the light show finishes
Mode select was covering the logo before the side lights played. Firmware is 0.2.52.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-10 18:37:42 +08:00
yuquanjun a8bf9a3a91 fix(power): skip boot lights and sound-board init below 6.8V
A protected pack only trickle-charges, so Dream, the 12V rail, and the amp stay off until the pack is above 6.8V. Firmware is 0.2.51.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-10 17:58:02 +08:00
yuquanjun bd40b076b7 chore(release): bump firmware to 0.2.48
Pick is start-only in universal mode, and the key-board LEDs recover after the board is reinserted.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 17:33:28 +08:00
yuquanjun 8c8c728752 chore(release): bump firmware to 0.2.47
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 16:57:17 +08:00
yuquanjun d07b14c29d fix(midi): raise Em, F, G, and Am plucked string voicings
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 16:55:36 +08:00
yuquanjun 53c21eee50 chore(release): pack tone resources 1008 and bump to 0.2.46
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-08 20:45:20 +08:00
yuquanjun e0860dd375 chore(release): bump firmware to 0.2.45
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-08 16:29:30 +08:00
yuquanjun 75ee80722c fix(midi): map concert steel to Bank1 program 24
Bump firmware to 0.2.44 so slot 1 stays Bank1 program 24 and slot 2 stays program 25. Rhythm presets no longer replace the string voice on channel 0.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-08 16:22:42 +08:00
yuquanjun 11ddab46f5 fix(ui): boot string tone as concert steel guitar
Show item 1 (Bank1 program 24, catalog tone 25) after power-on, and bump firmware to 0.2.43.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-08 12:15:08 +08:00
yuquanjun 3f1c1c74ba fix(ui): boot string tone to Bank1 program 25
Keep the last rhythm across soft power cycles, and bump firmware to 0.2.42.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-08 10:59:59 +08:00
yuquanjun 233dd0de69 chore(release): bump firmware to 0.2.41
Ship the new AutoBand Stop timeline-jump library as MCU 0.2.41.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-06 22:24:51 +08:00
yuquanjun c007b4e40d feat(tone): ship the 1002 rhythm pack as firmware 0.2.40
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-02 13:06:35 +08:00
yuquanjun 459f73d8fe fix(ui): align transpose note letters on one baseline
Redraw the 16px ASCII glyphs so note names and the flat share one baseline.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-29 17:39:10 +08:00
yuquanjun 296a1b5420 feat(tone): ship the 0928 rhythm pack with Hall2 reverb and PEQ
Load the updated 1.bin and apply the sound-designer Hall2 and four-band EQ at startup. Version 0.2.39.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 17:53:06 +08:00
yuquanjun cd4f1cd902 chore(release): bump firmware to 0.2.38
Ship the restored flat amplifier EQ together with the 6.8V-to-10% battery gauge.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 17:16:58 +08:00
yuquanjun e0b91d17b4 chore(release): bump firmware to 0.2.37
Mark the boot mute change so the release package matches the speaker pop fix.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 10:11:48 +08:00
yuquanjun 29507014f5 chore(release): bump firmware to 0.2.36
Tag the single amplifier init so the shipped version matches the string-tone fix.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-28 09:53:20 +08:00
yuquanjun cde5a80a3d feat(ui): match system-settings cards and type size to the hub
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 15:06:35 +08:00
yuquanjun 03062543e4 fix(ui): fill the charging battery to the live percentage
The charging glyph kept a fixed yellow bar. Clear that bar from the icon and paint the cavity from the current percent, in the same yellow as the bolt.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 14:19:36 +08:00
yuquanjun 6f19486b16 fix(boot): show the burn-mode title in white
The source picture painted the glyphs in the page background color, so the screen stayed black. Draw those strokes in white when the external image has no light pixels.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 13:11:17 +08:00
yuquanjun 968f8ae1ec feat(ui): draw system settings with MiSans bitmaps
Match the requirement screen using the settings-hub method, and keep the glyphs 1-bit so the image still fits in application flash.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 12:42:11 +08:00
yuquanjun e6de959366 fix(pwr): keep the pack above 6.8V and unmute the amp after 12V is up
Show the real battery percent, shut down at 6.8V even while Type-C is connected, and leave the charge screen dark so it does not drain the pack. Initialize the amplifier only after the 12V rail has settled.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 07:35:09 +08:00
yuquanjun 89a3e5f95f fix(pwr): reach mode select before boot LED show while charging
Bump firmware to 0.2.31. Skip the color LED sequence on USB power-on so a depleted pack can leave the logo screen and charge normally.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-25 21:04:51 +08:00
yuquanjun 1cc4d400ef fix(usb): show USB update and enter the loader after confirm
Bump firmware to 0.2.30. The 11px font now has the update glyphs, and the flashed boot image stays in USB programming when that mode is saved.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-25 20:33:26 +08:00
yuquanjun 4063bab4b5 fix(ui): align transpose and tempo controls with the 0924 mockup
Match the card box to the reference, put the value on the same center line as the arrow and plus-minus chips, and use MiSans for the 16px digits.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-25 11:16:20 +08:00
yuquanjun ea60c1fb62 feat(ui): apply 0924 layout with language and USB mode
Remove divider lines, add language and USB-update confirm pages, and store both in NVM so boot can enter IAP.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-25 07:39:32 +08:00
yuquanjun 84b6e4f15a chore: bump firmware to 0.2.29 and refresh release pack metadata
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 20:12:56 +08:00
yuquanjun 3eba48ece1 fix(auto): stop stacking xpose -12 on III/IV chords
G-major III was collapsing B3 onto B2 after register -12 plus transpose -12.
Keep single register drop for III/IV; stack xpose only from V upward.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 16:32:18 +08:00
yuquanjun f116e17529 chore: bump firmware to 0.2.28 and refresh release pack metadata
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 08:12:26 +08:00
yuquanjun 3c102a918f feat(ui): use 0923 status-bar Bluetooth on/off icons
Replace the old 11x17 glyph and gray slash with dedicated on 13x20 and off 19x20 assets from the 0923 pack.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 06:15:10 +08:00
yuquanjun 3b0f5479ba feat(amp): BLE SysEx R/W for AD85050 CH2 EQ RAM and I2C scan
Expose 0xA0-0xAE via 07 00/01 nibble-coded frames, add RAM helpers, and host scan/test scripts.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 06:14:56 +08:00
yuquanjun 96fd815ca9 fix(band): cut intro and endings in immediately
Normal and expert modes no longer wait for the next bar before preamble, interlude, outro, and ending. Universal mode ignores those keys. Bump firmware to 0.2.22.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 08:39:39 +08:00
yuquanjun 93e633472a fix(xpose): allow neck transpose in universal after pick hold-up
Universal TM1629 path dropped keys 0-21 before BP_Transpose. Route pick-hold neck keys to transpose, add RTT pick hold inject and a HIL script.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 07:43:46 +08:00
yuquanjun 4716c87b5c release: bump firmware to 0.2.21
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 11:41:05 +08:00
yuquanjun ef41eb30fa fix(chord): song-mode LED no longer overwrites chord map (6m/Am -> AM7)
Problem2: in song mode UI shows 6m(Am) but MIDI played AM7
(E2 A2 E3 G#3 C#4 E4). Root cause: BL_Set_led wrote the LED frame's
chord code into chord_type_index_map of the group middle key
(LED_L6 -> key17), so a guidance frame carrying 0x02 (M7) turned the
Am key into AM7. Remapping on the chord page only helped until the
next LED frame.

- BL_Set_led: light LED only, drop all chord_type_index_map writes;
  chord quality is owned by map page 02 03/02 04 (BT_Chord_offset_map)
- handleReadRhythmMap / Return_Light_buff: fix type->protocol read-back
  encoding (m7->0x0A, M7->0x02, ad9->0x04, m7-5->0x0B, sus2->0x1F,
  sus4->0x1E), re-landing the 0917 verified fix
- BT_Chord_offset_map: accept dominant-7 doc code 0x0D (legacy 0x13 kept)
- tests: test_chord_map_fix.py (16/16 PASS on device),
  test_fret_positions.py, test_problem2_song_am.py (7/7 PASS:
  post-LED strum stays E2 A2 E3 A3 C4 E4)

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 11:40:51 +08:00
yuquanjun cd32b4120b release: bump firmware to 0.2.20
Low-battery shutdown below 6.2V with tip screen and 10s soft power-off; UI0902 includes LOWBAT_TIP fullscreen asset.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 17:53:30 +08:00
yuquanjun 1b1b9b196d feat(power): low-battery tip screen and auto power-off below 6.2V
Stop all sound, show UI0902 LOWBAT_TIP fullscreen, then soft-off after 10s. Skip while charging; speed up ADC sampling near empty. Pack new tip bitmap into ExtFlash UI0902 map.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 17:53:13 +08:00
yuquanjun 878f3b41f1 release: bump firmware to 0.2.19
I/II+#F overall -12 transpose mapping; free-mode keeps all fret LEDs green (no LOOP_LIGHT). Carries 0.2.18 free even-beat stop, KEY_ID wind-down, universal outro, and expert local-song continue.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 17:23:09 +08:00
yuquanjun feb084699c fix(reg): apply overall -12 for transpose >= #F on I/II too
Match 转调说明 table: C~F keep normal register; #F~B lower bass/chord by one octave for all fret degrees. III+ register fix unchanged. RTT pitch test covers I/II+#F.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 17:18:30 +08:00
yuquanjun f135027647 release: bump firmware to 0.2.18
Free-mode even-beat release stop; keep fret KEY_ID during wind-down so register octave does not jump up before stop. Also includes universal outro all-green LED and expert local-song continue after section+fret.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-21 15:52:58 +08:00
yuquanjun 56a5a253ca release: bump firmware version to 0.2.17
Include Type-C charging battery icon and BLE timbre/style UI sync fix already on develop; add RTT midi/string inject helpers for mic pitch calibration. Tone pack remains 0916_bank.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-20 07:18:44 +08:00
yuquanjun fd58637e9d feat(ui): show charging battery icon when Type-C is plugged
Replace the status-bar outline+fill with the 0918 lightning battery bitmap while charging, and fix Pre-Build git version script UTF-8 decoding on Chinese Windows.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-19 17:58:33 +08:00
yuquanjun e721c8e67c release: bump firmware version to 0.2.16
Stop accompaniment on mode/song switch; restore all-green LEDs when leaving universal; default pick/preamble to current-key I chord after soft boot.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 16:18:52 +08:00
yuquanjun ca0244d0d5 release: bump firmware version to 0.2.15
Dual MIDI bank (accomp bank0 / string bank1) + toneRes 0916_bank; keeps local-song mid-play and power-on KEY_ID fixes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 14:00:01 +08:00
yuquanjun d11d217b02 release: bump to 0.2.14 with toneRes 0916_bank
Repack ExtFlash from Doc/音色文件/0916_bank; BIN3 stays at 0xA7437 (2.bin length unchanged).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 18:32:13 +08:00
yuquanjun 6fbeaa4881 release: bump firmware version to 0.2.13
Ship expert fretboard continue for local songs and tone resource pack 0915.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 21:01:30 +08:00
yuquanjun 5f41af27e7 fix(expert): 专业模式仅按指板即可续奏下一和弦,无需再拨片
App 连机专业模式下,起奏后按亮灯指板即可继续播放:
- 本地曲目(App 和弦曲目)/段落停止时:指板键投递 MSG_ID_BP_KEY 给主任务,
  走与「指板+拨片」完全相同的 Pick_Handle 起奏路径(扫描线程内直接
  Stop+Start 会无声,主任务上下文正常),Pick_Handle 内 Return_Light_buff
  通知 App 亮下一节
- 节奏库播放中:保持说明书行为,仅 Note_On 换和弦音 + Return_Light_buff
- 去掉 Last_Tm1926D_Key 去重:相邻两节可能是同一和弦键,松手再按必须能续奏
- 新增 Band_TrackPlayTick/Band_IsPlaying:8ms 周期跟踪 AutoBand PlayTick
  判定伴奏是否进行中
- 抽出 Expert_StartWithChord 公共起奏函数,拨片/指板共用
- tools/_test_expert_fret_restart.py: 指板续奏 RTT 回归测试

HIL 验证: pitch reg OK=41 FAIL=0; packs 9/9 PASS

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 19:13:10 +08:00
yuquanjun 61caeb7407 release: bump firmware version to 0.2.12
Include autoclose 关闭 glyph fix and recent normal-pick / HIL / flash-tool work in the release tag.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 22:09:09 +08:00