SD Flasher

December 28, 2025 ยท View on GitHub

Home Screen Confirm Dialog Flashing Progress

Flash disk images to SD cards directly from your Android device

Latest Release Downloads Android 7.0+ Root Required


Features

  • ๐Ÿš€ Direct block device writing - Flash images directly to SD cards at maximum speed
  • ๐Ÿ“ฆ Compressed image support - Handles .img, .img.gz, .img.xz, and .zip files
  • ๐Ÿ“Š Real-time progress - Live speed, ETA, and progress tracking
  • โšก Fast writes - 4MB buffer for optimal performance
  • ๐Ÿ›ก๏ธ Safety first - Confirmation dialogs and partition warnings
  • ๐ŸŽจ Material You - Modern UI with dynamic color support

Requirements

  • Android 7.0+ (API 24)
  • Root access (Magisk, KernelSU, or similar)
  • SD card slot or USB card reader

Installation

Download

Download the latest APK from the Releases page.

Build from source

git clone https://github.com/theblazehen/sd_flasher.git
cd sd_flasher
./gradlew assembleDebug

The APK will be at app/build/outputs/apk/debug/app-debug.apk

Usage

  1. Grant root access when prompted
  2. Select an image file using the file picker
  3. Select the target SD card from the device list
  4. Tap "Flash Image" and confirm the warning
  5. Wait for completion - do not remove the SD card!

Supported Image Formats

FormatExtensionNotes
Raw Image.imgDirect write, fastest
GZip Compressed.img.gz, .gzCommon for RPi images
XZ Compressed.img.xz, .xzHigh compression ratio
ZIP Archive.zipFirst .img file extracted

Safety

โš ๏ธ Warning: This app writes directly to block devices. Double-check your target device before flashing!

The app includes several safety measures:

  • Only removable devices are shown (internal storage is excluded)
  • Partition warnings displayed for devices with existing data
  • Two-step confirmation before flashing
  • Device is unmounted before writing

Why Root?

Android's security model prevents apps from writing to raw block devices. Root access is required to:

  • Access /dev/block/* devices
  • Unmount mounted partitions
  • Write directly to storage hardware

Tech Stack

  • Kotlin + Jetpack Compose - Modern Android UI
  • libsu 6.0.0 - Root shell and RootService by topjohnwu
  • Apache Commons Compress - Decompression support
  • Hilt - Dependency injection
  • Material 3 - Dynamic theming

Building

Prerequisites

  • Android Studio Hedgehog or newer
  • JDK 17
  • Android SDK 35

Debug build

./gradlew assembleDebug

Release build

./gradlew assembleRelease

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

License

GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007

Copyright (C) 2025

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

Acknowledgments


Made with โค๏ธ for the Raspberry Pi and embedded Linux community