[Magisk & Guidance] Unlock 5Ghz wifi bands [G fast only] - Moto G8 (Moto G Fast) ROMs, Kernels, Recoveries, &

I don't why Moto banned 5Ghz wifi on G8 family. This is really a stupid decision. But our wifi chip is wcn3390, I'm 100% sure our hardware supports 5Ghz.
Here I provide a method to unlock it on custom ROMs. Because I'm not sure if vendor_overlay could work on Official firmware.
You only need to flash Magisk module, it works on both stock and custom ROMs now.
Step 1 Mount product partition
flash twrp and boot into it. Mount product partition in Mount menu.
Then connect to your PC, run this adb command to make product partition writable.
Code:
adb shell mount -o remount,rw /product
Step 2 Create floder
Run these adb commonds:
Code:
adb shell mkdir /product/vendor_overlay/29/etc/wifi
adb shell chmod -R 755 /product/vendor_overlay/29/etc/wifi
Step 3 Push custom wlan config
Download the WCNSS_qcom_cfg.zip provided by me, unzip it, then copy WCNSS_qcom_cfg.ini to the adb tool root floder.
Run these adb commonds:
Code:
adb push WCNSS_qcom_cfg.ini /product/vendor_overlay/29/etc/wifi/
adb shell chmod -R 644 /product/vendor_overlay/29/etc/wifi/WCNSS_qcom_cfg.ini
Reboot, I think you already unlocked the 5Ghz wifi bands, you could enjoy 433Mbps speed now.
Also provide a kernel which built-in upsteam qcom wifi kernel drivers. But this is not necessary. You could replace it with anykernel or AIK.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}

I will try this as soon as im home, i never knew you had moto's sjll, i thought you were sony only lol

My stock rom for Moto G8/G Fast had this built into it, I had access to 5G access point out of the box, the custom roms I use all have it as well, so...

Moto g8 doesnt have access to 5g networks as far as i know, only g fast. @PimpMy5Ton

