Skip to content

Releases: Gigass/CrazyPod

CrazyPod V1.3.2

Choose a tag to compare

@Gigass Gigass released this 05 Sep 05:43

修复内容

  • 修复简体中文字体与回退字体增加后,底层字体容量不足的问题。该问题会使歌词字体加载失败,并可能在进入“正在播放”或通过随机播放打开该页面时触发界面卡死。
  • iPod 6G 字体容量从 12 扩至 64,同时配套增加文件句柄和磁盘缓存容量,覆盖运行时字体、私有字体及 Rockbox 预留名额。
  • 修复回退字体加载失败时泄漏主字体引用,以及字体槽耗尽或内存分配失败时泄漏文件句柄的问题。
  • 本次未修改 FLAC 解码器、SD/ATA 驱动或随机播放队列;不将歌曲扫描时的 FAT 目录错误列为已修复。

验证情况

  • 字体满容量、100 次重复加载/释放、旧容量限制及回退字体缺失测试通过。
  • AddressSanitizer / UndefinedBehaviorSanitizer、UI 主机测试及 iPod 6G ARM 构建通过。
  • 同一修复源码的测试构建已写入一台真机;故障用户设备上的“正在播放 / 歌词 / 随机播放”回归仍待确认,不代表所有卡死均已解决。

下载与安装

  • CrazyPod-V1.3.2-iPod6G.zip:完整安装与升级包,推荐使用。
  • CrazyPod-V1.3.2-iPod6G-rockbox.ipod:仅供已具备匹配资源的安装使用,写入时重命名为 rockbox.ipod
  • SHA256SUMS-V1.3.2.txt:下载校验文件。

仅适用于 ipod6g 目标的 iPod Classic。合并复制 .rockbox 内容,最后写入 .rockbox/rockbox.ipod,安全弹出后重启。不要删除 .crazypod、音乐或其他用户数据;无需重装引导程序。

English summary

Fixes the Simplified Chinese runtime-font capacity regression that could leave the lyrics font null and hang Now Playing. Aligns font, file-descriptor and disk-cache budgets, and releases resources on font-load failure. Host regression tests and the ARM build pass; affected-device playback regression remains pending.

Source fix: 539b66c6cdfd3ee7f5d45caa2f1eb857d3c14faa (included in the selected main merge commit).

Full changelog: V1.3.1...V1.3.2

CrazyPod V1.3.1

Choose a tag to compare

@Gigass Gigass released this 02 Sep 13:13
fffcdc4

Fixed

  • Increased the lock-screen metadata font-warming thread stack from 3 KiB to 5 KiB.
  • Addresses the observed Stkov crazypod lock font overflow during first metadata/font loading, track changes, and shuffled playback.
  • No storage-driver, FLAC-decoder, logic-board detection, or inline-remote behavior changed.

Validation

  • UI, Mini App, Game Boy, EPUB, font, localization, architecture, and whitespace checks pass.
  • Clean iPod 6G production build reports Version: V1.3.1.
  • Physical confirmation on the reporting user's 420-track FLAC library remains pending.

Downloads

  • CrazyPod-V1.3.1-iPod6G.zip: complete install archive.
  • CrazyPod-V1.3.1-iPod6G-rockbox.ipod: firmware-only update for existing matching installations.
  • Verify downloads with SHA256SUMS-V1.3.1.txt.

CrazyPod V1.3.0

Choose a tag to compare

@Gigass Gigass released this 02 Sep 05:01

CrazyPod V1.3.0 adds native GB/GBC play, 3.5 mm inline-remote controls, Home Actions, faster persistent catalogs, smoother Cover Flow, and safer storage behavior.

What's New

New

  • Play legally obtained GB and GBC games from /MiniApps/Games. The standalone app supports Click Wheel controls, audio, battery-backed saves, and RTC data.
  • Control playback with compatible 3.5 mm inline remotes. Single, double, and triple presses handle play/pause, next, and previous; volume buttons work throughout CrazyPod.
  • Open Home Actions for the queue, brightness, and volume. Holding Play on Home now opens the lock screen.

