Repository navigation
Releases
Classy 20261107 (v2)
Classy Release
Automated build with full support for Innioasis Y1 (Type A & Type B) and Innioasis Y2.
📦 Release Assets
| File | Target Device | Notes |
|---|---|---|
Classy-20261107-v2.apk |
All Devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All Devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All Files | SHA-256 integrity checksums |
⚡ Flashing Instructions (SP Flash Tool)
- Extract the corresponding zip file for your device.
- Launch
flash_tool.exe(or Linuxflash_tool). - Load the scatter file (
MT6582_Android_scatter.txtfor Y2,MT6572_Android_scatter.txtfor Y1). - Select Firmware Upgrade or Download Only.
- Power off the device completely, click Download, and connect the USB cable.
What's Changed
- feat(video): hide the overlay while the video plays, and open scrub mode with the centre button by @ferrolho in #69
Full Changelog: 2026110...20261107-v2
Classy 20261107
Classy Release
Automated build with full support for Innioasis Y1 (Type A & Type B) and Innioasis Y2.
📦 Release Assets
| File | Target Device | Notes |
|---|---|---|
Classy-20261107.apk |
All Devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All Devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All Files | SHA-256 integrity checksums |
⚡ Flashing Instructions (SP Flash Tool)
- Extract the corresponding zip file for your device.
- Launch
flash_tool.exe(or Linuxflash_tool). - Load the scatter file (
MT6582_Android_scatter.txtfor Y2,MT6572_Android_scatter.txtfor Y1). - Select Firmware Upgrade or Download Only.
- Power off the device completely, click Download, and connect the USB cable.
What's Changed
- refactor(settings): remove Settings → Appearance → Background and the hidden blurred background views by @ferrolho in #61
- fix(rom): install the launcher's native libraries in /system/lib, so that videos play by @ferrolho in #62
- docs: add Play On, romanised lyrics and Settings → Battery to the site and README by @ferrolho in #60
- fix(usb): share the microSD card at once or say why not, keep the app alive, and add the USB Drive setting by @ferrolho in #64
- fix(ui): hide Android's notification icons and tickers while the app is in front by @ferrolho in #65
- fix(library): remove "Do not turn off the screen." from the scan progress text by @ferrolho in #66
Full Changelog: 2026110...2026110
Classy 20261106
Classy Release
Automated build with full support for Innioasis Y1 (Type A & Type B) and Innioasis Y2.
📦 Release Assets
| File | Target Device | Notes |
|---|---|---|
Classy-20261106.apk |
All Devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All Devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All Files | SHA-256 integrity checksums |
⚡ Flashing Instructions (SP Flash Tool)
- Extract the corresponding zip file for your device.
- Launch
flash_tool.exe(or Linuxflash_tool). - Load the scatter file (
MT6582_Android_scatter.txtfor Y2,MT6572_Android_scatter.txtfor Y1). - Select Firmware Upgrade or Download Only.
- Power off the device completely, click Download, and connect the USB cable.
What's Changed
- refactor(lists): one model for the list screens and the Settings rows by @ferrolho in #45
- fix(settings): end the menu reorder before new rows replace the Main Menu Items rows by @ferrolho in #48
- fix(library): keep the CPU awake while the media library scan runs by @ferrolho in #53
- docs(site): add a product page and a GitHub Pages workflow by @ferrolho in #52
- feat(settings): add Settings → Battery, with the battery level and the screen time of the last 24 hours or 10 days by @ferrolho in #55
- feat(cast): Play On: play the music on a Sonos, DLNA or Google Cast speaker of the Wi-Fi by @ferrolho in #56
- docs(site): install the firmware with Innioasis Updater CE from innioasis.app by @ferrolho in #57
- feat(player): show romanised lyrics (pinyin, romaji), or both lines, from a .romanised.lrc file by @ferrolho in #54
- Rebrand project from InniClassic to Classy by @JonaszPotoniec in #46
- fix(scripts): find the repo root without assuming the directory name by @JonaszPotoniec in #58
- feat(boot-logo): generate and package Classy boot logo by @JonaszPotoniec in #47
- fix: point repository links at ClassyPlayer/Classy by @JonaszPotoniec in #59
Full Changelog: 2026110...2026110
InniClassic 20261105
InniClassic Release
Automated build with full support for Innioasis Y1 (Type A & Type B) and Innioasis Y2.
📦 Release Assets
| File | Target Device | Notes |
|---|---|---|
InniClassic-20261105.apk |
All Devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All Devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All Files | SHA-256 integrity checksums |
⚡ Flashing Instructions (SP Flash Tool)
- Extract the corresponding zip file for your device.
- Launch
flash_tool.exe(or Linuxflash_tool). - Load the scatter file (
MT6582_Android_scatter.txtfor Y2,MT6572_Android_scatter.txtfor Y1). - Select Firmware Upgrade or Download Only.
- Power off the device completely, click Download, and connect the USB cable.
What's Changed
- fix(battery): show the battery level from the voltage on the Y2, warn at 10 % and 3 %, and shut down before the cut-off by @ferrolho in https://github.com/JonaszPotoniec/inniclassic-y2/pull/41
- feat(navigation): navigate like the iPod: one back stack, menu slides, and list screens in place of dialogs by @ferrolho in https://github.com/JonaszPotoniec/inniclassic-y2/pull/42
- refactor(ui): remove the App Drawer and Screen Recorder screens, which nothing can open by @ferrolho in https://github.com/JonaszPotoniec/inniclassic-y2/pull/44
Full Changelog: JonaszPotoniec/inniclassic-y2@2026110...2026110
InniClassic 20261104
Thanks @ferrolho for making this release possible!
many bug fixes
- The volume curve uses thirty equal 2 dB steps (-58 dB to 0 dB) saved independently for each output, and volume buttons step once when clicked with the screen off. Wheel clicks have a dedicated Click Volume setting (Low, Medium, High), equalizer and audio effects run only when custom values are active, and graphic equalizer adjustments apply immediately while editing.
- Only one audio source plays at a time: starting a track pauses the FM radio, opening a video pauses playback, and starting USB Mass Storage stops the radio. The FM radio remains controllable with media buttons from any screen while active or paused.
- Long-pressing the center button opens an in-place track menu for playlist actions and album browsing. A single center press toggles a full-width lyrics overlay with edge fades, and a new Lyrics Keep Screen On setting prevents the display from sleeping during playback while lyrics are visible. Holding Play/Pause stops playback and rewinds to the beginning, while holding Next or Previous seeks up to 120x speed.
- The audio spectrum visualizer draws in the dominant album artwork color, stays visible at low volume levels, and stops its capture thread whenever the screen turns off or another screen is shown. Track times format in the classic style (
2:08,-0:34,1:02:08), with a Total Time toggle to display total track length in place of remaining time. - Physical button presses now register on release instead of initial push down, preventing duplicate inputs and ensuring held actions trigger cleanly. Hardware and Bluetooth remote controls continue to handle playback when the screen is dark, the on-screen keyboard standardizes on the QWERTY layout, and wheel scrolling loops consistently across Wi-Fi, Bluetooth, Music Quiz, and playlist screens.
- Cellular modem services stay permanently disabled on the Y2 to conserve battery. Bluetooth pairing accepts numeric comparison requests without requiring a touch screen, a Discoverable toggle makes the player visible to cars and external devices for two minutes, and track metadata transmits over AVRCP to in-vehicle displays. Music automatically pauses on Bluetooth disconnect or headphone removal and resumes if reconnected within four hours.
- Media scans compare file modification timestamps and sizes, re-reading only altered tracks and speeding up subsequent library rescans. Folder browsing defaults to secondary storage (
/storage/sdcard1/Music), supports upward navigation (..), and lets you switch between storage volumes. Multi-genre tags are cataloged individually across FLAC, Opus, Ogg Vorbis, and ALAC files. - Music menus include new options for Compilations, Shuffle Songs, and Group Albums (by Title or Title and Artist). iPod-style smart playlists for Recently Played and Top 25 Most Played tracks replace the legacy album history tracker.
- Cover Flow sorts albums by artist and then title, positions the artist name below the album cover, and jumps letter by letter during rapid wheel rotation. Fast wheel turns in song and album lists also jump alphabetically.
- Classic themes use the iPod Classic split-screen layout with slow cover motion, menu drop shadows, and matching zoom transitions. A low-battery warning banner appears at 10% battery with a "Please charge" screen at 2%. In the Y2 ROM, Android's stock battery dialog and low-power audio alert are disabled.
- A long press on the power button opens a dedicated iPod-style Power screen with Restart and Power Off options. Destructive actions like Reset Settings, Clear Album Art, Last.fm Log Out, and Settings Import now confirm on dedicated action screens where Back cancels.
- Settings are arranged into iPod-style categories with options to export and import settings backups, show On/Off toggles as switches (
Toggle Style), and fade the top and bottom edges of long lists (List Edges). Themes can be switched without restarting the launcher, including an Auto theme that tracks local sunrise and sunset. - Connecting storage switches the USB gadget mode to
mass_storagebefore sharing partitions so partitions mount cleanly on host systems. The USB device name advertises Innioasis with the model number rather than generic MediaTek defaults, release builds stop on APIs newer than KitKat (API 19), and continuous integration checks verify 100% translation coverage across all seven languages.
Release assets
| File | Target device | Notes |
|---|---|---|
InniClassic-20261104.apk |
All devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All files | SHA-256 integrity checksums |
Full changelog: JonaszPotoniec/inniclassic-y2@2026101...2026110
InniClassic 20261017
The Biggest Release!
- The entire application codebase has been rewritten from Java to 100% Kotlin, decomposing the monolithic main activity into dedicated domain managers, screen controllers, and an input router, backed by 16 regression test suites running in CI.
- Audiobooks is now a dedicated top-level section on the main menu, with hierarchical Jellyfin sync (Author -> Book -> Chapter), cover art downloads, continuous bookmark persistence across reboots, full chapter playlist resume, and a unified split-screen layout.
- The Videos section now provides a hierarchical browser for Movies, TV Series (with seasons and episodes), and raw directories, split-screen poster previews, Jellyfin video and thumbnail sync, and an automatic directory migration for existing files.
- Music Quiz transitions to an endless survival mode with six questions per round, speed scaling down to five seconds, a between-round pause screen with a heart shop, a persistent top 10 leaderboard, and tiered year question distractors.
- A new Recently Played Albums menu item beneath Cover Flow tracks up to 50 recently played albums with cover art, track counts, track-number-ordered browsing, and an option to clear playback history.
- Device shutdown now saves the active queue and playback position, automatically restoring the player in a paused state at the exact track and timestamp after rebooting.
- Playback cleanly pauses and rewinds to the first track when finishing an album with repeat turned off, while the library scanner now skips files smaller than 1KB and logs corrupt audio files.
- Back navigation now preserves selected row focus and scroll position across the main menu, settings, playlists, and browser lists instead of resetting to the top item.
- Split-screen pages in Music, Videos, and Audiobooks now share a unified 242dp status bar width matching the left navigation pane, while video browsing fixes eliminate poster clipping, top gaps, and double padding.
- Now Playing album art now reliably updates on the main menu and music split panes during playback.
- The theme catalog has been streamlined to Classic Light and Classic Dark, automatically cleaning up leftover assets from legacy themes during startup.
- Physical buttons and wheel haptic feedback are now completely muted while the screen is off when Screen-Off Control is disabled, and the idle backlight sleep timer now stays synchronized with system settings.
Release assets
| File | Target device | Notes |
|---|---|---|
InniClassic-20261017.apk |
All devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All files | SHA-256 integrity checksums |
Full changelog: JonaszPotoniec/inniclassic-y2@2026101...2026101
InniClassic 20261013
- Improve Jellyfin sync
Release assets
| File | Target device | Notes |
|---|---|---|
InniClassic-20261012.apk |
All devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All files | SHA-256 integrity checksums |
Full changelog: JonaszPotoniec/inniclassic-y2@2026101...2026101
InniClassic 20261012
- Added Jellyfin sync so you can download music and videos directly from your Jellyfin server over Wi-Fi. You can sign in using QuickConnect (with an on-screen pairing code), username and password, or an API token, then sync all libraries or browse and pick specific folders. Sync options let you download album artwork, transcode videos for playback on the player, and remove local files that were deleted on the server, followed by an automatic library rescan when downloads finish.
- Fixed four Bluetooth issues on the Y2:
- Toggling Bluetooth on now starts the MediaTek Bluetooth daemon (
mtkbt) automatically (and starts it at boot in the ROM), fixing the bug where Bluetooth refused to turn back on or reconnect to paired headphones after being turned off. - Turning Bluetooth off now stays off across reboots instead of turning itself back on at startup.
- "Delete Device" now verifies that unpairing succeeded before showing a confirmation message and refreshes the paired list cleanly.
- "Connect Audio" and "Delete Device" options are now visually indented beneath the selected device row.
- Toggling Bluetooth on now starts the MediaTek Bluetooth daemon (
Release assets
| File | Target device | Notes |
|---|---|---|
InniClassic-20261012.apk |
All devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All files | SHA-256 integrity checksums |
Full changelog: JonaszPotoniec/inniclassic-y2@2026101...2026101
InniClassic 20261011
- The About screen now uses a scrollable two-column iPod Classic layout showing song, video, album, and artist counts, software version, model number, and separate capacity and free space rows for both internal flash and the microSD card.
- A new "Battery Percentage" setting draws the exact percentage and a compact charging bolt inside the battery icon, with contrasting text colors across the filled and empty parts of the indicator.
- Genre browsing now follows the classic iPod hierarchy (
Genre -> Artists / All Songs -> Albums / All Songs -> Songs), and song lists have a Shuffle banner with a song counter at the top. Returning from Now Playing also highlights the playing track, fast scrolling no longer crashes on lists with header rows, and the wheel no longer gets stuck at list edges. - FM Radio now remembers your last tuned frequency and saved station presets across restarts, tunes smoothly with the wheel without screen flicker, supports hardware station seek, and routes audio directly to the 3.5mm headphone jack after pausing any playing music.
- Factory OEM demo tracks in
custom_media(such as Despacito and Panama) are no longer scanned, and an automatic cleanup migration removes them from existing libraries while stripping them from newly built ROMs. - Both button presses and touch events now reset the screen backlight sleep timer, and the screen stays awake automatically during library scans, radio scans, podcast downloads, video playback, and USB storage mode.
Release assets
| File | Target device | Notes |
|---|---|---|
InniClassic-20261011.apk |
All devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All files | SHA-256 integrity checksums |
Full changelog: JonaszPotoniec/inniclassic-y2@2026100...2026101
InniClassic 20261008
- The in-app Software Update screen now shows clearer status feedback, waits automatically while Wi-Fi finishes connecting, and lets you reinstall the current build if you are already up to date.
- Over-the-air updates now install properly when InniClassic runs as a system ROM app (
/system/app) by copying the new APK into/system/appand rebooting. Version checks also handle same-day revision tags (YYYYMMDD-vN). - Status bar icons are darker on the light theme so they stay readable against the silver bar, and the Wi-Fi indicator now uses a sharper Tabler icon.
Release assets
| File | Target device | Notes |
|---|---|---|
InniClassic-20261008.apk |
All devices (Y1 / Y2) | Standalone launcher APK (sideload or install) |
update.json |
All devices | OTA update metadata for in-app updater |
rom_y2.zip |
Innioasis Y2 (MT6582) | Complete flashable ROM with dual-storage, watchdog & clickwheel keylayout |
rom_y1_type_a.zip (rom.zip) |
Innioasis Y1 (Type A) | Flashable ROM for Y1 players with original firmware 2.0.0 or higher |
rom_y1_type_b.zip (rom_type_b.zip) |
Innioasis Y1 (Type B) | Flashable ROM for Y1 players with original firmware below 2.0.0 |
SHA256SUMS.txt |
All files | SHA-256 integrity checksums |
Full changelog: JonaszPotoniec/inniclassic-y2@2026100...2026100