I was unable to get the 5Ghz result in my WiFi after following the instructions listed. I am running Havoc-OS 22-12-20 Build (https://forum.xda-developers.com/t/rom-rav-sofia-10-unofficial-havocos-3-12.4165007)
Code:
# dmesg output on config file in system
rav:/ # dmesg | grep -i wcnss
[ 18.838954] ueventd: firmware: loading 'wlan/qca_cld/WCNSS_qcom_cfg.ini' for '/devices/platform/soc/c800000.qcom,icnss/firmware/wlan!qca_cld!WCNSS_qcom_cfg.ini'
[ 18.849240] ueventd: loading /devices/platform/soc/c800000.qcom,icnss/firmware/wlan!qca_cld!WCNSS_qcom_cfg.ini took 10ms
# --- ADB SHELL (TWRP) --- #
# File and directory permissions
sofiar:/ # ls -l /product/vendor_overlay/29/etc/
total 28
drwxr-xr-x 2 root root 4096 2020-12-22 08:35 audio
-rw-r--r-- 1 root root 15269 2020-12-22 08:35 audio_policy_configuration.xml
drwxr-xr-x 2 root root 4096 2020-12-22 08:35 init
drwxr-xr-x 2 root root 4096 2021-01-23 19:10 wifi
sofiar:/ # ls -l /product/vendor_overlay/29/etc/wifi
total 16
-rw-r--r-- 1 root root 12972 2021-01-17 13:15 WCNSS_qcom_cfg.ini
# Sha1sum
sofiar:/ # sha1sum /product/vendor_overlay/29/etc/wifi/WCNSS_qcom_cfg.ini
3bb6d285c81234714266233d5febb100d25c0872 /product/vendor_overlay/29/etc/wifi/WCNSS_qcom_cfg.ini

dylantjb said:
I was unable to get the 5Ghz result in my WiFi after following the instructions listed. I am running Havoc-OS 22-12-20 Build (https://forum.xda-developers.com/t/rom-rav-sofia-10-unofficial-havocos-3-12.4165007)
Code:
# dmesg output on config file in system
rav:/ # dmesg | grep -i wcnss
[ 18.838954] ueventd: firmware: loading 'wlan/qca_cld/WCNSS_qcom_cfg.ini' for '/devices/platform/soc/c800000.qcom,icnss/firmware/wlan!qca_cld!WCNSS_qcom_cfg.ini'
[ 18.849240] ueventd: loading /devices/platform/soc/c800000.qcom,icnss/firmware/wlan!qca_cld!WCNSS_qcom_cfg.ini took 10ms
# --- ADB SHELL (TWRP) --- #
# File and directory permissions
sofiar:/ # ls -l /product/vendor_overlay/29/etc/
total 28
drwxr-xr-x 2 root root 4096 2020-12-22 08:35 audio
-rw-r--r-- 1 root root 15269 2020-12-22 08:35 audio_policy_configuration.xml
drwxr-xr-x 2 root root 4096 2020-12-22 08:35 init
drwxr-xr-x 2 root root 4096 2021-01-23 19:10 wifi
sofiar:/ # ls -l /product/vendor_overlay/29/etc/wifi
total 16
-rw-r--r-- 1 root root 12972 2021-01-17 13:15 WCNSS_qcom_cfg.ini
# Sha1sum
sofiar:/ # sha1sum /product/vendor_overlay/29/etc/wifi/WCNSS_qcom_cfg.ini
3bb6d285c81234714266233d5febb100d25c0872 /product/vendor_overlay/29/etc/wifi/WCNSS_qcom_cfg.ini
View attachment 5196947
Click to expand...
Click to collapse
This is interesting, according to @Beetle84 only G fast supports 5Ghz, can you check the wifi chip with device hw info?

From Googling the difference it looks like the G fast comes with 5Ghz out of the box.
Seems to be the same supported WiFi chip though.

dylantjb said:
From Googling the difference it looks like the G fast comes with 5Ghz out of the box.
Seems to be the same supported WiFi chip though.
View attachment 5197299
Click to expand...
Click to collapse
Oops, I read that wrong. Mine is the wcn3990 and not wc3390.

dylantjb said:
Oops, I read that wrong. Mine is the wcn3990 and not wc3390.
Click to expand...
Click to collapse
Do G8 & G fast share the same official firmware?
Are both of them are rav?

Sjll said:
Do G8 & G fast share the same official firmware?
Are both of them are rav?
Click to expand...
Click to collapse
The Moto G Fast (US, 2020) has model number XT2045-3 which comes under rav in lolinet so they should.

dylantjb said:
The Moto G Fast (US, 2020) has model number XT2045-3 which comes under rav in lolinet so they should.
Click to expand...
Click to collapse
However the G Fast is US only (RETUS) and my Moto G8 is European (RETEU).

dylantjb said:
However the G Fast is US only (RETUS) and my Moto G8 is European (RETEU).
Click to expand...
Click to collapse
Can you dump your partitions and uploaded them?
In twrp:
adb shell mkdir /tmp/dump/
adb shell dd if=/dev/block/by-name/apdp of=/tmp/dump/apdp.img
adb shell dd if=/dev/block/by-name/cid of=/tmp/dump/cid.img
adb shell dd if=/dev/block/by-name/devinfo of=/tmp/dump/devinfo.img
adb shell dd if=/dev/block/by-name/dpo of=/tmp/dump/dpo.img
adb shell dd if=/dev/block/by-name/fsc of=/tmp/dump/fsc.img
adb shell dd if=/dev/block/by-name/fsg_a of=/tmp/dump/fsg_a.img
adb shell dd if=/dev/block/by-name/fsg_b of=/tmp/dump/fsg_b.img
adb shell dd if=/dev/block/by-name/hw of=/tmp/dump/hw.img
adb shell dd if=/dev/block/by-name/kpan of=/tmp/dump/kpan.img
adb shell dd if=/dev/block/by-name/logfs of=/tmp/dump/logfs.img
adb shell dd if=/dev/block/by-name/misc of=/tmp/dump/misc.img
adb shell dd if=/dev/block/by-name/mmcblk0 of=/tmp/dump/mmcblk0.img
adb shell dd if=/dev/block/by-name/mmcblk0rpmb of=/tmp/dump/mmcblk0rpmb.img
adb shell dd if=/dev/block/by-name/msadp of=/tmp/dump/msadp.img
adb shell dd if=/dev/block/by-name/multiimgoem_a of=/tmp/dump/multiimgoem_a.img
adb shell dd if=/dev/block/by-name/multiimgoem_b of=/tmp/dump/multiimgoem_b.img
adb shell dd if=/dev/block/by-name/multiimgqti_a of=/tmp/dump/multiimgqti_a.img
adb shell dd if=/dev/block/by-name/multiimgqti_b of=/tmp/dump/multiimgqti_b.img
adb shell dd if=/dev/block/by-name/prodpersist of=/tmp/dump/prodpersist.img
adb shell dd if=/dev/block/by-name/ramdump of=/tmp/dump/ramdump.img
adb shell dd if=/dev/block/by-name/ramdump_padding_0 of=/tmp/dump/ramdump_padding_0.img
adb shell dd if=/dev/block/by-name/ramdump_padding_1 of=/tmp/dump/ramdump_padding_1.img
adb shell dd if=/dev/block/by-name/ramdump_padding_2 of=/tmp/dump/ramdump_padding_2.img
adb shell dd if=/dev/block/by-name/sp of=/tmp/dump/sp.img
adb shell dd if=/dev/block/by-name/spunvm of=/tmp/dump/spunvm.img
adb shell dd if=/dev/block/by-name/ssd of=/tmp/dump/ssd.img
adb shell dd if=/dev/block/by-name/storsec_a of=/tmp/dump/storsec_a.img
adb shell dd if=/dev/block/by-name/storsec_b of=/tmp/dump/storsec_b.img
adb shell dd if=/dev/block/by-name/uefivarstore of=/tmp/dump/uefivarstore.img
adb shell dd if=/dev/block/by-name/utags of=/tmp/dump/utags.img
adb shell dd if=/dev/block/by-name/utagsBackup of=/tmp/dump/utagsBackup.img
adb pull /tmp/dump

Some of your requested partitions couldn't be dumped:
/dev/block/by-name/mmcblk0rpmb: read error: I/O error
/dev/block/by-name/ramdump: No such file or directory
/dev/block/by-name/ramdump_padding_0: No such file or directory
/dev/block/by-name/ramdump_padding_1 No such file or directory
/dev/block/by-name/ramdump_padding_2: No such file or directory

dylantjb said:
Some of your requested partitions couldn't be dumped:
/dev/block/by-name/mmcblk0rpmb: read error: I/O error
/dev/block/by-name/ramdump: No such file or directory
/dev/block/by-name/ramdump_padding_0: No such file or directory
/dev/block/by-name/ramdump_padding_1 No such file or directory
/dev/block/by-name/ramdump_padding_2: No such file or directory
Click to expand...
Click to collapse
Doesn't matter, can you upload the rest img you dumped?

Sjll said:
Do G8 & G fast share the same official firmware?
Are both of them are rav?
Click to expand...
Click to collapse
g fast is rav_t, g8 is rav. Different firmwares are provided for both phones.

Sjll said:
Doesn't matter, can you upload the rest img you dumped?
Click to expand...
Click to collapse
[REDACTED]

vache said:
g fast is rav_t, g8 is rav. Different firmwares are provided for both phones.
Click to expand...
Click to collapse
Thanks for this info! This is very interesting, Mine is G Fast, but the vendor I used is G8's. 5Ghz works for me.
dylantjb said:
https://emckclac-my.sharepoint.com/:u:/g/personal/k20001430_kcl_ac_uk/EXPN-5RuYb5EmFB4d2PQME4BxmZNVZ97FcE1unpHqlJfvw?e=3lW4ze
Click to expand...
Click to collapse
Thanks, I will try to restore your dumps on my G fast.
------------------EDIT----------------------
emmmm, I am so sorry, you dumped
Code:
mmcblk0
, this is the whole image of your EMMC.
My bad, it is too large, 44GB....
Can you delete it and repack the dumps again? The normal size of useful partitions should be under 500MB I think.
Code:
adb shell mkdir /tmp/dump/
adb shell dd if=/dev/block/by-name/apdp of=/tmp/dump/apdp.img
adb shell dd if=/dev/block/by-name/cid of=/tmp/dump/cid.img
adb shell dd if=/dev/block/by-name/devinfo of=/tmp/dump/devinfo.img
adb shell dd if=/dev/block/by-name/dpo of=/tmp/dump/dpo.img
adb shell dd if=/dev/block/by-name/fsc of=/tmp/dump/fsc.img
adb shell dd if=/dev/block/by-name/fsg_a of=/tmp/dump/fsg_a.img
adb shell dd if=/dev/block/by-name/fsg_b of=/tmp/dump/fsg_b.img
adb shell dd if=/dev/block/by-name/hw of=/tmp/dump/hw.img
adb shell dd if=/dev/block/by-name/kpan of=/tmp/dump/kpan.img
adb shell dd if=/dev/block/by-name/logfs of=/tmp/dump/logfs.img
adb shell dd if=/dev/block/by-name/misc of=/tmp/dump/misc.img
adb shell dd if=/dev/block/by-name/msadp of=/tmp/dump/msadp.img
adb shell dd if=/dev/block/by-name/multiimgoem_a of=/tmp/dump/multiimgoem_a.img
adb shell dd if=/dev/block/by-name/multiimgoem_b of=/tmp/dump/multiimgoem_b.img
adb shell dd if=/dev/block/by-name/multiimgqti_a of=/tmp/dump/multiimgqti_a.img
adb shell dd if=/dev/block/by-name/multiimgqti_b of=/tmp/dump/multiimgqti_b.img
adb shell dd if=/dev/block/by-name/prodpersist of=/tmp/dump/prodpersist.img
adb shell dd if=/dev/block/by-name/ramdump of=/tmp/dump/ramdump.img
adb shell dd if=/dev/block/by-name/sp of=/tmp/dump/sp.img
adb shell dd if=/dev/block/by-name/spunvm of=/tmp/dump/spunvm.img
adb shell dd if=/dev/block/by-name/ssd of=/tmp/dump/ssd.img
adb shell dd if=/dev/block/by-name/storsec_a of=/tmp/dump/storsec_a.img
adb shell dd if=/dev/block/by-name/storsec_b of=/tmp/dump/storsec_b.img
adb shell dd if=/dev/block/by-name/uefivarstore of=/tmp/dump/uefivarstore.img
adb shell dd if=/dev/block/by-name/utags of=/tmp/dump/utags.img
adb shell dd if=/dev/block/by-name/utagsBackup of=/tmp/dump/utagsBackup.img
adb pull /tmp/dump

Sjll said:
My bad, it is too large, 44GB....
Click to expand...
Click to collapse
That makes a lot more sense now, took quite a lot of space on my laptop!

dylantjb said:
That makes a lot more sense now, took quite a lot of space on my laptop!
Click to expand...
Click to collapse
Okk, I tried, I still have 5Ghz after restoring your imgs.
IMEI didn't change, some info must stored in other places. let me upload mine.
You can try:
Code:
dd if=/tmp/dump/apdp.img of=/dev/block/by-name/apdp
dd if=/tmp/dump/cid.img of=/dev/block/by-name/cid
dd if=/tmp/dump/devinfo.img of=/dev/block/by-name/devinfo
dd if=/tmp/dump/dpo.img of=/dev/block/by-name/dpo
dd if=/tmp/dump/fsc.img of=/dev/block/by-name/fsc
dd if=/tmp/dump/fsg_a.img of=/dev/block/by-name/fsg_a
dd if=/tmp/dump/fsg_b.img of=/dev/block/by-name/fsg_b
dd if=/tmp/dump/hw.img of=/dev/block/by-name/hw
dd if=/tmp/dump/kpan.img of=/dev/block/by-name/kpan
dd if=/tmp/dump/logfs.img of=/dev/block/by-name/logfs
dd if=/tmp/dump/misc.img of=/dev/block/by-name/misc
dd if=/tmp/dump/msadp.img of=/dev/block/by-name/msadp
dd if=/tmp/dump/multiimgoem_a.img of=/dev/block/by-name/multiimgoem_a
dd if=/tmp/dump/multiimgoem_b.img of=/dev/block/by-name/multiimgoem_b
dd if=/tmp/dump/multiimgqti_a.img of=/dev/block/by-name/multiimgqti_a
dd if=/tmp/dump/multiimgqti_b.img of=/dev/block/by-name/multiimgqti_b
dd if=/tmp/dump/prodpersist.img of=/dev/block/by-name/prodpersist
dd if=/tmp/dump/sp.img of=/dev/block/by-name/sp
dd if=/tmp/dump/spunvm.img of=/dev/block/by-name/spunvm
dd if=/tmp/dump/ssd.img of=/dev/block/by-name/ssd
dd if=/tmp/dump/storsec_a.img of=/dev/block/by-name/storsec_a
dd if=/tmp/dump/storsec_b.img of=/dev/block/by-name/storsec_b
dd if=/tmp/dump/uefivarstore.img of=/dev/block/by-name/uefivarstore
dd if=/tmp/dump/utags.img of=/dev/block/by-name/utags
dd if=/tmp/dump/utagsBackup.img of=/dev/block/by-name/utagsBackup

Sjll said:
Okk, I tried, I still have 5Ghz after restoring your imgs.
IMEI didn't change, some info must stored in other places. let me upload mine.
You can try:
Code:
dd if=/tmp/dump/apdp.img of=/dev/block/by-name/apdp
dd if=/tmp/dump/cid.img of=/dev/block/by-name/cid
dd if=/tmp/dump/devinfo.img of=/dev/block/by-name/devinfo
dd if=/tmp/dump/dpo.img of=/dev/block/by-name/dpo
dd if=/tmp/dump/fsc.img of=/dev/block/by-name/fsc
dd if=/tmp/dump/fsg_a.img of=/dev/block/by-name/fsg_a
dd if=/tmp/dump/fsg_b.img of=/dev/block/by-name/fsg_b
dd if=/tmp/dump/hw.img of=/dev/block/by-name/hw
dd if=/tmp/dump/kpan.img of=/dev/block/by-name/kpan
dd if=/tmp/dump/logfs.img of=/dev/block/by-name/logfs
dd if=/tmp/dump/misc.img of=/dev/block/by-name/misc
dd if=/tmp/dump/msadp.img of=/dev/block/by-name/msadp
dd if=/tmp/dump/multiimgoem_a.img of=/dev/block/by-name/multiimgoem_a
dd if=/tmp/dump/multiimgoem_b.img of=/dev/block/by-name/multiimgoem_b
dd if=/tmp/dump/multiimgqti_a.img of=/dev/block/by-name/multiimgqti_a
dd if=/tmp/dump/multiimgqti_b.img of=/dev/block/by-name/multiimgqti_b
dd if=/tmp/dump/prodpersist.img of=/dev/block/by-name/prodpersist
dd if=/tmp/dump/sp.img of=/dev/block/by-name/sp
dd if=/tmp/dump/spunvm.img of=/dev/block/by-name/spunvm
dd if=/tmp/dump/ssd.img of=/dev/block/by-name/ssd
dd if=/tmp/dump/storsec_a.img of=/dev/block/by-name/storsec_a
dd if=/tmp/dump/storsec_b.img of=/dev/block/by-name/storsec_b
dd if=/tmp/dump/uefivarstore.img of=/dev/block/by-name/uefivarstore
dd if=/tmp/dump/utags.img of=/dev/block/by-name/utags
dd if=/tmp/dump/utagsBackup.img of=/dev/block/by-name/utagsBackup
Click to expand...
Click to collapse
I did it but still got 2.4Ghz speed on my WiFi.

Related

[HOW-TO] Run commands and persist settings after reboot - Updated

Here is an easy way to run commands after each boot.
In the init.rc file, the file /system/bin/clrbootcount.sh always gets run after a successful boot. Since it isn't trivial to change the init.rc file, we will use clrbootcount.sh to run commands after a boot. Since people are having issues with modifying clrbootcount.sh, we will choose a safer method.
clrbootcount.sh will always attempt to call /data/boot_complete_hook.sh, which doesn't exit. We are going to create this file and use that to run commands.
Create a file named boot_complete_hook.sh with the following contents (On Windows, use Notepad++):
Code:
#!/system/bin/sh
##################################################################################
#
# File boot_complete_hook.sh
# Description Run any commands that you want to be run after boot
#
##
setprop persist.service.mount.umsauto 0
echo 68000,1024/70/200/40,600/10/11/10 > /sys/devices/omapdss/display0/timings
Save and close.
Now, execute the following commands to put the file on your nook:
Code:
adb push boot_complete_hook.sh /data/boot_complete_hook.sh
adb shell chmod 755 /data/boot_complete_hook.sh
Note:
Before you reboot verify that the file will run properly. Open up a shell via adb shell. Inside that run the following:
Code:
setprop persist.service.mount.umsauto 1
getprop persist.service.mount.umsauto
You should see 1 as the output. Now run:
Code:
sh /system/bin/clrbootcount.sh
You should see an output similar to:
Code:
4+0 records in
4+0 records out
4 bytes transferred in 0.010 secs (400 bytes/sec)
Now run:
Code:
getprop persist.service.mount.umsauto
If 0 is printed out, exit the shell.
If 0 is not printed out, something went wrong and the file will not be run properly on the next boot. If you do reboot in this state 8 times, the boot count won't be reset and you will hit the factory reset. While you are trying to get the script working, you could always manually reset the boot count by executing (from a shell):
Code:
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
Now reboot:
Code:
adb shell reboot
As you are rebooting, run:
Code:
adb shell getprop persist.service.mount.umsauto
It will return 1 since the init.rc file sets it to 1 explicitly. However, once you are fully booted it will return 0.
Didn't work for me.
JoshMiers said:
Here is an easy way to run commands after each boot.
In the init.rc file, the file /system/bin/clrbootcount.sh will always gets run after a successful boot. Since it isn't trivial to change the init.rc file, we will use clrbootcount.sh to run commands after a boot.
Do:
Code:
adb pull /system/bin/clrbootcount.sh .
Open the file (on Windows, don't use Notepad) and you should see:
Code:
#!/system/bin/sh
##################################################################################
#
# File clrbootcount.sh
# Description Clear the bootcount variable to 0 on successful boot
#
##
# Run potential hook first.
/data/boot_complete_hook.sh
# Zero the boot count
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
Add the following to the end of the file:
Code:
#run other commands
setprop persist.service.mount.umsauto 0
Save and close.
Now, execute the following commands to put the file back on your nook:
Code:
adb shell mount -o rw,remount -t ext2 /dev/block/mmcblk0p5 /system
adb push clrbootcount.sh /system/bin/clrbootcount.sh
adb shell chmod 755 /system/bin/clrbootcount.sh
adb shell mount -o ro,remount -t ext2 /dev/block/mmcblk0p5 /system
adb shell reboot
As you are rebooting, run:
Code:
adb shell getprop persist.service.mount.umsauto
It will return 1 since the init.rc file sets it to 1 explicitly. However, once you are fully booted it will return 0.
Click to expand...
Click to collapse
Wouldn't this screw up the 8X "back to stock firmware" sequence since that depends on having the boot counter increment up to 8?
docfreed said:
Wouldn't this screw up the 8X "back to stock firmware" sequence since that depends on having the boot counter increment up to 8?
Click to expand...
Click to collapse
The script file is already there and already being called after each successful boot. The 8x boot counter logic happens with 8 failed boots. Regardless, the instructions just show you how to append a custom command to be run after the stock commands run, no other booting logic is affected.
>DARKMAN< said:
Didn't work for me.
Click to expand...
Click to collapse
What didn't work? Run the following and paste your output:
Code:
adb shell cat /system/bin/clrbootcount.sh
Code:
adb shell ls -l /system/bin/clrbootcount.sh
Awesome, thanks for the tip! Been wondering how to put in my own stuff into the init, I'd love to modify the path but I suspect this won't be the way, but regardless it's good info.
BTW, I have found that disabling this USM property seems to disable the SD card automounting but the Nook itself might still automount... But that's for another thread I suppose
Worked perfectly
This is exactly what I was looking for.
Thanks
Sent from my LogicPD Zoom2
There seems to be a little confusion over at the refresh rate thread http://forum.xda-developers.com/showthread.php?t=901294.
To be explicit, if you want to disable auto-mounting as well as change the refresh rate, you would edit clrbootcount.sh to have the following contents:
Code:
#!/system/bin/sh
##################################################################################
#
# File clrbootcount.sh
# Description Clear the bootcount variable to 0 on successful boot
#
##
# Run potential hook first.
/data/boot_complete_hook.sh
# Zero the boot count
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
#run other commands
setprop persist.service.mount.umsauto 0
echo 68000,1024/70/200/40,600/10/11/10 > /sys/devices/omapdss/display0/timings
If you don't want to disable auto-mounting, just remove the line with
Code:
setprop persist.service.mount.umsauto 0
I ran what was posted and it still returns 1.
Sent from my HAXSUNG Moment
JoshMiers said:
What didn't work? Run the following and paste your output:
Code:
adb shell cat /system/bin/clrbootcount.sh
Code:
adb shell ls -l /system/bin/clrbootcount.sh
Click to expand...
Click to collapse
Screen shot attached (1.0.1 Auto-Nooter 2.12.25).
# cat /system/bin/clrbootcount.sh
cat /system/bin/clrbootcount.sh
#!/system/bin/sh
################################################################################
##
#
# File clrbootcount.sh
# Description Clear the bootcount variable to 0 on successful boot
#
##
# Run potential hook first.
/data/boot_complete_hook.sh
# Zero the boot count
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
#
# ls -l /system/bin/clrbootcount.sh
ls -l /system/bin/clrbootcount.sh
-rwxr-xr-x root root 338 2011-01-06 19:50 clrbootcount.sh
#
edit double post oops
I lost my backup of clrbootcount.sh
and now it won't reset the boot count.
any help would be greatly appreciated.
adb shell getprop persist.service.mount.umsauto
Click to expand...
Click to collapse
always returns 1 during and after complete reboot. The echo command for screen does not persist. Have followed your instructions super letter by letter multiple times and leading up to the reboot everything is exactly as you say.
Right now, I am most concerned that whatever I have done will not reset the boot count since it stays at 1 and does not go to 0. I've already lost my entire setup twice and had to start from scratch trying to make this work. At least I know how to reset to 0 with the line command script but how do I ensure i don't need to worry about it?
I think this process may be a bust.
I am on 1.0.0 and have been using this since I posted it and both the refresh rate and automount values are sticking between reboots.
>DARKMAN< said:
# cat /system/bin/clrbootcount.sh
cat /system/bin/clrbootcount.sh
#!/system/bin/sh
################################################################################
##
#
# File clrbootcount.sh
# Description Clear the bootcount variable to 0 on successful boot
#
##
# Run potential hook first.
/data/boot_complete_hook.sh
# Zero the boot count
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
#
# ls -l /system/bin/clrbootcount.sh
ls -l /system/bin/clrbootcount.sh
-rwxr-xr-x root root 338 2011-01-06 19:50 clrbootcount.sh
#
Click to expand...
Click to collapse
I am assuming you are using the new method, which would mean you need to post your /data/boot_complete_hook.sh
>DARKMAN< said:
I lost my backup of clrbootcount.sh
and now it won't reset the boot count.
any help would be greatly appreciated.
Click to expand...
Click to collapse
The clrbootcount.sh file that you posted is the default file. I will post it again:
Code:
#!/system/bin/sh
##################################################################################
#
# File clrbootcount.sh
# Description Clear the bootcount variable to 0 on successful boot
#
##
# Run potential hook first.
/data/boot_complete_hook.sh
# Zero the boot count
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
Also, the original post explains how to manually reset the boot count. Here it is:
If 0 is not printed out, something went wrong and the file will not be run properly on the next boot. If you do reboot in this state 8 times, the boot count won't be reset and you will hit the factory reset. While you are trying to get the script working, you could always manually reset the boot count by executing (from a shell):
Code:
dd if=/dev/zero of=/rom/devconf/BootCnt bs=1 count=4
jleecong said:
Screen shot attached (1.0.1 Auto-Nooter 2.12.25).
Click to expand...
Click to collapse
It appears you are running Windows, so I am hoping that you did not use Notepad to edit this file.
Since you are running 1.0.1, post your /init.rc file.
Thought I may have been doing something wrong since I used notepad but downloaded Notepad++ and created the new .sh file. Still no go. Screen still flickers and USB still automounts. Maybe 1.0.1 just is not commpatible with this process. Only difference I can see.
The getprop persist.service.mount.umsauto also indicates 1 after full boot and not 0. Pretty sure this will wipe everything out after 8 boots, going to wipe it all out now and proactively prevent it.

[HOWTO] Root Nexus One 2.2.1 FRG83D without OEM unlock

This guide is for people who want root but want to keep their stock rom, not breaking the warranty, unlocking bootloader etc.
A proud ubuntu user, I am writing this in a new thread purely because the manual rageagainstthecage method and SuperOneClick method did not not work for me, see link to my conclusion below if you care
http://forum.xda-developers.com/showpost.php?p=11305312&postcount=2526
What did work however was via adb shell using psneuter and its fairly simple if you follow the following commands.
This guide assumes you know how to get access to the shell via adb, if you dont then search elsewhere for a useful guide
OK lets get to business!
1. Download the attached nexus_one_softroot.tar from the bottom of this post and extract contents to the same folder as adb
2. Open up your terminal, cd to the same folder as adb and the extracted files
3. Enter the following commands:
Code:
sudo ./adb push psneuter /data/local/tmp/psneuter
sudo ./adb push busybox /data/local/tmp/busybox
sudo ./adb push su /data/local/tmp/su
sudo ./adb shell chmod 755 /data/local/tmp/psneuter
sudo ./adb shell chmod 755 /data/local/tmp/busybox
sudo ./adb shell chmod 755 /data/local/tmp/su
sudo ./adb shell
After this you should see only a $ which tells us that we at the android command line with user privileges only, lets continue
Code:
$ cd /data/local/tmp
$ ls
busybox
su
psneuter
$ ./psneuter
property service neutered.
killing adbd. (should restart in a second or two)
You will now be kicked out of android shell, lets go back in
Code:
sudo ./adb shell
After this you should see only a # which tells us that we root baby! If you want to double check issue this command
Code:
# id
uid=0(root) gid=0(root)
Lets continue on. From this point we will install busybox and su which will make root permanent
Code:
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system
# cd /data/local/tmp
# ./busybox cp busybox /system/bin
# chmod 4755 /system/bin/busybox
# busybox cp su /system/bin
# chmod 4755 /system/bin/su
# exit
For some reason I sometimes have to enter exit twice to leave the android shell. Again, re-access the android shell
Code:
sudo ./adb shell
Now in the android shell we can finish up
Code:
# su
# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system
# exit
# exit
Lastly we must install Superuser, and I did this from the android market so I knew its the latest version, its simple to get, less command input etc.
Now you have root! I hope this was simple enough to follow, I have not really written a guide before but from lots of searching I just could not find a solution for my Nexus One 2.2.1 FRG83D, especially any guide that uses psneuter.
Anyway, glad to contribute
EDIT - also, being new to starting threads, this may not quite be in the right section of the forum, sorry if thats the case mods
Added link to the thread from Wiki.
upgraded to gingerbread 2.3.3. after copying and setting permissions, got this:
PHP:
$ cd /data/local/tmp
$ ls -l
-rwxr-xr-x shell shell 26248 2010-07-22 10:20 su
-rwxr-xr-x shell shell 1062992 2010-10-16 22:29 busybox
-rwxr-xr-x shell shell 585731 2011-01-08 18:02 psneuter
su
busybox
psneuter
$ ./psneuter
Failed to set prot mask (Inappropriate ioctl for device)
second time threw me out of shell. again adb shell gives this:
PHP:
$ id
uid=2000(shell) gid=2000(shell) groups=1003(graphics),1004(input),1007(log),1009(mount),1011(adb),1015(sdcard_rw),3001(net_bt_admin),3002(net_bt),3003(inet)
mfkr said:
upgraded to gingerbread 2.3.3. after copying and setting permissions, got this:
Code:
$ ./psneuter
Failed to set prot mask (Inappropriate ioctl for device)
Click to expand...
Click to collapse
I believe this is due to a change in the kernel as it is upgraded into gingerbread, the input/output controls have changed, leaving psneuter out of date with the current kernel.
However if an exploit is found with the kernel used in 2.3.3, you can use it in place of psneuter with the above method.

[UTIL] SkitzBackup

The attached ZIP includes scripts for Windows and Linux to backup your Galaxy Tab.
Linux users will need to install 7zip
Code:
sudo apt-get install p7zip
May also work on OSX but you're on your own with 7zip
You will need adb access to your tab whichever platform you use.
All you need to do to run it is extract the attached archive and run
Windows
Code:
skitzbackup.cmd
Linux / OSX
Code:
chmod a+x <folder where you extracted it>/skitzbackup/skitzbackup.sh
cd <folder where you extracted it>/skitzbackup
./skitzbackup.sh
The script will pull the following partitions and pack them in a 7zip archive for safe keeping:
efs
recovery
boot
system
radio
cache
misc
Before you ask, I have no idea what the 'misc' partition is. Haven't had time to explore that yet
I have NOT tested flashing these back as yet, except for boot and recovery so you use this entirely at your own risk.
DOWNLOAD HERE
View attachment skitzbackup.zip
Enjoy!
Code:
alias del=rm
mkdir skitzbackup
cd skitzbackup
adb shell su -c "dd if=/dev/block/mmcblk0p1 of=/sdcard/efs.img bs=4096"
adb shell su -c "dd if=/dev/block/mmcblk0p2 of=/sdcard/recovery.img bs=4096"
adb shell su -c "dd if=/dev/block/mmcblk0p3 of=/sdcard/boot.img bs=4096"
adb shell su -c "dd if=/dev/block/mmcblk0p4 of=/sdcard/system.img bs=4096"
adb shell su -c "dd if=/dev/block/mmcblk0p5 of=/sdcard/cache.img bs=4096"
adb shell su -c "dd if=/dev/block/mmcblk0p6 of=/sdcard/misc.img bs=4096"
adb shell su -c "dd if=/dev/block/mmcblk0p7 of=/sdcard/radio.img bs=4096"
adb pull /sdcard/efs.img
adb pull /sdcard/recovery.img
adb pull /sdcard/boot.img
adb pull /sdcard/system.img
adb pull /sdcard/cache.img
adb pull /sdcard/misc.img
adb pull /sdcard/radio.img
adb shell rm /sdcard/efs.img
adb shell rm /sdcard/recovery.img
adb shell rm /sdcard/boot.img
adb shell rm /sdcard/system.img
adb shell rm /sdcard/cache.img
adb shell rm /sdcard/misc.img
adb shell rm /sdcard/radio.img
7z a skitzbackup.7z *.img
del *.img
Could this be used to backup apps and app data before unlocking bootloader? I can't see a /data partition
working perfectly!You're great
djmasque said:
Could this be used to backup apps and app data before unlocking bootloader? I can't see a /data partition
Click to expand...
Click to collapse
No. Unfortunately, using this method to backup needs to write to the 'sdcard' which is what you want to back up.
Writing a script to back up data is a bit tricky since you can't reference it as a drive in windows and you can't know, for sure what the mount point will be in linux.
My main aim with the first version was to write a script which would work on either Windows or Linux, which it does. I might do seperate scripts to do a data backup.
bcmobile said:
No. Unfortunately, using this method to backup needs to write to the 'sdcard' which is what you want to back up.
Writing a script to back up data is a bit tricky since you can't reference it as a drive in windows and you can't know, for sure what the mount point will be in linux.
My main aim with the first version was to write a script which would work on either Windows or Linux, which it does. I might do seperate scripts to do a data backup.
Click to expand...
Click to collapse
Okay, good work nonetheless
Looks a lot like rotobackup, hehe.
Chainfire said:
Looks a lot like rotobackup, hehe.
Click to expand...
Click to collapse
Yes, it is based on rotobackup method, but compresses and cleans up too
Sent from my GT-P7100 using XDA Premium App
bcmobile said:
Yes, it is based on rotobackup method, but compresses and cleans up too
Sent from my GT-P7100 using XDA Premium App
Click to expand...
Click to collapse
Whats needed now is a kind of automated restore
bcmobile said:
You will need adb access to your tab whichever platform you use.
All you need to do to run it is extract the attached archive and run
Click to expand...
Click to collapse
Sorry for the noob question but how do i do this true windows?
Will this work for me?
Hi bcmobile,
This looks excellent.
I'm currently running a P7100 (10.1v) with ISI-Galaxy 1.2.5v (HC3.2) but my baseband/modem is still P7100BUKE2.
I would like to get the GSM working (for sending USSD commands) but I would need to flash my modem, and I would like to backup the modem before I flash it with the P7500 modem.bin, if something goes wrong, I can always go back to the old one.
In your script, is radio.img the modem.bin?
Also is the "/dev/block/" always the same on all the different versions of the tablet? (in other words if I have a 10.1v will this backup my modem).
Thanks so much. You help is much appreciated.
seraphimserapis said:
Whats needed now is a kind of automated restore
Click to expand...
Click to collapse
/!\ IN THEORY /!\ you'd just have to copy the .img files back to the tab and switch the command line arguments for dd. (e.g. dd if=/path/to/file.img of=/path/to/directory)
soo i know this is kind of old but does this work for any device? if so what am i doing wrong? its stuck on deamon started successfully...

[GUIDE] ADB to Pull Images of L90

Thanks to @evoname for showing me how to do this! [emoji4]
This is if you are interested in pulling the system images for whatever reason. I'm not responsible if you brick your device. Use at your own risk!
adb shell
su
dd if=/dev/block/mmcblk0p6 of=/sdcard/aboot.img
dd if=/dev/block/mmcblk0p9 of=/sdcard/abootb.img
dd if=/dev/block/mmcblk0p16 of=/sdcard/boot.img
dd if=/dev/block/mmcblk0p15 of=/sdcard/laf.img
dd if=/dev/block/mmcblk0p17 of=/sdcard/recovery.img
dd if=/dev/block/mmcblk0p31 of=/sdcard/system.img
exit
exit
adb pull /sdcard/aboot.img
adb pull /sdcard/abootb.img
adb pull /sdcard/boot.img
adb pull /sdcard/laf.img
adb pull /sdcard/recovery.img
adb pull /sdcard/system.img
exit
Sent from my LG-D415 using Tapatalk

[DEV] Partition backups LG G2

Here's the codes to backup your partitions on the LG G2. Probably work an any variant. I need this for future references as now it will be stored online forever!!!
Need ADB installed.
adb shell
adb su
Code:
dd if=/dev/block/platform/msm_sdcc.1/by-name/system of=/sdcard/system.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/boot of=/sdcard/boot.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/aboot of=/sdcard/aboot.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/recovery of=/sdcard/recovery.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/modem of=/sdcard/modem.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/rpm of=/sdcard/rpm.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/tz of=/sdcard/tz.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/laf of=/sdcard/laf.img
----
dd if=/dev/block/platform/msm_sdcc.1/by-name/dbi of=/sdcard/dbi.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/sbl1 of=/sdcard/sbl1.img
dd if=/dev/block/platform/msm_sdcc.1/by-name/persist of=/sdcard/persist.img

Categories

Resources