Improved

  • Music Cover Flow now follows the Click Wheel with continuous acceleration, gentle release inertia, and smooth snapping. Artwork prefetching pauses while you scroll to reduce contention.
  • Music, Books, and Mini Apps reuse persistent catalogs instead of fully rescanning unchanged content at every launch.
  • EPUB text extraction preserves more document structure, removes hidden markup, and shows clearer first-open and reflow progress.
  • Notes use transactional saves and recover the previous title and body if a write is interrupted.
  • A 50 fps UI cadence reduces unnecessary CPU and LCD work while preserving Click Wheel motion and display sync.

Fixed

  • Restored the USB mode prompt after plugging in the iPod; multimedia-key handling no longer consumes system events.
  • Screen recording now reports save and size-limit failures instead of showing a false success message.
  • Mini Apps in the legacy /MiniApps/Install directory remain discoverable during migration to /MiniApps.

Installation

For a complete upgrade, download CrazyPod-V1.3.0-iPod6G.zip, extract it to the root of a compatible iPod Classic 6G data volume, and copy .rockbox/rockbox.ipod last. The archive does not install or replace a bootloader. Back up the device and keep Apple Disk Mode/DFU recovery available.

Do not install only the standalone firmware on a device that lacks the matching V1.3.0 fonts, icons, codecs, and Mini App packages.

Validation

  • All UI architecture, UI host, Mini App host, Game Boy, EPUB, font, localization, and whitespace gates pass.
  • Clean ipod6g ARM build completed with arm-none-eabi-gcc 16.1.0 and embedded version V1.3.0.
  • The 533-entry install ZIP passes unzip -tq and contains exactly the five expected CPK packages.
  • These checks prove build and package integrity, not complete physical-iPod regression.

SHA-256

  • CrazyPod-V1.3.0-iPod6G.zip: aa0e1d5b487b591a80fd15a16b49b0333b054249ddd111c23d050edf6aeffc5c
  • CrazyPod-V1.3.0-iPod6G-rockbox.ipod: b4d5c608ef37d81251769596bb33d0ae5638c43dc18c17e1846d5781af94dc43

Source commit: 57559e3df752bb87f8081656e2dd98ad2b244731

Full Changelog: V1.2.1...V1.3.0

CrazyPod V1.2.1

Choose a tag to compare

@Gigass Gigass released this 31 Aug 12:04

CrazyPod V1.2.1 adds USB iAP digital audio and media controls for compatible 30-pin accessories on the iPod Classic 6G target family (6th, 6.5th, and 7th generation).

What's new

  • Added a USB iAP accessory profile with 44.1 kHz and 48 kHz stereo digital-audio output for compatible docks and head units.
  • Connected accessory commands to CrazyPod's native playback queue: play/pause, stop, next/previous, direct track selection, volume, shuffle, and repeat.
  • Synchronized play state, track count and position, metadata, volume, shuffle, and repeat changes with connected accessories.
  • Expanded the legacy 30-pin UART path with Lingo 5 version negotiation and RF-transmitter begin/end handshakes.
  • Refactored PCM output into explicit sinks so CrazyPod can switch between the built-in audio path and USB iAP output. Music, video, voice, beeps, and plugin audio now use the same callback contract.
  • Fixed a GNU Make 3.81 race that could remove the shared Mini App linker script during a clean parallel release build.

Installation

Use CrazyPod-V1.2.1-iPod6G.zip for a complete installation or update. Merge its contents into the iPod volume and write .rockbox/rockbox.ipod last. Do not delete the existing .rockbox directory if you need to preserve settings or user data. The archive does not install a bootloader.

rockbox.ipod is also attached separately for controlled firmware-only updates. Install the complete ZIP when resources, fonts, or Mini Apps need updating.

USB iAP remains available in CrazyPod's charge mode; mass storage stays disabled until you explicitly choose Data mode.

Accessory compatibility depends on the dock or head unit. This release passed host tests and an ARM production build, but it has not completed a physical regression across real USB iAP accessories. Keep a known-good firmware and recovery path before testing.

