◈ PHẦN 1: KÍCH HOẠT NHANH TỪ CÀI ĐẶT VÀ MÃ QUAY SỐ (USSD)
1. Kích hoạt dịch vụ VoLTE từ phía nhà mạng viễn thông
- 👉 Bản chất: Trạm phát sóng (eNodeB) chỉ cấp profile IMS khi số thuê bao đã đăng ký tính năng trên hệ thống HLR/HSS.
- ✅ Thực hiện:
• Viettel: Soạn tinHDCALLgửi191
• VinaPhone: Soạn tinWICALLgửi888hoặcHD CALLgửi888
• MobiFone: Soạn tinDK VOLTEgửi999
2. Mở công tắc cuộc gọi VoLTE trong Cài đặt SIM
- 👉 Bản chất: Kích hoạt tính năng gọi trên hạ tầng 4G khi phần mềm hệ thống không tự bật mặc định.
- ✅ Thực hiện: Vào Cài đặt > Mạng di động / Thẻ SIM > Chọn thẻ SIM > Bật mục Cuộc gọi VoLTE (VoLTE Calls). Đảm bảo mạng ưu tiên chọn 4G/LTE/5G.
3. Tắt chặn VoLTE Carrier Check bằng mã USSD (Xiaomi / POCO / Redmi)
- 👉 Bản chất: Vô hiệu hóa tính năng ẩn công tắc VoLTE theo danh sách nhà mạng mặc định trên MIUI và HyperOS.
- ✅ Thực hiện: Mở bàn phím gọi điện, nhập mã:
*#*#86583#*#*. Màn hình xuất hiện thông báo "VoLTE Carrier check was disabled" là thành công. Sau đó vào lại Cài đặt SIM để bật công tắc.
4. Bật VoLTE Provisioned trong Menu Thử nghiệm Android
- 👉 Bản chất: Truy cập menu kỹ thuật nội bộ của Android để kiểm tra và ép cờ IMS hoạt động.
- ✅ Thực hiện: Mở bàn phím quay số, nhập
*#*#4636#*#*> chọn Thông tin điện thoại (Phone Info) > Gạt bật mục Khả dụng VoLTE (VoLTE Provisioned). Bấm dấu 3 chấm góc trên > Trạng thái dịch vụ IMS để kiểm tra dòng "Đăng ký IMS: Đã đăng ký".
5. Thêm cấu hình APN IMS thủ công
- 👉 Bản chất: Cung cấp đường dẫn APN định tuyến riêng cho các gói tin thoại và SMS qua giao thức IMS.
- ✅ Thực hiện: Vào Cài đặt SIM > Tên điểm truy cập (APN) > Tạo APN mới với thông số:
• Tên:IMS
• APN:ims
• Loại APN (APN type):ims
• Giao thức APN:IPv4/IPv6
Lưu cấu hình lại và khởi động lại thiết bị.
Hình 1: Kiểm tra trạng thái IMS Service Status đã báo Registered và công tắc VoLTE khả dụng
◈ PHẦN 2: CAN THIỆP QUA SHIZUKU, ADB SHELL VÀ SQLITE TELEPHONY
6. Ép cấu hình IMS qua Shizuku và ứng dụng Pixel IMS (Không Root)
- 👉 Bản chất: Gọi API hệ thống cấp quyền dịch vụ IMS trực tiếp thông qua cơ chế Wireless Debugging mà không cần mở Bootloader.
- ✅ Thực hiện:
1. Kích hoạt Shizuku qua tính năng Gỡ lỗi qua Wi-Fi trên điện thoại.
2. Cài đặt Pixel IMS (hoặc IMS Changer), cấp quyền Shizuku.
3. Bật tùy chọn Enable VoLTE cho từng SIM, chọn override cấu hình sang nhà mạng tương ứng. - 🔗 Công cụ:
• Tải Shizuku: Trang chủ Shizuku (rikka.app)
• Tải Pixel IMS APK: GitHub Kyujin Cho (pixel-volte-patch)
7. Gán cờ cài đặt hệ điều hành qua ADB Shell Settings (PC)
- 👉 Bản chất: Ghi đè tham số trực tiếp vào bảng cấu hình
globalcủa Android. - ✅ Thực hiện: Bật Gỡ lỗi USB (USB Debugging), mở terminal gõ:
adb shell settings put global volte_vt_enabled 1
adb shell settings put global carrier_volte_available 1
adb shell settings put global carrier_wfc_ims_available 1 - 🔗 Công cụ: Google Android SDK Platform-Tools (ADB & Fastboot)
8. Sửa trực tiếp cơ sở dữ liệu Telephony Provider (Yêu cầu Root)
- 👉 Bản chất: Ép dữ liệu bảng SQLite mà hệ thống Android dùng để nạp thông số SIM lúc khởi động.
- ✅ Thực hiện: Chạy lệnh sqlite trực tiếp từ shell:
adb shell
su
sqlite3 /data/user_de/0/com.android.providers.telephony/databases/telephony.db "UPDATE siminfo SET enable_volte=1, vt_ims_enabled=1 WHERE sim_id=1;" - 🔗 Công cụ: Cần cài đặt binary SQLite3 (có sẵn trong gói Busybox của Magisk/KernelSU).
9. Sử dụng Module Magisk / KernelSU / APatch
- 👉 Bản chất: Tự động hóa quá trình mount không chạm (systemless) để inject cấu hình IMS CarrierConfig theo từng dòng máy như Sony, Sharp, Pixel, LG.
- ✅ Thực hiện: Cài đặt qua trình quản lý root các module phổ biến như VoLTE Enabler hoặc Pixel VoLTE Patch rồi khởi động lại thiết bị.
- 🔗 Công cụ:
• Magisk: GitHub TopJohnWu Magisk
• Module VoLTE Enabler: Magisk Alt Repo
10. Nạp ROM Quốc Tế (Global) hoặc Custom ROM có sẵn cấu hình IMS
- 👉 Bản chất: Thay thế toàn bộ firmware nội địa bị loại bỏ thư viện IMS bằng bản ROM quốc tế chuẩn (hoặc ROM AOSP đã patch sẵn policy).
- ✅ Thực hiện: Mở khóa Bootloader, nạp các bản ROM như ROM Global (qua Mi Flash Tool cho Xiaomi, SamFw Tool / Odin cho Samsung) hoặc các Custom ROM ổn định như LineageOS, crDroid, PixelOS.
- 🔗 Công cụ:
• Xiaomi Flash Tool: Mi Flash Tool Official
• Odin Tool Samsung: Odin Download
◈ PHẦN 3: GIAO TIẾP COM PORT, BASEBAND NV & PROFILE MODEM QUALCOMM
11. Kích hoạt cổng Diag COM Port và nạp MBN Profile qua Qualcomm PDC Tool
- 👉 Bản chất: Ghi đè file MBN cấu hình sóng của modem Qualcomm sang profile tương thích băng tần Việt Nam (như Row_Generic, Commercial-DT).
- ✅ Thực hiện:
1. Mở cổng Diag trên điện thoại: adb shell su -c setprop sys.usb.config diag,serial_cdev,rmnet,adb
2. Mở công cụ PDC trong bộ phần mềm QPST trên máy tính.
3. Chuột phải chọn Deactivate profile hiện tại của Sub0/Sub1.
4. Chọn profile tương thích (ví dụCommercial-DT-VOLTEhoặc profile trích từ máy Global), chuột phải chọn SetSelectedConfig cho cả Sub0 và Sub1, sau đó nhấn Activate. - 🔗 Công cụ:
• Bộ công cụ QPST (Qualcomm Product Support Tool): Tải bản QPST 2.7.496 trở lên.
• Qualcomm USB Diagnostic Drivers: Cài đặt driver Qualcomm HS-USB Android DIAG 9091/901D.
12. Can thiệp NV Items bằng QXDM / EFS Professional qua COM Port
- 👉 Bản chất: Chỉnh sửa các thanh ghi Non-Volatile (NV) quản lý tính năng mạng trong bộ nhớ modem baseband.
- ✅ Thực hiện: Kết nối qua cổng Diag Port trên công cụ QXDM NV Manager, can thiệp các NV Item:
•NV 6828: Kích hoạt đầy đủ băng tần LTE (B1, B3, B7, B8, B20, B28...).
•NV 67218: Gán giá trị1để cho phép đăng ký IMS.
• Chỉnh sửa Voice Domain Preference sang chế độCS Voice preferred, PS Voice secondaryhoặcIMS PS Voice only. - 🔗 Công cụ: Qualcomm QXDM Professional / EFS Professional Tool.
13. Gửi lệnh AT Commands trực tiếp vào Modem Virtual COM Port
- 👉 Bản chất: Ép modem kích hoạt kênh thoại 4G mà không phụ thuộc vào lớp điều khiển trung gian của Android RIL (hoạt động tốt trên modem Mediatek, Qualcomm và Unisoc).
- ✅ Thực hiện: Sử dụng PuTTY hoặc Tera Term kết nối vào cổng Modem/AT Port với tốc độ baud 115200, truyền các tập lệnh:
AT+COPS=0
AT+VOLTE=1
AT+CEVDP=1
AT+CIREP=1 - 🔗 Công cụ: PuTTY Terminal hoặc Tera Term.
14. Trích xuất, sửa đổi và Flash lại phân vùng EFS (modemst1, modemst2, fsg)
- 👉 Bản chất: Chèn trực tiếp tập tin
carrier_policy.xmlđã cấu hình cho nhà mạng Việt Nam vào thư mục policyman trong phân vùng EFS gốc. - ✅ Thực hiện:
1. Sao lưu phân vùng EFS qua ADB: adb shell "su -c dd if=/dev/block/bootdevice/by-name/modemst1 of=/sdcard/modemst1.img"
adb shell "su -c dd if=/dev/block/bootdevice/by-name/modemst2 of=/sdcard/modemst2.img"
2. Dùng Qualcomm EFS Explorer (trong QPST) duyệt vào đường dẫn/policyman/, nạp file XML tương thích mạng Việt Nam.
3. Nạp lại phân vùng qua lệnhddhoặcfastboot flash. - 🔗 Công cụ: QPST EFS Explorer.
15. Patch trực tiếp file carrierconfig hoặc carrier_policy trong /carrier hoặc /vendor
- 👉 Bản chất: Chỉnh sửa quy tắc nhận diện Carrier Identification của hệ thống để mở khóa tính năng IMS theo mã nhà mạng (MCC/MNC).
- ✅ Thực hiện: Mount phân vùng
/vendorhoặc/carrierở chế độ ghi (Read-Write), định vị file XML ứng với mạng (Viettel:45204, VinaPhone:45202, MobiFone:45201) và bổ sung: <boolean name="carrier_volte_available_bool" value="true" />
<boolean name="carrier_volte_default_on_bool" value="true" />
<boolean name="carrier_wfc_ims_available_bool" value="true" />
Hình 2: Thao tác lựa chọn và kích hoạt profile MBN tương thích trong Qualcomm PDC Tool
◈ PHẦN 4: BIÊN DỊCH SOURCE CODE AOSP, KERNEL & VENDOR PORTING
16. Sửa Overlay Frameworks Core khi biên dịch Android ROM (AOSP)
- 👉 Bản chất: Mở tính năng thoại 4G mặc định ngay trong mã nguồn hệ thống trước khi đóng gói file ZIP cài đặt.
- ✅ Thực hiện: Trong thư mục mã nguồn Android, chỉnh sửa file
frameworks/base/core/res/res/values/config.xml(hoặc overlay device tree tương ứng): <bool name="config_carrier_volte_available">true</bool>
<bool name="config_device_volte_available">true</bool>
<bool name="config_carrier_wfc_ims_available">true</bool>
17. Patch thông số Radio Interface Layer (RIL) trong Device Tree / build.prop
- 👉 Bản chất: Định cấu hình các thuộc tính hệ thống điều khiển radio daemon khi hệ điều hành tải driver modem.
- ✅ Thực hiện: Chèn vào file
system.propcủa device tree hoặc chỉnh sửa trong/vendor/build.prop: persist.vendor.radio.volte_enabled=1
persist.dbg.volte_avail_ovr=1
persist.dbg.vt_avail_ovr=1
persist.dbg.wfc_avail_ovr=1
persist.radio.ims_registered=1
18. Ghép nối Vendor Blobs & Khai báo HAL Manifest (Vendor Porting)
- 👉 Bản chất: Xử lý triệt để lỗi thiếu service IMS HAL khi trích xuất hoặc port ROM giữa các dòng máy có cùng SoC.
- ✅ Thực hiện: Trích xuất các thư viện chia sẻ RIL/IMS từ ROM chuẩn (ví dụ
lib-ims.so,vendor.qti.hardware.radio.ims@...so) đưa vào/vendor/lib64/, đồng thời khai báo dependency HAL tương ứng trongvendor/etc/vintf/manifest.xml.
19. Biên dịch lại Kernel: Kích hoạt Driver Netfilter & IMS IPsec Tunneling
- 👉 Bản chất: Khắc phục lỗi kernel bị tắt các driver mã hóa và đường hầm IPsec, khiến các gói dữ liệu thoại SIP/IMS qua mạng ảo bị ngắt kết nối.
- ✅ Thực hiện: Mở cấu hình kernel (
defconfigcủa thiết bị), kích hoạt các cờ mạng chuyên dụng: CONFIG_XFRM=y
CONFIG_XFRM_USER=y
CONFIG_NET_KEY=y
CONFIG_INET_ESP=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_NETFILTER_XT_MATCH_ESP=y Build lại kernel image và flash vào phân vùng boot/vendor_boot.
20. Patch Carrier Policy Binary trong Image Modem trước khi đóng gói Firmware
- 👉 Bản chất: Sửa đổi trực tiếp dữ liệu phân vùng modem nhị phân trước khi flash vào thiết bị.
- ✅ Thực hiện: Sử dụng công cụ giải nén image modem (
NON-HLOS.binhoặcmodem.img), mount cấu hình, bổ sung quy tắc MCC/MNC của các nhà mạng Việt Nam vào thư mụcimage/modem_pr/policyman/, sau đó đóng gói lại file image nguyên bản để nạp qua Fastboot.
◈ HỖ TRỢ KỸ THUẬT & XỬ LÝ PHẦN MỀM CHUYÊN SÂU
Nếu bạn gặp khó khăn trong quá trình kích hoạt Diag Mode, nạp Profile MBN bằng QPST, cứu bootloader hoặc can thiệp Vendor/ROM cho các dòng máy xách tay khó nhận mạng, vui lòng kết nối kỹ thuật trực tiếp để được hỗ trợ:
- 👉 Website: giaimadidong.com
- 👉 Điện thoại / Hotline: 0969900339
- 👉 Telegram hỗ trợ kỹ thuật: @haudanggsm