Commit Graph

42 Commits

Author SHA1 Message Date
yuquanjun 58e8b3dbc7 fix(ui): step the battery percentage by 5 so it cannot cliff
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:15:03 +08:00
yuquanjun 3220602f89 fix(pwr): show the charge page, then blank it after 10s below 6.8V
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-27 18:15:03 +08:00
yuquanjun 8bf68e256d fix(pwr): shut down at 6.8V and light the charge page only above it
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-26 15:06:36 +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 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 80faaa4f9f fix(pwr): treat all play/UI inputs as auto-off activity
Centralize idle-timer reset on touch/volume/tap/transpose in UI task, and on pick, fretboard, side keys, round keys, and string NoteOn. Pause auto power-off countdown while accompaniment is playing.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 20:48:18 +08:00
yuquanjun 67a5fe5d60 fix(band): revert soft-stop; ignore round/side keys on mode select
Restore hard AutoBandTop1_Stop and drop eaten-start/followup tick-gate.
Keep API stubs for callers. Block TM1617 round keys and reinforce side-key/BLE gates while InModeFlag is false.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-24 20:08:27 +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 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 6d01d2cbb1 fix(mixer): ignore section keys and lock the grabbed fader
TM1617 keys injected fake touches at y=255 which slammed mixer sliders to 1. Lock the pressed fader until release and shrink overlapping hit boxes.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-23 07:23:08 +08:00
yuquanjun d00f570e2f fix(band): soft-stop on stop key so immediate pick can start
Stop key no longer calls AutoBandTop1_Stop (library eats the next Start). Soft mute + tick gate runs on MainTask; cold start skips redundant Stop when already clean.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-22 17:42:03 +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 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 3274c7d4fb fix(play): default pick/preamble to current-key I chord after boot
Apply Accomp_ApplyDefaultIChord before SyncStart on preamble, on soft power-on/mode enter/nav switch, and on pick fallback. Reset TM1629 key edge state so soft-off residual key_last cannot stick a prior fret.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 16:18:14 +08:00
yuquanjun 125eb00aa3 fix(power): prevent charge-boot long-press from auto power-off
Consume the same power-key hold used for soft-off charge boot before setting powon, and ignore stale POWOFF_CHARG after power-on so mode select stays on screen.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-16 15:10:34 +08:00
yuquanjun 4c6e2122ed fix: normal rhythm pick via piece; ACK UI before LCD; flash-busy power guard
Require fretboard in normal mode per manual; use SetPiecePlayMode for 1.bin. ACK ui boot/charge before full-screen draw, add RTT flash all and tone pick free, and skip soft-off while ExtFlash transfer is busy.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 21:49:16 +08:00
yuquanjun d06e44bcb3 fix: keep power key alive on hang; refuse play when tone pack missing
TMR7 high-prio watchdog and fault-loop emergency cut/reset so soft-off still works if the main loop or AutoBand ISR dies; skip start when preset load fails.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 20:19:45 +08:00
yuquanjun 6da7d4d627 test: stabilize HIL suites — inter-suite reset, async tm1617 inject, ACK-first
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 16:16:11 +08:00
yuquanjun a495717883 test: unified K1 HIL harness + RTT inject hooks (tm1617/adc/bin2/sticky)
tools/k1_harness: one CLI over existing COM/BLE/RTT scripts covering
App SysEx 01-06, BLE smoke, TM1629/TM1617 key inject, 1/2/3.bin pack
checks with pick/outro regression, and UI nav (log status/TAP/DUMP).
Unified PASS/FAIL/SKIP/SENT markdown report to Doc/reports.

firmware hooks in app_log.c: 'tm1617 key N', 'adc key N on|off',
'tone bin2 [idx]', 'chord key N hold' (sticky inject survives physical
idle scan so normal-mode pick tests can hold a chord).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-14 15:05:17 +08:00
yuquanjun 1cf6562236 Add bass/chord register mapping with RTT inject and bin1/3 probes.
Intercept AutoBand MIDI by channel (bass ch8, drum ch9), add chord-key RTT cmds, and ship scripts to verify 1.bin/3.bin pitch rules on device.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-13 21:21:11 +08:00
yuquanjun 91b270d856 Revert "Lower accompaniment by one octave for #IV and V-VII chords."
This reverts commit 439ccf439d.
2026-09-11 14:59:23 +08:00
yuquanjun 439ccf439d Lower accompaniment by one octave for #IV and V-VII chords.
AutoBand ignores input octave, so shift engine MIDI output by -12 for those chords (except drums) to keep the range from low #IV up to natural IV.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 22:08:09 +08:00
yuquanjun 4aad989263 Reapply master volume at boot/mode-entry/play-start and sync volume bar on settings hub.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 18:58:24 +08:00
yuquanjun 59c11f3f93 Fix BT recv stack smash and harden pitch/chord SysEx paths.
Enlarge BT recv stack, move large handlers/log buffers off the stack, clamp key indexes, and yield in W25Q busy-wait so BLE protocol tests stay stable.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-10 06:51:32 +08:00
yuquanjun cd21e4e45e Always enable loop on universal-mode pick so accompaniment can play.
Without SetLoopMode the piece path often produced no audible output when the chord pad was not held.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 11:35:14 +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 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 ee900b5657 Sync master volume from EC pot on every page and at boot.
Always Send_volume in MainTask, re-apply after DSP settle, and sync vol_last so UI bar matches Dream gain.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-06 07:15:04 +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 bc41d27730 Fix charge-screen battery percent clip to match 0904 design.
Draw 16px glyphs at y=269 so the full 50% matches the design bbox.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 20:48:52 +08:00
yuquanjun 0e57fa452f Harden charge UI draw when ExtFlash asset missing.
Fill dark background first, overlay % at size 24, and fall back if charge bitmap is erased.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 20:39:11 +08:00
yuquanjun d960d88147 Show full-screen charge UI when USB plugs in while soft-off.
Avoid auto Logo boot on USB reset; enter charge page instead of mode select.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-05 19:58:42 +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 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 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 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 d48e3fa63a Stabilize non-Mixer click handling and page-change touch suppress.
Report clicks on release for navigation pages, suppress residual presses after UI switch, and log touch task edges.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 21:59:12 +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 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 b8eaf2c808 Fix mode-select focus and touch pipeline; add return-to-home gesture.
Preserve focus across redraws, improve XPT2046 sampling, and log touch coords via RTT for ongoing debug.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-31 11:13:01 +08:00
yuquanjun 37242f108a Align status bar volume icon with UI spec.
Replace the old volume bars with 5 rounded-top bars using a left-to-right brightness gradient, synced from the ADC volume pot.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-28 10:07:48 +08:00
yuquanjun 3302c92f5a Initial commit: YNGJ-GT1-M K1电吉他 AT32F403ARCT7 嵌入式源码
包含 IAR 工程、Bootloader、RT-Thread、应用层及外设驱动源码。

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-26 07:26:58 +08:00