Validation

  • Clean iPod 6G ARM production build completed with embedded version V1.2.1 using arm-none-eabi-gcc 16.1.0.
  • ZIP integrity check passed; the archive contains 527 entries and exactly five selected CPK5 packages.
  • Runtime font audit passed: 11 CPKs, 47 shipped tuples, 26 requested tuples.
  • CrazyPod UI architecture gate passed.
  • CrazyPod UI and iAP host tests passed.
  • Mini App host tests passed.
  • git diff --check passed before the release commit.

These checks validate compilation and packaging; they do not prove every physical dock, USB audio, playback, storage, or charging behavior.

SHA-256

  • CrazyPod-V1.2.1-iPod6G.zip: a1d8ac603960d8bc408928fcc78d22529fe0e4db931bacc02e82d7d5a859fbf8
  • rockbox.ipod: 6e95661cd3ffe5f6f32716b7cbf7d559f7e730893e2b8307517c7e27a8dd6f47

Source commit: 80408e86d6aee9f6e14508ae308ca213e5ea27a1

Full changelog: V1.2.0...V1.2.1

CrazyPod V1.2.0

Choose a tag to compare

@Gigass Gigass released this 25 Aug 16:20

CrazyPod V1.2.0 is an interaction and music-library update for the iPod Classic 6G target family (6th, 6.5th, and 7th generation).

Highlights

  • Added Settings → Playback → Original iPod Music. When enabled, CrazyPod scans and plays tracks synced by iTunes under /iPod_Control/Music. Fresh installations enable this by default; upgraded devices keep it disabled until the user turns it on.
  • Added full-screen push, pop, replace, and unlock transitions so opening pages, returning to Home, and switching major scenes no longer flash abruptly. Reduce Motion still disables these transitions.
  • Made Shuffle respond immediately by opening Now Playing first, then validating the library and building the random queue after the transition.
  • Reworked lock-screen unlocking into an immediate white text progress bar and aligned Home Menu/play-pause hold feedback in the top bar.
  • Tightened Home Menu gesture ownership: only a short Menu press opens the queue, while interrupted or long presses no longer trigger it. The queue popup is narrower and removes the redundant “Local Queue” header.
  • Fixed lock-screen artwork becoming stale, disappearing after Previous, or drifting out of sync with the actual track. The current artwork remains visible until the confirmed replacement is ready.
  • Fixed Theme Font Error caused by exhausted runtime font slots, and improved regional font reuse after language changes.
  • Improved Canvas full-screen artwork cropping, default Now Playing title spacing, modal teardown, and Home restoration after overlays close.

Installation

Use CrazyPod-V1.2.0-iPod6G.zip for a complete installation or update. Merge its contents into the iPod volume and write .rockbox/rockbox.ipod last. Do not delete the existing .rockbox directory if you need to preserve settings or user data. The archive does not install a bootloader.

rockbox.ipod is also attached separately for firmware-only updates. Install the complete ZIP when resources, fonts, or Mini Apps need updating.

Original iPod Music support reads audio files and their metadata; it does not import Apple iTunesDB playlists, ratings, or play counts.

Validation

  • Clean iPod 6G ARM production build completed with embedded version V1.2.0.
  • ZIP integrity check passed.
  • Runtime font audit passed: 11 CPKs, 47 shipped tuples, 26 requested tuples.
  • CrazyPod UI architecture gate passed.
  • CrazyPod UI host tests passed.
  • Mini App host tests passed.
  • git diff --check passed.

These checks validate the build and package; they are not a complete physical-device regression of every interaction.

SHA-256

  • CrazyPod-V1.2.0-iPod6G.zip: 4857dd94b3da23407d3431651699b50e27015b9d287d4bd1fe67bfd77c68e153
  • rockbox.ipod: db2906c0f309011541d44a901dcd1735ba3a59f23ef8c549299aba5699043b21

Source commit: f1a2d13549a306a60a22ae993683e6e30afa23d9

Full changelog: V1.1.1...V1.2.0

