Dioxamine lets you run ADB, Scrcpy, and Fastboot directly from your Android phone or tablet. Connect another device via USB OTG or Wireless ADB (Wi-Fi) to mirror screens with full touch control, flash partitions, sideload, unlock bootloaders, manage files and apps, or run custom plugins. No PC or root required.
| ADB Tools | Process Telemetry | Screen Mirroring | Fastboot Flasher | App Settings |
|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
View Full Screenshots Gallery (All 12 Features) →
It focuses on:
- PC-free control: full ADB, Fastboot, and Scrcpy client running phone-to-phone
- flashing & recovery: flash images, live-boot recoveries/kernels, and unlock bootloaders over USB OTG
- non-intrusiveness: no root or client app needed on the connected device
- extensibility: build and install custom tools with the HTML/JS plugin engine
⚠️ Device compatibility notice: Scrcpy video streaming depends on the capabilities of both the target and slave device. While screen mirroring was successfully tested on the developer's device, it may not work on every Android device. Devices without compatible hardware video decoding support, or configurations that are not supported by the device's decoder, may fail to start streaming or produce decoding errors. If mirroring fails, try changing the video codec, resolution, FPS, or other streaming settings.
- Real-time display mirroring with full multi-touch and hardware key control
- Audio forwarding (Android 11+)
- Camera streaming (Android 12+; front and rear cameras, flashlight/torch toggle, high-FPS modes)
- Mirroring with target screen off (saves battery and reduces heat)
- Touchpad & PC keyboard mode via UHID simulation
- Configurable codecs (H.264, H.265 / HEVC, AV1), bitrate, resolution, and FPS
- Flash partition images (
boot,recovery,vendor_boot,init_boot,system, etc.) - Live boot images (
fastboot boot <image>) to test custom kernels or recoveries without flashing - Unlock & lock bootloader state directly from your phone
- Variable inspector (
getvar all, check current slot A/B) - Interactive Fastboot shell for raw commands
- Process manager: live CPU & RAM usage telemetry, process inspector, search filter, Force Stop, and PID termination
- Miscellaneous tools: display density (DPI) & resolution changer, screen orientation, stay awake, demo mode, touch visualization, window animation scale, battery emulation, and deep link URL launcher
- File manager: browse target filesystem, upload, download, and manage storage
- Package manager: install split APKs, debloat/disable system apps, extract and pull APKs
- Reboot menu: one-tap reboot to System, Recovery, Bootloader, FastbootD, EDL, or Power Off
- Sideload & rescue: flash OTA packages (
.zip) viaadb sideloador restore bricked devices - Screenshot capture: take high-res screenshots pulled directly from the target frame buffer
- Interactive ADB shell
- Run custom modular tools built with HTML5, CSS, and JavaScript inside a sandboxed WebView
- Direct JavaScript Bridge API for shell commands, file push/pull, port forwarding, and Material 3 theming
- Install third-party
.zipplugins or build your own - Check out the Terminal Plugin or read the Plugin Development Guide
- Host Device: Android 7.0+ (API 24+)
- Target Device: Android 5.0+ (API 21+)
- Audio forwarding requires Android 11+ (API 30+)
- Camera streaming requires Android 12+ (API 31+)
- Wireless ADB QR code pairing requires Android 11+ (API 30+)
Make sure USB debugging is enabled on the target device.
On Xiaomi / HyperOS / MIUI devices, you must also enable USB debugging (Security Settings) in Developer Options to allow touch control and input injection.
Full documentation, guides, and API specifications are available in the Dioxamine Book:
- User Guide
- Plugin Development
Clone the repository recursively (to include the embedded scrcpy submodule):
git clone --depth 1 --recurse-submodules https://github.com/rhythmcache/Dioxamine.git
cd Dioxamine
export JAVA_HOME=/path/to/java
export ANDROID_NDK_ROOT=/path/to/android/ndk
./gradlew assembleDebugRequirements:
- JDK 17+
- Android SDK (API 37)
- Android NDK (
ANDROID_NDK_HOMEset)
Contributions are welcome! If you would like to contribute code, report bugs, or help translate Dioxamine into your language, feel free to open an issue or pull request.
We want Dioxamine to be accessible in as many languages as possible.
- English (
en) - default - Simplified Chinese (
zh-CN) - @riyousa - Hindi (
hi) - @rhythmcache - Russian (
ru) - @LorianL98
Fork this repository and clone your fork locally:
git clone https://github.com/<your-username>/Dioxamine.git
cd Dioxamine
git checkout -b translate-<language>- Create a new folder under
app/src/main/res/:(e.g.,app/src/main/res/values-<locale>/
values-esfor Spanish,values-rufor Russian,values-zh-rCNfor Simplified Chinese,values-pt-rBRfor Brazilian Portuguese) - Copy the base strings from
app/src/main/res/values/strings.xmlinto your new folder:app/src/main/res/values-<locale>/strings.xml. - Translate the strings inside
<string name="...">Your Translation</string>.Note:
- Keep placeholders like
%s,%d,%1$s, HTML tags, and XML entities (&,\') unchanged. - AI / LLM Translations: Using LLMs (e.g. ChatGPT, Claude, Gemini) to assist or draft translations is totally allowed! However, please manually review and refine the output. LLMs often generate overly formal, archaic, or literal translations that aren't commonly spoken in daily conversation or standard mobile apps. Please adapt the phrasing so it feels natural, casual, and intuitive for native speakers.
- Keep placeholders like
- In
app/src/main/res/values/strings.xml, add a string resource for your language's native name (endonym) withtranslatable="false"(do not translate it in other language folders):<string name="settings_language_spanish" translatable="false">Español</string>
- In
app/src/main/kotlin/io/github/rhythmcache/dioxamine/settings/SupportedLanguages.kt, add an entry to thesupportedLanguageslist:LanguageOption(R.string.settings_language_spanish, "es"),
- Under the Translations section above in
README.md, add your language checkmark:- [x] Spanish (`es`) - [@your-github-username](https://github.com/your-github-username)
- Commit your changes, push to your fork, and submit a Pull Request:
git add . git commit -m "i18n: add Spanish translation" git push origin translate-spanish
- Telegram Channel: t.me/tr1ple_fault
- Issues & Suggestions: GitHub Issues
Hii! I'm rhythmcache, the developer of Dioxamine.
If you like this project, consider supporting me by sponsoring the project or buying me a coffee. It really helps me continue working on it!
Copyright (C) 2026 rhythmcache
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.





