Repository navigation
HIFIEC58 — Ogg Opus + full-precision Ogg Vorbis, MP3 clock profile for Ogg (V3.9.0, 8 GB)
LatestUnofficial patch for the SNOWSKY ECHO MINI firmware V3.9.0 (HIFIEC39.IMG, 8 GB model only).
Validated on the device (2026-10-16). Recommended build.
What's new since HIFIEC56
- Ogg Vorbis now uses the MP3 clock profile: audio core at 300 MHz instead of 400 MHz (480 MHz for some bitrates), main core at 150 MHz instead of 80 MHz. The full-precision decoder needs only a fraction of that; its heaviest call still has about a 4× margin.
- Decoders are unchanged (same Opus and Vorbis as HIFIEC56). The marker is now [8] → [9].
- The effect on battery life has not been measured (the player's 4-segment gauge is too coarse). If you prefer the stock clock profile, HIFIEC56 stays available.
Features
- Ogg Opus (
.opus) playback, replacing WMA (libopus 1.5.2, optimised decoder-only build): playback, seeking, tags, cover art,OPUS|48KHZ|…label. - Full-precision Ogg Vorbis: Tremor at full accuracy (60–84 dB SNR) instead of the stock low-accuracy build (38–43 dB), with Tremor's ARM assembly.
- WMA is no longer supported. MP3, AAC and FLAC are unchanged.
Install
The firmware image is not distributed. Build it from your own official HIFIEC39.IMG:
sha256sum HIFIEC39.IMG # 59b6230df42607384345992532ba8ae8f7967c6dfb51dc2f9f100447ee8cd17e
python3 apply_patch.py apply HIFIEC39.IMG HIFIEC58.ecpatch HIFIEC58.IMG
# -> SHA-256 ffb9361c95d4093fda79d6d4df60946c63329622db92fa79691b8dd40c5947f6
Delete any HIFIECxx.IMG from the player's root, copy HIFIEC58.IMG alone, remove the microSD card, eject and reboot. It installs over the stock firmware or over any earlier image of this project. Full instructions: INSTALL.md.
Back to stock: HIFIEC59_stock_recovery.ecpatch gives the stock firmware with its date moved to 2026-09-12 (SHA-256 1ad95e0200b43c5e3b9b1536de71cba8ee2164187fc1eea8944a5629229a4300).
Known limits
- 8 GB model only.
- Tags and cover art must be in the first Ogg page (~4 KB); long lyrics can push them out.
- The firmware never displays progressive JPEG cover art. For
.oggfiles,tools/cover_baseline.pyre-encodes such covers as baseline.
Assets
HIFIEC58.ecpatch: binary patchHIFIEC39 → HIFIEC58. It contains only the bytes written by this project (libopus and Tremor are BSD-3-Clause, seeTHIRD_PARTY.md).HIFIEC59_stock_recovery.ecpatch: back-to-stock patch.apply_patch.py: applies a patch after checking the SHA-256 of both input and output.
Images can also be rebuilt from source, bit for bit (see the README). Clock profile details: docs/REPORT.md, section 22.
⚠️ Unofficial firmware, tested on one device. Flashing may brick the player. A community MaskROM recovery procedure exists (livetrack.club/debrick, see the README's Recovery section), not tested by this project. Not affiliated with SNOWSKY.