CrazyPod V1.1.1

Choose a tag to compare

@Gigass Gigass released this 25 Aug 02:05

CrazyPod V1.1.1 is a stability release for the iPod Classic 6G target family (6th, 6.5th, and 7th generation).

Highlights

  • Fixed the music-to-video failure chain that could leave MPEG threads and the shared codec in a partial state, preventing music from resuming and eventually freezing the device. MPEG startup is now transactional, partial initialization is rolled back, video startup checks resources first, and failed transitions restore music state.
  • Increased the iPod 6G thread capacity from 18 to 24 and made permanent worker-thread creation failures explicit instead of silently continuing with an incomplete runtime.
  • Hardened audio and storage reliability with a real 4 MiB audio reserve, protected active/paused playback from unsafe buffer shrinkage, prevented SSD sleep during active playback, propagated wake failures, and stopped treating transient read errors as end-of-file.
  • Removed unsafe shared music-catalog pointers. Catalog, album, playlist, favorites, artwork, Mini App media services, and playback consumers now use locked copy-out access and epoch checks to avoid scan/invalidation races.
  • Added full locking and stable path copies to the playback queue, preventing shuffle, queue rebuilds, and playback reads from racing with each other.
  • Fixed intermittent Home scrolling tearing. TE phase is periodically re-locked, failed synchronized submissions remain queued for retry, ordinary/full-screen updates can no longer overwrite a pending Home/Music synchronized frame, and overlays submit their real dirty regions instead of forcing full-screen DMA.
  • Moved screen-recording work to background priority so capture cannot compete with frame-critical Home presentation.

Installation

Use CrazyPod-V1.1.1-iPod6G.zip for a complete installation or update. Merge its contents into the iPod volume and write .rockbox/rockbox.ipod last. Do not delete the existing .rockbox directory if you need to preserve settings or user data.

The archive does not install a bootloader. rockbox.ipod is also attached separately for firmware-only updates.

Validation

  • Clean iPod 6G ARM production build completed with embedded version V1.1.1.
  • ZIP integrity check passed.
  • Runtime font audit passed: 11 CPKs, 47 shipped tuples, 26 requested tuples.
  • CrazyPod UI architecture gate passed.
  • CrazyPod UI host tests passed.
  • Mini App host tests passed.
  • git diff --check passed.

SHA-256

  • CrazyPod-V1.1.1-iPod6G.zip: 823276dc398c3512e840e219495a00fc114e618a9b3b8d02bf0c22c9cb27331d
  • rockbox.ipod: abd7314b91b496cc320197c050d2993132bd5d224c139a86a95fc455580d8828

Source commit: a4d5bd40e1ca77a414efb5099da9170097af827e

Full changelog: V1.1.0...V1.1.1

CrazyPod V1.1.0

Choose a tag to compare

@Gigass Gigass released this 24 Aug 11:48

CrazyPod V1.1.0 is a feature release for the iPod Classic 6G target family (6th, 6.5th, and 7th generation).

Highlights

  • Added on-device screen recording: press Left + Right for a screenshot, or hold the same chord for 0.5 seconds to start or stop a 30 FPS AVI recording. Recordings are saved under /Videos/Screen Recordings, with countdown, recording indicator, save/failure feedback, dropped-frame handling, and a 1 GiB file limit.
  • Added 30-pin dock and iAP accessory support for accessory detection, serial protocol negotiation, remote-button input, playback control, and dock-aware power/USB behavior.
  • Added remote multi-tap controls: one tap toggles play/pause, two taps skip forward, and three taps go back. Remote navigation also works across Home, Now Playing, Cover Flow, lock, books, prompts, and overlays.
  • Unified long-press interactions with visible progress feedback for Home to Now Playing, confirmation actions, Mini App exit, wallpaper crop actions, lock/unlock, capture, and power controls.
  • Hardened Mini App runtime font packaging. All release CPKs now declare exact semantic font requirements; ABI 1.16+ rejects missing font metadata; the release archive ships and audits 47 canonical font tuples across four locale groups.

