diskOS Disco! 2.5.7
Fixes from a code review of 2.5.6, safer Bluetooth recovery, and a Windows installer that always installs the latest
release.
Testing: these fixes were checked with automatic tests and on a computer. They were not yet tried on a Disc,
and Bluetooth AAC/LDAC not at all (no such headphones at hand). Reports are welcome on
issue #13.
Bluetooth
- Safer automatic resume (#13). When Disco moves the sound back
to your headphones and the song stops by itself, it presses play once. If music still doesn't move, or after an
AAC/LDAC switch, it shows "Playback paused - press Play to resume" instead of acting. It only watches for a few
seconds, for the same headphones and song, and never after you press Play/Pause yourself or at the end of a song. - No more codec blacklist. 2.5.6 could mistake an ordinary pause for a failed AAC/LDAC connection and switch those
headphones back to SBC for good. That is gone: headphones 2.5.6 moved to SBC can use AAC/LDAC again.
Picking several items
Picking now works with the exact songs for every action (Play, Queue, Add to playlist, Add to Favourites):
- One track of a CUE/ISO album stays one track in the queue, instead of the whole album.
- An album picked under one artist no longer pulls in another artist's album with the same name.
- Folders with CUE/ISO files keep every track; very large albums are no longer cut off at 512 songs.
- Add to Favourites only reports what was really saved, and keeps the selection when something fails.
- Select all in Files only ticks folders and songs.
- Queuing many songs at once is faster (the queue is saved once).
Queue
- A queue start that fails no longer loses queued songs.
- "Add folder to queue" adds each CUE/ISO track once.
Windows
- Always the latest version: the installer downloads the latest release each time (checked against its
checksums), unless you choose anmq_uifile of your own. Without internet it offers the version built into the app. - Windows is unsupported, but working as intended: confirmed several times by users, installs and SD updates included.
Installing and updating
- Already on diskOS Disco! 1.4.1 or newer? Update from the SD card: download
mq_ui, sign it with your own
keys and copy thediskos-updatefolder to the card (how). Your settings, music and stats stay. - New install? Start from FiiO's stock V2.57 firmware (recommended). Installing over upstream diskOS or
another diskOS build is not supported and can be buggy; restore stock first. See Install.
After updating
- Settings > System > About shows 2.5.7.
- The new version starts as a trial: play some music or tap Keep to keep it. If it doesn't start properly,
the Disc goes back to the previous version by itself, or choose Go back. - Something odd? Hold Volume Up from power-on to start FiiO's own interface once, and restart to come back.
Technical notes
Bluetooth: the 10 s resume guard is bound to route MAC, player generation and track identity, cancelled at EOF and by
on-screen transport; after ui_route_bt one play (only after a successful send), else and after the 06b3 codec
upgrade a hint only; btcx_<mac> downgrades are no longer written or read. Multi-select actions share one exact-ID
list (queue_add_ids, mdb_folder_ids, artist-scoped album collection without a cap, one cleanup path); a fresh
queue start commits its new order only after playback starts. Windows: Latest.cs shared by Install and Update;
diskos install --ui. Tests: queue_test.py (failed start, exact CUE tracks, capacity) and bt_bulk_favourites_test.py
(contributed with the review). Built with the GCC 11.2 MIPS toolchain; build record in payload/mq_ui.build.json.