מדריך | VoLTE במכשיר Qin F21 Pro - בדרך פשוטה יותר ללא צורך במודול -אפשר להסיר רוט לאחר מכן
-
המדריך הוא נסיוני - לכן אבקש שכל מי שעובד לו או לא עובד לו שיכתוב בתגובות ולציין באיזה ספק הוא ואיזה גירסה הוא משתמש כדי שנדע מה צריך לתקן.
קודם כל תודתי נתונה ל @lilo159 שהוא בעצם גם יצר את הסקריפט הזה ועזר בדרך אליו ובדק את כל המתודה ישר והפוך בגירסאות שונות ומכשירים שונים כדי לוודא שאנחנו לא שוכחים כלום ושזה עובד.
כמו כן תודתי נתונה ל @RearmostPant23 שעזר גם בבדיקה של השיטה הזאת.- לשמור את הקוד בקובץ בשם volte-install.sh במכשיר עצמו : ניתן להורדה מכאן volte-install.sh.zip או לחילופין לעשות העתק הדבק מכאן:
#!/system/bin-sh # # --- Comprehensive VoLTE & IMS Enabler Script for MTK Devices (v4) --- # # This script uses a systemless approach to enable VoLTE. # IT DOES NOT MODIFY THE /system PARTITION. # # 1. Sets persistent system properties for VoLTE/VoWiFi. # 2. Dynamically gets the current carrier's information. # 3. Checks if an IMS APN already exists in the live database. # 4. If missing, inserts the IMS APN directly using the Content Provider. # 5. Sends AT commands to the modem to enable VoLTE. # 6. Conditionally applies the SGS SMS fix ONLY for the Cellcom network. # # Must be run as root. # echo "--- Comprehensive VoLTE & IMS Enabler (v4 - Systemless) ---" echo "" # --- 0. PRE-FLIGHT CHECK --- if [ "$(id -u)" -ne 0 ]; then echo "[ERROR] This script must be run as root. Please run 'su' first." exit 1 fi # --- 1. SETTING SYSTEM PROPERTIES --- echo "[STEP 1] Setting persistent system properties for VoLTE/VoWiFi..." setprop persist.vendor.mtk.volte.enable 1 setprop persist.vendor.radio.volte_state 1 setprop persist.vendor.mtk.wfc.enable 1 setprop persist.dbg.volte_avail_ovr 1 setprop persist.vendor.radio.selfreg 1 setprop persist.vendor.service.atci.pct.mode 1 setprop persist.vendor.mtk_dynamic_ims_switch 0 echo "--> System properties set successfully." echo "" # --- 2. DYNAMICALLY ADDING IMS APN VIA CONTENT PROVIDER --- echo "[STEP 2] Checking and adding IMS APN to live database..." # Get the MCC/MNC from the active SIM card OPERATOR_NUMERIC=$(getprop gsm.sim.operator.numeric) if [ -z "$OPERATOR_NUMERIC" ]; then echo "[WARNING] Could not detect SIM operator. Skipping APN insertion." else MCC=${OPERATOR_NUMERIC:0:3} MNC=${OPERATOR_NUMERIC:3} echo "[INFO] Detected Operator: MCC=$MCC, MNC=$MNC" # Check if an IMS APN already exists for this operator to avoid duplicates IMS_EXISTS=$(content query --uri content://telephony/carriers --where "numeric = '$OPERATOR_NUMERIC' AND type LIKE '%ims%'" | grep -c "Row:") if [ "$IMS_EXISTS" -gt 0 ]; then echo "--> IMS APN already exists for this operator. No action needed." else echo "--> IMS APN not found. Inserting into database..." content insert --uri content://telephony/carriers \ --bind name:s:ims \ --bind apn:s:ims \ --bind mcc:s:$MCC \ --bind mnc:s:$MNC \ --bind numeric:s:$OPERATOR_NUMERIC \ --bind type:s:ims \ --bind protocol:s:IPV4V6 \ --bind roaming_protocol:s:IPV4V6 \ --bind carrier_enabled:i:1 >/dev/null 2>&1 echo "--> IMS APN has been added successfully." fi fi echo "" # --- 3. TRIGGERING THE MODEM WITH AT COMMANDS --- echo "[STEP 3] Finding modem and sending AT command sequence..." PID=$(pidof mtkfusionrild) if [ -z "$PID" ]; then echo "[ERROR] Could not find mtkfusionrild process. Skipping AT commands." else TTY_LIST=$(lsof -p "$PID" | grep /dev/pts | awk '{print $NF}' | sort -u) RESPONSIVE_TTY="" for TTY in $TTY_LIST; do echo -e "AT\\r" > "$TTY" sleep 0.3 if [ -n "$(timeout 1 cat "$TTY" | grep OK)" ]; then RESPONSIVE_TTY=$TTY break fi done if [ -z "$RESPONSIVE_TTY" ]; then echo "[FAILURE] Could not find a responsive AT command TTY port." else echo "[SUCCESS] Found responsive TTY at: $RESPONSIVE_TTY" echo "[INFO] Sending VoLTE trigger and conditional SMS Fix..." # The confirmed Trigger Command echo -e "AT+ECFGSET=\"operator_code\",\"16386\"\\r" > "$RESPONSIVE_TTY" sleep 0.5 # Conditional SGS Command for SMS compatibility ONLY on Cellcom (MNC 02) if [ "$MNC" = "02" ]; then echo "[INFO] Cellcom network detected. Applying SGS SMS Fix..." echo -e "AT+ECFGSET=\"sdm_profile_prefer_sms_over_sgs_to_ims\",\"1\"\\r" > "$RESPONSIVE_TTY" sleep 0.5 fi # The "Apply" Command to save all settings echo -e "AT+EIMSCFG=1,0,0,0,1,1\\r" > "$RESPONSIVE_TTY" sleep 0.5 # Clear the buffer timeout 1 cat "$RESPONSIVE_TTY" > /dev/null echo "--> VoLTE AT command sequence sent successfully." fi fi echo "" # --- 4. FINAL INSTRUCTIONS --- echo "--- SCRIPT FINISHED ---" echo "All VoLTE enablement steps have been completed." echo "The VoLTE icon should appear shortly. For changes to take full effect, a REBOOT is still recommended." echo "-----------------------" exit 0
אם אתם בוחרים להעתיק ולהדביק אז:
@lilo159 אומר שאפשר פשוט אחרי שנכנסים לadb shell כותבים פקודת su ולאחר מכן להדביק אותו בshell וזה גם יעבוד.
לחילופין אפשר להתקין אפליקציית טרמינל כמו Termux ולעשות את זה שם כנ"ל להדביק בלי פתיחת מצב מפתחים וadb shell ללא צורך במחשב וזה גם יעבוד.
אפשר גם ליצור את הקובץ כך דרך הadb shell:
cat > volte-install.sh להדביק את הקוד ללחוץ CTRL+C
או לחילופין: מי שעובד ב Windows לשמור אותו דרך עורך כמו notepad++ רק חשוב מאוד לשמור את הקובץ בתור קידוד unix אחרת זה לא יעבוד (בnotepad++ זה נמצא תחת edit->EOL-> unix.) ולהעתיק למכשיר
- לאחר ששמרתם אותו להכנס ל shell:
adb shell su cd <הנתיב שבו שמרתם את הקובץ> sh volte-install.sh
אם זה עובד לכם, צריך להופיע סמל HD למעלה והוא הוא אמור לחזור אחרי חזרה ממצב טיסה וגם אחרי Reboot
אם זה עובד לכם, זה צריך להמשיך לעבוד גם אחרי צריבת מחיצת בוט לא מושרש גם.בהצלחה!
-
@urielk תודה רבה על המדריך שלך, כתבתי סקריפט והוא רץ בהצלחה אבל עדיין אין HD. האם יש עוד שלב שעליי לעשות?
-
@urielk אני משתמש בגרסה 2.0.8 וספק הסלולר שלי הוא Triple Tel שזה ב-mvno שכל הזמן מחליף רשתות אני
-
@urielk רק מוודא המדריך הזה לא קשור לקודם נכון?
אפשר גם בלי להוסיף את השורה בהגדרות של השיחות 4g? -
@samtee לא שמעתי על הספק הזה זה בארץ? אבל להערכתי הבעיה היא הגדרת
apn ims צריך ims לכל mncmcc אפשרי שלך -
@samtee לא שמעתי על הספק הזה זה בארץ? אבל להערכתי הבעיה היא הגדרת
apn ims צריך ims לכל mncmcc אפשרי שלך -
@urielk האלוףףףףף אין עליך !!!!!
עשיתי את המדריך הזה על שתי מכשירים של חברים ועובד פרפקט!!!!
(אחד בגולן ואחד בפרטנר)
לקח בדיוק חצי דקה!!!והקודם לקח לי שעה וחצי !!!
להסיר את המג'יסק מהסיסטם להתקין לצרוב בהתקנה ישירה ואז לשדרג ל29 לצרוב שוב ואז בתפריט מהנדסים וכו' ולא עבד אז גם החלפתי imei לייתר ביטחון וגם לא עזר ואז להוסיף ims כי הקודם היה אפור בגירסה ולא עזר אז הוספתי בmt ורק אז סוף סוף קפץ הhd
וגם זה כמובן היה רק בזכותך!!! -
תודה רבה על המדריך!!
אני עשיתי את המדריך הקודם, ועבד לי HD, רק שאחרי הפעלה זה ברח.
אז ניסתי את המדריך פה, וזה לא מביא לי שום תוצאה.
מצורף צילום מסך-- מה לא עשיתי נכון?
-
תודה רבה על המדריך!!
אני עשיתי את המדריך הקודם, ועבד לי HD, רק שאחרי הפעלה זה ברח.
אז ניסתי את המדריך פה, וזה לא מביא לי שום תוצאה.
מצורף צילום מסך-- מה לא עשיתי נכון?
@לילות-כימים תלחץ 7 בשביל שיגש לרוט ואז לא צריך su (אם יש לך מג'יסק רגיל אז תצטרך לאשר ואם בסיסים אז שים לב שהמסך נהיה אפור לשניה)
-
@לילות-כימים תלחץ 7 בשביל שיגש לרוט ואז לא צריך su (אם יש לך מג'יסק רגיל אז תצטרך לאשר ואם בסיסים אז שים לב שהמסך נהיה אפור לשניה)
@נוחעם-FM
משום מה 7 לא עובד לי -
@נוחעם-FM
משום מה 7 לא עובד לי@לילות-כימים ערכתי
או שאין לך רוט או שלא אישרת או שמוגדר על שלילת הרשאות רוט לadb במג'יסק -
תודה רבה על המדריך!!
אני עשיתי את המדריך הקודם, ועבד לי HD, רק שאחרי הפעלה זה ברח.
אז ניסתי את המדריך פה, וזה לא מביא לי שום תוצאה.
מצורף צילום מסך-- מה לא עשיתי נכון?
@לילות-כימים זה נראה שהשל לא נכנס עדיין לרוט (בדרך כלל אחרי שכותבים su, השורה הבאה תהיה עם # במקום $)