Documentation

  • Added an internationalized English README and a complete Simplified Chinese README.
  • Added the CrazyPod live demo link.

Installation

Use CrazyPod-V1.1.0-iPod6G.zip for a complete installation or update. Merge its contents into the iPod volume and copy .rockbox/rockbox.ipod last. Do not delete the existing .rockbox directory before merging if you need to preserve settings or user data.

The archive does not install a bootloader. rockbox.ipod is also attached separately for firmware-only updates.

Validation

  • iPod 6G ARM production build completed with embedded version V1.1.0.
  • ZIP integrity check passed.
  • Runtime font audit passed: 11 CPKs, 47 shipped tuples, 26 requested tuples.
  • Host tests cover the iAP parser/state machine, remote multi-tap behavior, Home input, Mini App manifests, and runtime-font packaging.

Physical compatibility can vary between third-party 30-pin accessories. The 3.5 mm headset remote path remains unsupported.

Source commit: 1df7dde66e7f10f94affedd07622e3a4e40fc31c

Full changelog: V1.0.1...V1.1.0

CrazyPod V1.0.1

Choose a tag to compare

@Gigass Gigass released this 23 Aug 01:53

CrazyPod V1.0.1 is a maintenance release for iPod Classic 6G/7G devices.

Fixes

  • Fixed the LCD synchronization regression that could cause a white screen, purple vertical lines, or tearing on some panel variants. Type 0/1 panels use runtime-validated TE synchronization; type 2/3 panels keep the original Rockbox initialization.
  • Fixed Music Cover Flow lazy loading while a finger remains on the click wheel.
  • Replaced the unstable Photos menu thumbnails with a lightweight animated preview.
  • Preserved valid photo caches after USB storage refreshes, so unchanged photos no longer require full thumbnail regeneration.
  • Fixed the book reader center button opening the playlist picker. It now opens book actions for bookmarks and the playback queue.
  • Fixed Now Playing direction-button gestures: hold Right/Left to seek forward/backward; short presses retain next/previous behavior.
  • Simplified video playback into a full-screen, video-first interface and separated playback state from the MPEG backend.

Video compatibility

Real iPod hardware continues to support MPEG-1/2 video. MP4/M4V/MOV H.264 + AAC playback is available only in the macOS simulator; this release does not claim hardware H.264 support.

Installation

Use CrazyPod-V1.0.1-iPod6G.zip for a complete install or whenever packaged resources changed. Existing users with matching V1.0.1 resources may use the standalone rockbox.ipod file for controlled firmware-only updates.

Back up the device, verify the SHA-256 checksums, copy the firmware with rockbox.ipod written last, and safely eject before rebooting. The package does not install or replace the bootloader.

Validation

  • Clean iPod 6G ARM build with version V1.0.1
  • ZIP integrity and embedded firmware verification
  • UI architecture and host tests
  • Photo cache regression tests
  • Font coverage and localization audit
  • Mini App and EPUB host tests

Source commit: 85e1916784821289de390fa50c63af0c8986d1e8

CrazyPod V1.0

CrazyPod V1.0 Pre-release
Pre-release

Choose a tag to compare

@Gigass Gigass released this 22 Aug 09:57

CrazyPod V1.0

Compatibility hotfix (2026-08-22): TE/FMARK synchronization is restricted
to the physically verified type 1 panel. Types 0, 2, and 3 use the original
Rockbox LCD initialization; the type 2/3 register 0x090 is restored to
0x0021.

Install only the downloadable ZIP or standalone firmware asset below.
GitHub-generated Source code archives remain tied to the original V1.0 tag and
are not the compatibility-hotfix installation package.

Released: 2026-08-22

V1.0 is CrazyPod's first public experimental release for the iPod Classic
ipod6g target family. It is a standalone LVGL firmware product built on the
Rockbox platform, not a Rockbox theme.

V1.0 passes clean ARM compilation, package integrity, and repository host
tests. The final release bytes have not completed physical iPod regression.
Back up the device and keep Apple Disk Mode/DFU recovery available.

