Repository navigation
HiBig Zero v1.5.0
HiBig Zero v1.5.0
π New managed app: Obtainium
Obtainium joins the APPS tab β install and update apps straight from GitHub releases, with no Play Store and no account.
- Uses the plain release asset (
app-arm64-v8a-release.apk), not the F-Droid flavour. They are different packages (dev.imranr.obtainiumvsdev.imranr.obtainium.fdroid) signed by different keys, so mixing them would install a second app or fail the signature check on update. Verified against the published asset. REQUEST_INSTALL_PACKAGESis granted on install, so Obtainium can actually install what it downloads instead of sitting behind a system "Allow from this source" prompt.
π Sleep clamp measured β results published
The screen-off CPU clamp was finally measured on hardware. Full write-up in docs/SLEEP_CLAMP_TEST.md:
- The clamp works β identical work takes 2.44Γ longer, verified across 8 legs with CPU frequencies recorded in every sample.
- It only matters while the device is awake with the screen off, where it saves ~10β17 mA (the wake profile pins the little cores at a 900 MHz minimum). While the device is genuinely suspended it saves nothing β the firmware powers the cores down regardless of governor.
- The total-energy figure cannot be measured on this hardware: the battery gauge is unusable below ~10 mA (
charge_counterfrozen, positive current reported while discharging) and the timing and current instruments contradict each other by ~6Γ. This is stated rather than papered over. - Recommendation: the upside is small and bounded while the failure mode is a crippled device, so
SLEEP_GOVERNOR_ENABLED=0is the safer default. Shipped default is unchanged (1), and the failure mode is fully contained by the recovery machinery below.
π οΈ Reliability and hardening (since v1.4.0)
- Self-updater trust boundaries β downloads are restricted to GitHub hosts with every redirect hop re-checked, and the APK must be signed by the same certificate as the running app. A tampered or failed download now fails loudly.
execRootliveness β stdout and stderr are read on separate threads (the old sequential read could deadlock permanently when a command filled the stderr pipe), withwaitFor(timeout)plusdestroyForcibly()so a wedgedsucan never freeze a caller forever.- Screen-state durability, three tiers β dynamic receiver for the hot path, reconciliation on every process start, and a non-wakeup
ELAPSED_REALTIMEwatchdog that repairs a stuck clamp within ~2 s of the screen coming on. Previously a process killed while clamped left the device at 400β900 MHz with 4 cores dead permanently; that state was reproduced on-device before being fixed. - Boot-loop guard β after 3 fast boots the rule pass suspends itself and the header offers RESUME RULES, so a bad rule can't make the device unbootable.
- Boot rule table β the 19 numbered blocks in
BootReceiverare now tables plus explicit steps, with behaviour proven identical by diffing 24 real boot commands against the pre-refactor binary. Kills the ON/OFF drift class that had already caused two bugs. - Config hardening β a package name read from a world-writable file was interpolated into root shell commands at every boot. Closed with
0600owner-only files plus package-name validation; the injection was demonstrated not to execute afterwards. - Persistent log β the log is now a real rotating file (
/data/local/tmp/hibreak.log) instead of a memory-only list, written by a single batched thread. - Charge ceiling β the MTK
current_cmdswitch, with every failure path resuming normal charging.
π₯ Install
adb install -r HiBigZero-v1.5.0-release.apkSame signing key as previous releases, so this upgrades in place. HiBigZero-v1.5.0-release.apk.sha256 is attached for verification.