Releases: Sairb1/FlasherPRO
Release list
v7.1
⚡ What's New in v7.1
- Multi-Region OTA Query Fan-Out Fixed: Fixed an issue where querying devices on specific regional variants (e.g., TR, RU, EU) on newer Android versions returned "No update found" because the server hadn't published a build for that specific region yet. The engine now intelligently queries your selected region first, then automatically fans out across all other regional variants (IN, TW, MY, MEA, etc.) to retrieve the newest available firmware package.
- Multi-Server Mirror Fallback Restored: Single-device and catalog queries now cycle through all 4 official OPlus/ColorOS server mirrors (
IN,GL,EU,CN) with automatic fallback if the primary region mirror is missing a package or slow to respond. - Accurate Regional NV Carrier Resolution: Corrected region-to-carrier identification and firmware base prefixes so manual and catalog OTA queries match official ColorOS server parameters without mismatched region identifiers.
- IMEI & NVRAM Device Verification Fix: Fixed Windows line-ending (
CRLF) parsing during ADB device checks, preventing false "device disconnected" triggers during partition-level backups and restores. - UI Polish & Version Tagging: Updated the top sidebar header, about page, dashboard, and credits to consistently display the v7.1 release tag.
- Auto-Update Engine Polish: Enhanced the in-app background auto-updater to support seamless delta updates and one-click upgrades directly from GitHub releases.
Full Changelog: v7.0...v7.1
v7.0
🚀 What's New in v7.0
- Full Rebuild — All-New Interface: FlasherPro has been completely rebuilt from the ground up on a modern desktop framework, replacing the old interface with a fast, polished dark/light-themed UI — glass panel design system, smooth animations, and a fully redesigned sidebar navigation with grouped tools and flyout submenus.
- Live OTA Query Engine: The OTA Downloader now queries official ColorOS/OnePlus/OPPO update servers directly and automatically resolves the final CDN download link (no more dead or expired redirect links) — plus live changelog and full server response details for every result.
- Fully Automated Stock ROM Flasher: Point it at an OTA zip or payload.bin and the entire pipeline runs itself — extraction, partition sorting, integrity verification, and dual-slot fastboot flashing in the correct order, no manual steps required.
- Rebuilt Payload Dumper: Real partition scanning straight from the payload header — see the actual partitions in your file before extracting, with a one-click reset to start over on a new file.
- Interactive CMD Studio: A brand-new live terminal for ADB/Fastboot power users — real streamed command output, drag-and-drop file paths straight into the command line, quick-action shortcuts, and a one-click reboot menu.
- IMEI & NVRAM Tools Reworked: Backup and restore now properly verify a connected device and real command success at every step before reporting complete — no more false positives.
- Remove FRP — Fastboot-Only Flow: Simplified and hardened to a fastboot-only reboot sequence with a two-step confirmation before anything irreversible happens.
- USB Driver Installers Built In: One-click, UAC-elevated installers for Universal, MediaTek, and OPPO MTK/QCOM drivers — no separate downloads needed.
- Dashboard Usage Stats: FlasherPro now tracks and displays how many devices you've detected, flashes completed, OTAs downloaded, IMEI backups, and more — saved locally and persisted across restarts.
- Real Auto-Updater: Replaced the old manual update-check with proper in-app auto-update — FlasherPro checks GitHub for new releases, downloads updates in the background, and installs on your command.
- Under-the-Hood: Entirely new architecture built for speed and stability going forward — cleaner separation between the UI and the flashing engine, safer verification gates before any destructive operation, and a foundation designed for faster feature updates than the old codebase allowed.
Full Changelog: v6.6...v7.0
v6.6
🚀 What's New in v6.6
- OTA Direct Links Engine: Completely rewritten OTA downloader to fetch direct firmware
.ziplinks straight from official servers. - Integrated OTA Payload Dumper: Natively extract
payload.binand.ofpfirmware packages directly within the application without needing external CLI tools! - Flashing Engine Timeout Fix: Removed restrictive timeouts during USB flashing. The engine now uses smart, extended timeouts ensuring large partitions like
super.imgnever drop connection midway. - OTA Region Mapping Fixed: Resolved a critical bug where regional model variants were failing to map correctly to update endpoints.
- Unified Application Updater: Added a dedicated in-app "Update" button to automatically ping GitHub for the latest FlasherPro releases.
- UI Enhancements: Polished the user interface! Upgraded Quick Action menus, Reboot boxes, and Battery Diagnostics with fluid animations and improved Light/Dark theme rendering.
- Under-the-Hood Optimizations: Removed obsolete codebase lines, merged duplicate UI tabs, and cleaned up the device catalog for a faster, leaner application.
v6.5
🚀 v6.5 Changelog
- Added Payload Dumper (fast partition extraction)
- Added Permanent GSI Flasher (advanced mode)
- Improved flashing engine stability
- Fixed flashing issues and execution bugs
- Fixed duplicate ADB/Fastboot command runs
- Improved device detection and checker output
- Added navbar animations and enhanced UI
- Added smooth dark ↔ light theme transitions
- Reduced crashes (thread & task handling fixes)
- Overall performance improved, everything stable now
Stable Build
Unified Tool Pro v6.0 - Stable
The All-in-One Android Utility — by @imnotaino
What It Does
Unified Tool Pro is a Windows desktop tool for Android enthusiasts and developers. It bundles everything you need for ROM flashing, partition management, IMEI backup, and device diagnostics into one clean dark UI.
Requirements
| Requirement | Details |
|---|---|
| OS | Windows 10 / 11 (64-bit), Linux and MacOS |
| USB Driver | ADB driver installed for your device |
| Device | USB Debugging enabled (for ADB operations) |
| Bootloader | Unlocked (for flashing operations) |
Installation
Unified Tool Pro v6.0
Downloads
| Platform | File |
|---|---|
| 🪟 Windows | UnifiedToolPro-Windows.exe |
| 🍎 macOS | UnifiedToolPro-Mac.zip |
| 🐧 Linux | UnifiedToolPro-Linux |
Notes
- Windows: just run the
.exe - macOS: unzip, then right-click → Open (first time only, Gatekeeper bypass)
- Linux: Rename it UnifiedToolPro then
chmod +x UnifiedToolPro && ./UnifiedToolPro - ADB must be installed on Mac/Linux if not then
Download ADB in Mac/Linux:sudo apt install google-android-platform-tools-installer
Antivirus warning: PyInstaller EXEs are sometimes flagged as false positives. If your AV blocks it, add an exclusion or run from source instead.
🛠 Fixes
• Fixed: reboot menu buttons not working
• Fixed: payload folder selection crash
• Fixed: checkbox rendering broken (filled square instead of tick)
• Fixed: UI freezing during flash operations
• Fixed: commands running twice in CMD Studio
• Fixed: tool staying alive in Task Manager after close
• Fixed: device not detected even when connected
• Fixed: stock ROM flash doing nothing after selecting zip + folder
• Fixed: progress window cancel taking too long
• Fixed: _MEI temp directory warning on exit
Features
⚡ Device Check
Reads live device info over ADB — no root needed.
- Model, Android version, OTA build ID
- Kernel version, security patch date
- Bootloader lock status
- Auto-polls every 4 seconds, notifies on connect/disconnect
🔥 Flash ROM
Port ROM Flash
Flash a ported ROM from a folder of .img files.
- Select the folder containing your
.imgfiles - Choose reboot mode (already in fastbootd / from Android / from bootloader)
- Optionally enable wipe and setup bypass
- Click Flash — the tool handles partition delete/recreate/flash automatically
Stock ROM Flash
Flash a stock OTA zip or a pre-extracted folder.
- OTA zip / payload.bin: extracts all partitions to your chosen output folder, then flashes them all
- Extracted folder: flashes
.imgfiles directly, no extraction step needed
ADB Sideload
Sideload a .zip or .ofp in recovery/sideload mode.
Boot Flasher
Flash a single image to: boot / recovery / vendor_boot / init_boot / dtbo
💻 CMD Studio
Run any ADB or fastboot command directly.
- Quick Actions: ADB Devices, FB Devices, Dump Logcat, open external CMD
- Power Menu: one-click reboot to System / Recovery / Bootloader / Fastbootd
- Toggle between ADB and Fastboot reboot modes
📦 Payload Dumper
Extract individual partitions from an OTA zip or payload.bin.
- Instantly lists all partitions by streaming the zip header (no full extraction)
- Select which partitions to extract as
.imgfiles - Supports full OTA zips (2GB+)
🔑 IMEI Backup / Restore
Back up and restore your IMEI-related partitions. Requires root.
- Backs up: nvram, nvdata, persist, nvcfg, protect1, protect2
- Saves all files to a folder on your PC
- Restore pushes them back and writes to the partitions
⚠ Store your IMEI backup in at least 2 places. Never share it with anyone.
🔓 Remove FRP
Erase FRP (Factory Reset Protection) lock via fastboot.
- Erases: frp, userdata, metadata
- Reboots to system automatically
🔋 Battery Health
Check detailed battery information. No root needed.
- Current capacity, charge full vs design capacity
- Health percentage and label (Excellent / Good / Fair / Poor)
- Temperature, voltage, cycle count, technology
- Root fallback available for locked-down devices
🔌 USB Drivers
Links and instructions for installing ADB drivers on Windows.
How to Flash a Port ROM (step by step)
- Unlock bootloader on your device
- Extract your ROM zip — you need a folder with
.imgfiles - Open Flash ROM → Port ROM tab
- Click Select IMG Folder and choose the folder
- Choose options (wipe data if clean install)
- Click ⚡ Start Port ROM Flash
- Select your current device state (already in fastbootd / from Android / from bootloader)
- Watch the progress window — do NOT disconnect USB
How to Extract OTA Partitions
- Open Payload Dumper
- Click Select OTA Zip / payload.bin
- Select output folder
- Click 🔍 Read Partitions — partitions appear in under a second
- Check the ones you want
- Click 📦 Extract Selected Partitions
Disclaimer
⚠ Use at your own risk. Flashing ROMs can brick your device if done incorrectly. Always back up your data before flashing. The developer is not responsible for any damage caused by this tool.
Connect
| Platform | Link |
|---|---|
| Telegram | @imnotaino |
| GitHub | sairb1 |
| YouTube | @sairbop |
| @imnotaino |
Beta Version
🚀 Unified Tool Pro — v6.0 Changelog
🔥 Major Update
Focused on stability, performance, and core flashing reliability.
⚡ UI / UX Improvements
- Checkbox system redesigned (✔ / ☐ toggle)
- Larger clickable areas and improved readability
- File picker now opens at root drives (This PC)
- Remembers last used directory
- Removed redundant header device / fastboot indicators
- Improved spacing and layout consistency
🧠 Flash Engine Improvements
- Refined Port ROM flashing pipeline
- Proper fastbootd handling
- Only flashes existing
.imgfiles (safe logic) - Improved Stock ROM payload extraction
- Safer flashing sequence
⚙️ Command Handling
-
Fixed ADB reboot commands:
- adb reboot
- adb reboot recovery
- adb reboot bootloader
-
Fixed fastboot reboot
-
All commands now run through worker threads
-
No UI freezing during operations
🧩 Payload Dumper Fixes
- Fixed crash (
_ROOT_DIR not defined) - Improved partition detection
- Fixed extraction path handling
- Stable file selection system
🐛 Bug Fixes
- Fixed reboot buttons not working
- Fixed checkbox rendering issues
- Fixed UI freeze during operations
- Fixed terminal not showing output
- Fixed PyInstaller runtime differences
- Fixed silent crashes due to hidden logs
⚡ Performance Improvements
-
Removed heavy UI animations causing jitter
-
Reduced redraw overhead
-
Faster UI response during:
- flashing
- extraction
- device polling
🧠 Internal Changes
-
Cleaner separation:
- UI layer
- Flash engine
- Command system
-
Reduced legacy conflicts
-
Improved error visibility
📌 Summary
v6.0 makes the tool:
- More stable
- Faster
- Safer to use
- Closer to a production-grade flashing tool
Unified Tool Pro v5.8
v5.8 = full UI overhaul + architecture refactor
UI / UX
- Sidebar rebuilt with pack() layout, per-page accent colour bars, icon column
- Page cache system — Device Check and Battery persist data across navigation
- Flash ROM tabs no longer show inline console; replaced with popup progress window
- FlashProgressWindow: step counter, elapsed timer, progress bar, Copy Log, Cancel
- Cancel flash mid-operation with InterruptedError propagation through all loops
- ADB Terminal: macOS-style console (traffic light dots, dark bg), reboot panel
redesigned with ADB/Fastboot source toggle on left, targets on right - Toast notification system (bottom-right, auto-dismiss, success/error/info/warning)
- Buttons show loading state while running, re-enable with original text on done
- Device Check: chip grid layout replacing plain list; stat values colour-coded
- Battery: 5×2 card grid, temperature/health colour-coded green→amber→red
- Section titles use per-page accent colours
- Header: single device status pill, Fastboot badge, app.ico logo (no blue frame)
- Credits: YouTube (@sairb_op) and Instagram (@imnotaino) buttons added
- Font sizes bumped across entire UI; palette shifted to higher-contrast values
- Window layout uses grid() for right panel so console anchors to bottom edge
Architecture
- flash.py is now single source of truth for all flash operations
- All flash functions accept log_cb(msg, tag) and cancel_cb() callbacks
- ui.py _do_port_flash delegates entirely to FLASH.flash_port_rom()
- No more duplicated command sequences between ui.py and flash.py
- _clean() staticmethod strips ADB daemon startup noise from all getprop output
Bug fixes
- Fixed: No module named 'ui' in PyInstaller build (--paths + --add-data)
- Fixed: Failed to remove temporary directory popup on exit (4-layer suppression)
- Fixed: Cancel button stuck on "Cancelling..." — _finished flag + force close
- Fixed: Stray red dot in header device label
- Fixed: Sidebar nav items invisible (place() → pack() layout)
- Fixed: Welcome screen stuck (grab_set timing, _entered guard, after() navigation)
- Fixed: Device model showing ADB daemon startup lines
- Fixed: Page stacking when returning to cached page from non-cached page
- Fixed: Flash ROM console in wrong position requiring scroll to see it
- Fixed: ADB/Fastboot reboot had no source selector (always ran adb reboot)
- Fixed: Double NAVIGATION label in sidebar
v5.7
UNIFIED TOOL PRO v5.7
Dev: Ayan @imnotaino | GitHub: Ayan | Telegram: Magisk Modules
Changelog — v5.7
Menu Changes
- ADB Terminal removed from sidebar — now lives as the 4th tab inside Flash ROM
- Setup Wizard Bypass removed from sidebar — now a quick-action button inside the Port ROM tab with a proper warning
- Sidebar is now cleaner: Device Check · Flash ROM · IMEI · Remove FRP · Battery · USB Drivers · Magisk · Credits
Flash ROM — 4 Tabs
| Tab | What it does |
|---|---|
| 📦 Port ROM | Full clean flash with exact partition sequence + inline console |
| 📲 Sideload | ADB Sideload via TWRP/OrangeFox/PBR + inline console |
| 🥾 Boot Flasher | Flash boot/recovery/vendor_boot/init_boot/dtbo + reboot dialog |
| 💻 ADB Terminal | Full terminal with quick cmds, reboot buttons, external CMD |
Flash ROM — Port ROM Tab
- Inline Flash Console — real-time colour-coded step output (reboot, vbmeta, delete, create, flash, wipe)
- Progress bar turns green on success, red on failure
- Better confirmation dialog with full checklist before flashing
- Setup Wizard Bypass added here as a quick button
Flash ROM — Boot Flasher Tab
- Reboot dialog after successful flash — Yes =
fastboot reboot, No = stay in fastboot - Partition selector: boot · recovery · vendor_boot · init_boot · dtbo
- All output in inline console
Flash Sequence (verified exact order in flash.py)
fastboot reboot fastboot
fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
fastboot --disable-verity --disable-verification flash vbmeta_system vbmeta_system.img
fastboot delete-logical-partition product_a/b → system_a/b → system_ext_a/b
→ my_bigball_a/b → my_product_a/b → my_carrier_a/b → my_engineering_a/b
→ my_heytap_a/b → my_manifest_a/b → my_region_a/b
fastboot create-logical-partition product_a/b → system_a/b → system_ext_a/b
→ my_bigball_a/b → my_product_a/b → my_carrier_a/b → my_engineering_a/b
→ my_region_a/b → my_heytap_a/b → my_manifest_a/b
fastboot flash my_stock → system → system_ext → product → my_product
→ my_region → my_engineering → my_bigball → my_heytap → my_carrier → my_manifest
fastboot reboot
Bug Fixes (v5.6–v5.7)
- Port ROM flash was silently crashing —
reboot_modeparam was missing inflash.py - Double-reboot bug fixed —
clean_flash()no longer issues its own reboot - Thread exceptions now surface in console instead of being swallowed silently
- PyInstaller "Failed to remove temp directory" dialog on exit — fixed via
adb kill-serveron exit +shutil.rmtreepatch
Notes
- All subprocess calls run in daemon threads — GUI never freezes
- Flash ROM page has its own inline console (separate from ADB Terminal console)
- IMEI paths use MediaTek
by-name— for Qualcomm editimei.pytobootdevice/by-name/ adb kill-serverruns automatically on app exit
Unified Tool v5.6
REALME UNIFIED TOOL PRO v5.6
What's New in v5.6
- Flash ROM — Inline Console — real-time step-by-step output inside the Flash ROM page itself (reboot status, vbmeta, delete/create partitions, per-image flash with file size, wipe phase)
- Boot Flasher merged into Flash ROM — Flash Boot Image removed from sidebar; now lives as the 3rd tab inside Flash ROM with partition selector (boot / recovery / vendor_boot / init_boot / dtbo)
- Exact partition command sequence — delete/create logical partitions now follow the exact order: all
_aslots first, then all_bslots, matching the official flash script - Double-reboot bug fixed —
clean_flash()no longer issues its ownfastboot reboot fastboot; reboot is handled exclusively byflash_port_rom()based on device state selection - Silent PyInstaller cleanup — "Failed to remove temporary directory" dialog on exit is gone;
adb kill-serverruns on exit to release file locks before_MEItemp folder cleanup - Thread error visibility —
run_in_threadnow catches and logs all background exceptions to the console instead of swallowing them silently