Highlights

  • 320×240 Click Wheel interface with a configurable 16-app carousel, lock
    screen, power menu, status surfaces, wallpapers, and 16 icon themes.
  • Local music library, search, queue, favorites, shuffle/repeat, resume, LRC
    lyrics, Cover Flow, artwork cache, podcasts, and direct wheel volume.
  • Media app with JPG/BMP photos, favorites, zoom/pan, and pre-transcoded
    MPEG-1/2 video playback with seek and resume.
  • Notes, EPUB/TXT/Markdown books, calendar/ICS, contacts/VCF, workouts, clock,
    stopwatch, EQ Studio, USB charge/data selection, and idle power-off.
  • Nine interface languages and 839 audited localization entries.
  • CPK5 Native AOT Mini Apps: Native Reference, Capability Lab, and 2048.
  • Native ABI 1.20 Now Playing themes: Neon and Signal One. The device runs no
    JavaScript engine; TSX is compiled to native ARM code before packaging.
  • Package-private and semantic regional Noto font service with 38 bundled
    tuples and complete coverage for the current 1317-character UI manifest.

Release fixes

  • Fixed Cover Flow cache invalidation and neighboring-cover loading so album
    art changes are published without stale frames.
  • Added frame-clock and LCD presentation controls used to reduce visible
    tearing during Cover Flow transitions.
  • Restricted TE/FMARK panel commands and phase synchronization to the
    physically verified type 1 display. Unverified type 0/2/3 displays now use
    the original Rockbox initialization and ordinary partial updates.
  • Added centered success/error notifications and simplified screenshot-save
    feedback ownership.
  • Corrected book-reader input/session transitions and removed stale workflow
    state.
  • Consolidated photo screen/controller ownership and settings catalog state.
  • Added click-wheel button coverage used by the updated UI input paths.
  • Regenerated all fixed localization fonts after new translated copy added 18
    previously missing glyphs.
  • Removed 11 dead localization keys and registered the new choice pagination
    format; strict localization audit now reports zero errors and warnings.
  • Made EPUB 2 coverage deterministic instead of depending on an intermittently
    failing Project Gutenberg endpoint.
  • Prevented historical Now Playing CPK files in dist/miniapps from leaking
    into a clean firmware archive.

Assets

File Purpose SHA-256
CrazyPod-V1.0-iPod6G.zip Complete install archive 17d9eddc5ec2acecec245b7afd4e0d0d433c5ceb8f9b90986e62360b346e4c7b
CrazyPod-V1.0-iPod6G-rockbox.ipod Standalone firmware binary for controlled updates 555c9e3526fb839d4a419f86b90d75436989803ec021098728a3b55ed8744ae1
SHA256SUMS.txt Download integrity checks

Install the complete ZIP for a first CrazyPod copy or when resources changed.
Do not install only rockbox.ipod on a device that lacks the matching V1.0
fonts, icons, codecs, and CPK packages.

Installation and upgrade

The README installation tutorial covers:

  • compatible models and FAT32 requirements;
  • Apple-firmware-only installation with official dual boot on Windows,
    macOS, and Linux;
  • package-only upgrades for existing Rockbox and CrazyPod users;
  • DFU and Apple Disk Mode entry;
  • non-destructive firmware copy with rockbox.ipod written last;
  • SHA-256 verification, safe eject, dual boot, and recovery.

Existing .crazypod settings and user media are preserved. State versions
older than 14 are migrated by the firmware. The release archive does not
install or replace a bootloader.

Validation

  • UI architecture, UI host, Mini App host, EPUB, font, localization, and
    whitespace gates pass.
  • A clean VERSION=V1.0 ./build-hw.sh completed with
    arm-none-eabi-gcc 16.1.0.
  • Firmware and archive both report target ipod6g and version V1.0.
  • The 499-entry install ZIP passes unzip -tq and contains only the five CPK5
    packages generated or selected by the current build.

See PROJECT_STATUS.md for the exact physical-validation
boundary and BUILD.md for the reproducible build procedure.