Đọc hết trang này trước khi cắm cáp. Flash sai bản build, sai phân vùng hoặc rút cáp giữa chừng đều có thể làm máy không khởi động được. Bạn tự chịu trách nhiệm với thiết bị của mình; hãy chắc chắn rằng bạn hiểu từng bước trước khi thực hiện.
Bạn cần chuẩn bị gì
- Máy tính Windows, macOS hoặc Linux đã cài ADB & Fastboot (Android SDK Platform Tools bản mới nhất).
- Cáp USB chất lượng tốt — ưu tiên cáp theo máy, cắm cổng USB sau của PC, tránh dùng hub.
- Pin còn tối thiểu 60%.
- Tài khoản NothingsVN đã đăng nhập để tải build và lấy mã OTP flash.
- Khoảng 1 giờ rảnh và một chiếc điện thoại khác để tra cứu khi cần.
Bước 1 — Xác định chính xác thiết bị
Đây là bước quan trọng nhất. Cùng một dòng máy có thể có nhiều codename và nhiều region khác nhau; flash nhầm build của biến thể khác là nguyên nhân brick phổ biến nhất.
adb devices
adb shell getprop ro.product.device
adb shell getprop ro.product.model
adb shell getprop ro.build.version.release
adb shell getprop ro.build.version.security_patch
Ghi lại ro.product.device (codename), model và phiên bản Android nền đang chạy. Ở trang Tải ROM, chỉ tải đúng thư mục khớp cả ba thông tin này.
Bước 2 — Sao lưu dữ liệu
Mở khoá bootloader sẽ xoá toàn bộ dữ liệu máy, không có cách nào lấy lại. Hãy sao lưu:
- Ảnh, video, tài liệu — chép sang máy tính hoặc đồng bộ cloud.
- Danh bạ, tin nhắn, lịch.
- Mã 2FA của các ứng dụng xác thực (Google Authenticator, Authy…) — xuất mã dự phòng trước khi xoá máy, nếu không bạn sẽ mất quyền truy cập tài khoản.
- Ví điện tử, ứng dụng ngân hàng: ghi lại cách khôi phục.
Bước 3 — Mở khoá bootloader
Mỗi hãng có quy trình riêng và bạn phải theo đúng công cụ chính chủ của hãng:
- Xiaomi: liên kết tài khoản Mi với thiết bị trong Cài đặt → Tuỳ chọn nhà phát triển → Trạng thái Mi Unlock, sau đó dùng công cụ Mi Unlock trên Windows. Xiaomi áp dụng thời gian chờ bắt buộc theo chính sách hiện hành.
- OPPO / realme: dùng ứng dụng In-depth Test (Deep Testing) chính thức của hãng để lấy quyền mở khoá.
- OnePlus: bật OEM unlocking, khởi động vào fastboot rồi chạy lệnh mở khoá; một số model đời cũ cần lấy unlock token từ hãng trước.
Sau khi được cấp quyền, quy trình chung là:
adb reboot bootloader
fastboot devices
fastboot flashing unlock
Máy sẽ hỏi xác nhận trên màn hình — dùng phím âm lượng để chọn, phím nguồn để đồng ý. Sau đó máy tự xoá dữ liệu và khởi động lại. Thiết lập lại máy tối thiểu, bật lại Tuỳ chọn nhà phát triển và Gỡ lỗi USB.
Bước 4 — Tải build và kiểm tra mã hash
Đăng nhập rồi vào trang Tải ROM, chọn thư mục theo hãng → model → phiên bản Android nền. Tải xong, luôn kiểm tra mã hash trước khi flash — file tải lỗi là nguyên nhân hàng đầu gây treo giữa chừng.
# Windows PowerShell
Get-FileHash .\NothingsVN-<codename>-<version>.zip -Algorithm SHA256
# Linux
sha256sum NothingsVN-<codename>-<version>.zip
# macOS
shasum -a 256 NothingsVN-<codename>-<version>.zip
Đối chiếu kết quả với giá trị SHA256 kèm theo bản build. Chỉ cần lệch một ký tự là phải tải lại, không được flash.
Bước 5 — Lấy mã OTP flash
NothingsVN dùng cơ chế xác thực 2 chiều để chỉ thiết bị của chính bạn mới nạp được ROM. Quy trình:
- Công cụ flash hiển thị Mã phiên (Session Code) dạng
SERIAL-CODENAME-XYZ123. - Trên web, đăng nhập rồi mở Lấy Mã OTP Flash, dán mã phiên vào và bấm tạo mã.
- Hệ thống trả về mã OTP 6 chữ số, hiệu lực 10 phút. Nhập mã này vào công cụ flash.
Mỗi mã phiên chỉ dùng được một lần. Nhập sai OTP quá 5 lần thì phiên bị huỷ và bạn phải tạo phiên mới từ công cụ flash. Không chia sẻ mã OTP cho bất kỳ ai.
Bước 6 — Flash ROM
Đọc file hướng dẫn đi kèm bản build trước, vì mỗi thiết bị có thể yêu cầu thêm bước riêng. Hai cách phổ biến:
Cách A — Fastboot (clean flash)
adb reboot bootloader
fastboot devices
fastboot flash boot boot.img
fastboot flash dtbo dtbo.img
fastboot --disable-verity --disable-verification flash vbmeta vbmeta.img
fastboot -w
fastboot reboot
fastboot -w sẽ xoá sạch dữ liệu người dùng. Bỏ qua lệnh này nếu bạn đang dirty flash.
Cách B — Recovery sideload (dirty flash / cập nhật)
adb reboot sideload
adb sideload NothingsVN-<codename>-<version>.zip
Nếu recovery báo lỗi Signature verification failed, kiểm tra lại xem bạn có đang dùng đúng gói cho thiết bị và đúng Android base hay không.
Clean flash hay dirty flash?
- Clean flash (xoá dữ liệu): bắt buộc khi lần đầu cài NothingsVN, khi đổi Android base (ví dụ A14 lên A15) hoặc khi chuyển từ ROM khác sang.
- Dirty flash (giữ dữ liệu): chỉ dùng khi lên bản mới cùng nhánh, cùng Android base, và ghi chú phát hành không yêu cầu xoá dữ liệu.
Bước 7 — Khởi động lần đầu và kiểm tra
Lần khởi động đầu tiên có thể mất 5–10 phút, đây là chuyện bình thường. Sau khi vào máy, kiểm tra lần lượt:
- Sóng, gọi thử, 4G/5G và nhắn tin.
- Camera trước/sau, quay video, đèn flash.
- Wi-Fi, Bluetooth, NFC, GPS.
- Vân tay, khuôn mặt, loa, mic, cảm biến tiệm cận.
- Sạc nhanh — cắm sạc theo máy và xem tốc độ hiển thị.
Chạy máy khoảng một ngày trước khi khôi phục toàn bộ dữ liệu, để chắc chắn mọi thứ ổn định.
Khắc phục sự cố
Máy tính không nhận thiết bị (adb/fastboot không thấy)
Kiểm tra: đã bật Gỡ lỗi USB chưa, đã bấm "Cho phép" trên màn hình máy chưa, cáp có hỗ trợ truyền dữ liệu không. Trên Windows hãy cài driver USB của hãng và thử cổng USB 2.0 nếu USB 3.0 không ổn định. Chạy adb kill-server rồi adb devices lại.
Treo logo, không vào được hệ thống (bootloop)
Giữ nút nguồn khoảng 15 giây để tắt máy, vào lại fastboot và flash lại đúng gói build, lần này chọn clean flash. Nếu vẫn treo, khả năng cao bạn đã dùng sai build cho biến thể máy — kiểm tra lại codename ở Bước 1.
Mất IMEI hoặc không bắt được sóng
Thường do flash thiếu phân vùng modem/NON-HLOS hoặc dùng firmware khác region. Flash lại đúng gói firmware kèm theo build và tuyệt đối không format phân vùng persist.
Camera lỗi hoặc màn hình đen khi mở
Xoá dữ liệu ứng dụng camera, khởi động lại. Nếu vẫn lỗi, nhiều khả năng firmware nền chưa khớp với build — cập nhật firmware lên đúng phiên bản mà ghi chú phát hành yêu cầu.
Không tạo được mã OTP flash
Mã phiên phải còn ở trạng thái chờ xử lý và chưa từng được dùng. Nếu báo mã không tồn tại hoặc đã xử lý, hãy tạo phiên mới từ công cụ flash. Cũng cần đảm bảo bạn đã đăng nhập đúng tài khoản trên web.
Câu hỏi thường gặp
Cài ROM có mất bảo hành không?
Tuỳ chính sách từng hãng và từng nơi bán. Mở khoá bootloader thường bị ghi nhận lại và có thể bị từ chối bảo hành phần mềm. Hãy cân nhắc trước khi thực hiện.
Có quay lại ROM gốc được không?
Được. Tải firmware stock chính thức của hãng cho đúng model và region, flash bằng công cụ của hãng, sau đó khoá lại bootloader nếu muốn. Lưu ý thao tác này cũng xoá sạch dữ liệu.
Có cài được ứng dụng ngân hàng không?
Một số ứng dụng ngân hàng và ví điện tử kiểm tra trạng thái bootloader và sẽ từ chối hoạt động khi bootloader đã mở. Đây là giới hạn từ phía ứng dụng, không phải lỗi ROM. Nếu bạn phụ thuộc vào những ứng dụng này, hãy cân nhắc kỹ.
Cập nhật ROM có mất dữ liệu không?
Bản cập nhật cùng Android base thường chỉ cần dirty flash và giữ nguyên dữ liệu. Khi nâng Android base (ví dụ A15 lên A16) thì bắt buộc clean flash. Ghi chú của từng bản phát hành sẽ nói rõ điều này.
Vẫn còn vướng ở bước nào? Xem thêm trang Hỗ Trợ để biết cách gửi log và báo lỗi đúng cách.