Skip to content
 
 

Repository files navigation

ThorTools

ThorTools is a Thor-first Android utility for the AYN Thor dual-screen handheld. It provides device diagnostics, safe system settings, Magisk-backed boot property changes, and an EZ Root workflow for Thor boot partitions.

Supported hardware

ThorTools recognizes AYN Thor Lite, Base, Pro, and Max variants. The upper display is 1920 × 1080 at 120 Hz and the lower display is 1240 × 1080 at 60 Hz. The upper panel is a read-only status dashboard; the lower panel owns navigation, actions, and confirmations.

The app enters diagnostics-only mode on other devices or when the Thor privileged root service is unavailable. Every image operation rechecks the current active slot, partition nodes, Magisk state, battery level, and image size before it runs, while the privileged script verifies the image hash and partition capacity again immediately before a write.

Features

  • Thor hardware, firmware, battery, slot, root, Magisk, and partition diagnostics
  • EZ Root backup, Magisk patch, active-slot flash, stock restore, and safe patched-image cache management
  • DPI and animation speed controls
  • Rooted volume-step control
  • Optional boot-animation disable through a ThorTools Magisk module
  • SHA-256 hashes for cached stock and patched images
  • Stock restore fallback from the independent Download copy
  • Recovery records bound to the active slot, partition, build fingerprint, file size, and source hash
  • Persistent reboot lock after partition or Magisk-module writes
  • Dual-screen AYN Thor AVD and patched emulator compositor

Thor-specific audio changes are intentionally deferred until they have been measured and validated on physical Thor hardware.

Build and run

./scripts/setup-android.sh
./scripts/create-ayn-thor-avd.sh
AEMU_SOURCE_ROOT=/path/to/aemu ./scripts/build-ayn-thor-emulator-overlay.sh
./scripts/run-ayn-thor-avd.sh
ANDROID_HOME=/path/to/android-sdk ./gradlew assembleDebug
ANDROID_HOME=/path/to/android-sdk ./gradlew assembleAlpha

The debug APK uses the deterministic fake backend for emulator validation. The alpha APK keeps the real Thor backend; the repository workflow uses a dedicated non-production alpha key when configured and otherwise falls back to the automatic debug key. The emulator validates the dual-screen layout, touch mapping, and UI state. It cannot validate real root services or partition writes. Keep AYN_THOR_ALLOW_STOCK_EMULATOR=1 limited to UI diagnostics when the patched overlay is unavailable.

Set AYN_THOR_AVD_HOME to a directory outside the repository when running the emulator locally to keep its userdata image out of Gradle file snapshots.

After a firmware or OTA change, create a new stock backup before patching or flashing. ThorTools rejects images whose recorded build fingerprint, size, or SHA-256 no longer matches the current device.

Release

Release tags use vMAJOR.MINOR.PATCH-alpha.N, vMAJOR.MINOR.PATCH-beta.N, or vMAJOR.MINOR.PATCH. Alpha releases build the real Thor backend without production signing; this repository uses an optional dedicated ThorTools Alpha key so alpha updates install over one another, while forks without that secret fall back to the automatic debug key. Beta and stable releases use the production keystore and are uploaded as thortools-<tag>.apk with a matching .sha256 checksum file. Release packaging only accepts commits already present on main with successful Android CI.

Do not promote an alpha without completing the physical Thor validation checklist on both a Snapdragon 865 Thor Lite and a Snapdragon 8 Gen 2 Thor.

Credits and support

ThorTools preserves the upstream history and GPLv2 attribution from FeralAI/o2ptweaks.app.

Support the project through GitHub Sponsors or Ko-fi.

About

AYN Thor dual-screen root and system-tweaks utility

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages