Dear Head-Fi community
After almost 4 months of intensive development and testing, prispewnic and I are proud to announce the launch of
Version 3.4 of the modded kernel for the FiiO X5iii. Contrary to previous versions, (and the main reason why this release has taken so long) version 3.4 has been developed using a bottom-up approach, as a lot of new code and commits were needed to implement modern day features such as the anxiety scheduler. As a result this codebase has over 700 new commits when compared with FiiO’s original source code.
As a result the new kernel feels much smoother and more responsive when compared with previous versions. Benchmarking app performance is always a sensitive subject given the specific focus/bias of each specific app, however with careful tuning the raw tests have shown to be same or better than v3.32, in addition to all the memory and UI optimisations on top.
Changelog
Version 3.4
New: Anxiety I/O scheduler (faster, more responsive UI)
New: Added dynamic fsync adjustment
New: Google services drain fix
New: Block scheduler code for more concurrent device communication
New: Kernel workqueue functionality for more efficient requests handling
Enhanced: Code Refactoring
Enhanced: Updating the kernel scheduler codebase
Enhanced: Updated hosts file - 170615 exceptions for no spamware, faster browsing
Enhanced: Improved tweaks and kernel settings
Enhanced: Optimized suspend code (better deep sleep)
Enhanced: Reduced device operating temperature
Enhanced: CPU frequencies redesigned
Enhanced: updated sqlite3 and zipalign
Enhanced: Faster boot time
Enhanced: Elevator code for future scheduler support
Enhanced: Added new Rockchip code for faster throughput
Fix: Removed occasional freeze on player boot if connected to USB
AROMA: Added option for enabling Interface Boost function
Thanks to all the testers who have supported this over the last few weeks, and especially prispewnic who has been daily testing every new build for the last three months. We hope you will enjoy using this release as much as we enjoyed building it.
Release Specific Notes
There may be a residual race-condition with certain players just hanging on the boot-up welcome screen if the usb power cable is connected. This issue should have been completely fixed, but if this still happens randomly, just remove the cable and reboot, and please PM me with your specific player details (speed, SD config etc).
Feedback and Next Steps
The next versions will be code optimisation and additional bug fixing. There’s a lot of newly-introduced Rockchip code that can benefit the RK3188 chipset (which is found in the X5/X7) and v3.x will be focussed on minor but performance-based releases. Version 4.0 will hopefully contain a newer version of Linux (3.10/3.18) which will automatically enable new features, but as it stands some of the existing code base is simply too old to accommodate newer features, as we saw when implementing the Anxiety scheduler.
Importantly, as of the time of writing, this is still the only FiiO player whose full source code has been released, and thus the only FiiO player for which a custom kernel can be developed. In other words, no custom kernels can be developed for the X7, M7, M9, M11 or any android-based FiiO players. Whilst there is a (minor) argument to be made for any specific kernel code that may have been developed in-house, withholding such data prevents the creation and support of a custom-driven community such as this one, and given that there are more than 1000+ downloads of the latest version to date; it definitely increases the number of such devices sold. Not to mention that the hardware vendors themselves benefit as a whole thanks to new code and design techniques which can form part of future players.
Download
Head over to
https://kernelmods.com to download the latest release
