Keep the last 1/2/3 fill on screen, and leave neck lights all green in normal and expert unless the app is guiding them.
Co-authored-by: Cursor <cursoragent@cursor.com>
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>
Dream power-up now overlaps the boot light show. Mode keys, the pick, and side keys stay ignored until MIDI config has been sent, so a fast tap cannot play before the board is ready.
Co-authored-by: Cursor <cursoragent@cursor.com>
Boot and song changes use the universal and rhythm BPM tables, with style 20 at 91. Factory restore and power-on now follow the persistence sheet, and the firmware version is 0.2.49.
Co-authored-by: Cursor <cursoragent@cursor.com>
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>
Hold master mute from shortly after the boost turns on through EQ setup, then let the chip fade in so boot does not pop.
Co-authored-by: Cursor <cursoragent@cursor.com>
Bring up 12V and Dream together after the boot lights, then configure the amp a single time so the string tone stays intact and the unmute write is not lost.
Co-authored-by: Cursor <cursoragent@cursor.com>
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>
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>
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>
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>
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>
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>
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>
NavBar no longer forces I after stop; remember context before leave and prefer saved fret chord on no-fret pick.
Co-authored-by: Cursor <cursoragent@cursor.com>
Normal-mode pick with no fret held applies the last expert stop transpose, starts on I, and arms even-beat stop if idle.
Co-authored-by: Cursor <cursoragent@cursor.com>
Init TM1629 before POWER_ON and run the color sequence during the logo dwell instead of after mode select.
Co-authored-by: Cursor <cursoragent@cursor.com>
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>
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>
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>
Loop_Light_Handle was hardcoding red for every measure; map L1-L7 to the same R/G/B/yellow/purple/cyan/white table as App guide LEDs.
Co-authored-by: Cursor <cursoragent@cursor.com>