Boost Net_speed by Network Tuning on nexus 5 - Nexus 5 Android Development

Another method to Network Tuning and Performance by touch some value on linux tcp/IP tuning to give us some significant result on test speed and download process more faster than usual.
Tweak are made for boosting the interneet without any app so you must be Rooted, TWRP , Busybox inside and some rom or kernel to supported for init.d on system/etc or do a little search on xda how to put the init .d insde yours and for busybox download from palystore
this tweak cannot be combine with some other tweak for net_tweak because i dont know what kind of tweak inside your rom it will be give you some crash or the tweak not running as well
how to test or running my tweak :
backup up first so if there's and problem you can restore everything
and do manualy by deleting the init.d stuff ( note . if u have one ) and just get rid all the build prop for tweaking especilay mention about tcp buffer size .. u can grab it from the original rom and push it to your device
tweak as desired, depending on your internet connection and maximum bandwidth/latency on your country so this tweak not guarantee will give u same result ​
how to flash :
1. reboot to twrp
2. flash the file
3. wipe cache and dalvik
4. reboot . ( be patient take time to boot up )
For uninstal my tweak you can do it manualy :
extract my zip file and take alook at it
open app like rootexplorer . and delete all the stuff then reboot
done
Choose and Please .. comment and give me full report this tweak is running or not .. so i can do more
(tested on my nexus 5 (6.0.1) / 7.0.1 /7.1 not test on oreo yet
this tweak based on many reference on goolge you can do alittle search how to and know how
I'm not responsible if there is any kind off damage !!!
Hits Thank Button if i Helped you and give you more !!!​

After couple of experiment and tested ..i remove all the link above .. because as i said in red line on #post 1 every each country has diffrent internet connection and maximum bandwidth/latency but i wont stop to figure out and find the best value to maximize the network speed and performance especialy on 6.0.1 up, may be some other people say why you so hassle create this this craft and useless well the answer came because i'm can't find any app/ or tweaking value to give me some satisfaction, like on kernel under 2.6 (2011- 2013 )
some explanation you can find in here
http://www.linux-admins.net/2010/09/linux-tcp-tuning.html
and these are what @zeppelinrox do on kick as kernel tweak :
echo " Applying Network Tweaks...";
echo \$line;
echo "";
$sleep;
#
# Queue size modifications
busybox sysctl -e -w net.core.wmem_max=1048576;
busybox sysctl -e -w net.core.rmem_max=1048576;
#busybox sysctl -e -w net.core.rmem_default=262144;
#busybox sysctl -e -w net.core.wmem_default=262144;
busybox sysctl -e -w net.core.optmem_max=20480;
busybox sysctl -e -w net.unix.max_dgram_qlen=50;
#
busybox sysctl -e -w net.ipv4.tcp_moderate_rcvbuf=1; # Be sure that autotuning is in effect
busybox sysctl -e -w net.ipv4.route.flush=1;
busybox sysctl -e -w net.ipv4.udp_rmem_min=6144;
busybox sysctl -e -w net.ipv4.udp_wmem_min=6144;
busybox sysctl -e -w net.ipv4.tcp_rfc1337=1;
busybox sysctl -e -w net.ipv4.ip_no_pmtu_disc=0;
busybox sysctl -e -w net.ipv4.tcp_ecn=0;
busybox sysctl -e -w net.ipv4.tcp_rmem='6144 87380 1048576';
busybox sysctl -e -w net.ipv4.tcp_wmem='6144 87380 1048576';
busybox sysctl -e -w net.ipv4.tcp_timestamps=0;
busybox sysctl -e -w net.ipv4.tcp_sack=1;
busybox sysctl -e -w net.ipv4.tcp_fack=1;
busybox sysctl -e -w net.ipv4.tcp_window_scaling=1;
#
# Re-use sockets in time-wait state
busybox sysctl -e -w net.ipv4.tcp_tw_recycle=1;
busybox sysctl -e -w net.ipv4.tcp_tw_reuse=1;
#
# KickAss UnderUtilized Networking Tweaks below initially suggested by avgjoemomma (from XDA)
# Refined and tweaked by zeppelinrox... duh.
#
busybox sysctl -e -w net.ipv4.tcp_congestion_control=cubic; # Change network congestion algorithm to CUBIC
#
# Hardening the TCP/IP stack to SYN attacks (That's what she said)
# http://www.cyberciti.biz/faq/linux-kernel-etcsysctl-conf-security-hardening
# http://www.symantec.com/connect/articles/hardening-tcpip-stack-syn-attacks
#
busybox sysctl -e -w net.ipv4.tcp_syncookies=1;
busybox sysctl -e -w net.ipv4.tcp_synack_retries=2;
busybox sysctl -e -w net.ipv4.tcp_syn_retries=2;
busybox sysctl -e -w net.ipv4.tcp_max_syn_backlog=1024;
#
busybox sysctl -e -w net.ipv4.tcp_max_tw_buckets=16384; # Bump up tw_buckets in case we get DoS'd
busybox sysctl -e -w net.ipv4.icmp_echo_ignore_all=1; # Ignore pings
busybox sysctl -e -w net.ipv4.icmp_echo_ignore_broadcasts=1; # Don't reply to broadcasts (prevents joining a smurf attack)
busybox sysctl -e -w net.ipv4.icmp_ignore_bogus_error_responses=1; # Enable bad error message protection (should be enabled by default)
busybox sysctl -e -w net.ipv4.tcp_no_metrics_save=1; # Don't cache connection metrics from previous connection
busybox sysctl -e -w net.ipv4.tcp_fin_timeout=15;
busybox sysctl -e -w net.ipv4.tcp_keepalive_intvl=30;
busybox sysctl -e -w net.ipv4.tcp_keepalive_probes=5;
busybox sysctl -e -w net.ipv4.tcp_keepalive_time=1800;
#
# Don't pass traffic between networks or act as a router
busybox sysctl -e -w net.ipv4.ip_forward=0; # Disable IP Packet forwarding (should be disabled already)
busybox sysctl -e -w net.ipv4.conf.all.send_redirects=0;
busybox sysctl -e -w net.ipv4.conf.default.send_redirects=0;
#
# Enable spoofing protection (turn on reverse packet filtering)
busybox sysctl -e -w net.ipv4.conf.all.rp_filter=1;
busybox sysctl -e -w net.ipv4.conf.default.rp_filter=1;
#
# Don't accept source routing
busybox sysctl -e -w net.ipv4.conf.all.accept_source_route=0;
busybox sysctl -e -w net.ipv4.conf.default.accept_source_route=0 ;
#
# Don't accept redirects
busybox sysctl -e -w net.ipv4.conf.all.accept_redirects=0;
busybox sysctl -e -w net.ipv4.conf.default.accept_redirects=0;
busybox sysctl -e -w net.ipv4.conf.all.secure_redirects=0;
busybox sysctl -e -w net.ipv4.conf.default.secure_redirects=0;
Click to expand...
Click to collapse
and the script running as well .. ( Under jelly bean )
i edited most of my post and get rid all the link .. i give you some link to test
just wait and see i'm working on it
meanwhile if you want to try, i made a simple script based on last kisk ass kernel
give me some report if u have aproblem or the script not running i do my best i could .. Thank for testing it .. Cheers

The short summary:
TCP performance tuning - how to tune linux
The default Linux tcp window sizing parameters before 2.6.17 sucks.
The short fix [wirespeed for gigE within 5 ms RTT and fastE within 50 ms RTT]:
in /etc/sysctl.conf
net/core/rmem_max = 8738000
net/core/wmem_max = 6553600
net/ipv4/tcp_rmem = 8192 873800 8738000
net/ipv4/tcp_wmem = 4096 655360 6553600
It might also be a good idea to increase vm/min_free_kbytes, especially
if you have e1000 with NAPI or similar. A sensible value is 16M or 64M:
vm/min_free_kbytes = 65536
If you run an ancient kernel, increase the txqueuelen to at least 1000:
ifconfig ethN txqueuelen 1000
If you are seeing "TCP: drop open request" for real load (not a DDoS),
you need to increase tcp_max_syn_backlog (8192 worked much better than
1024 on heavy webserver load).
The background:
TCP performance is limited by latency and window size (and overhead, which
reduces the effective window size) by window_size/RTT (this is how much data
that can be "in transit" over the link at any given moment).
To get the actual transfer speeds possible you have to divide the resulting
window by the latency (in seconds):
The overhead is: window/2^tcp_adv_win_scale (tcp_adv_win_scale default is 2)
So for linux default parameters for the recieve window (tcp_rmem):
87380 - (87380 / 2^2) = 65536.
Given a transatlantic link (150 ms RTT), the maximum performance ends up at:
65536/0.150 = 436906 bytes/s or about 400 kbyte/s, which is really slow today.
With the increased default size:
(873800 - 873800/2^2)/0.150 = 4369000 bytes/s, or about 4Mbytes/s, which
is resonable for a modern network. And note that this is the default, if
the sender is configured with a larger window size it will happily scale
up to 10 times this (8738000*0.75/0.150 = ~40Mbytes/s), pretty good for
a modern network.
2.6.17 and later have resonably good defaults values, and actually tune
the window size up to the max allowed, if the other side supports it. So
since then most of this guide is not needed. For good long-haul throughput
the maxiumum value might need to be increased though.
For the txqueuelen, this is mostly relevant for gigE, but should not hurt
anything else. Old kernels have shipped with a default txqueuelen of 100,
which is definately too low and hurts performance.
net/core/[rw]mem_max is in bytes, and the largest possible window size.
net/ipv4/tcp_[rw]mem is in bytes and is "min default max" for the tcp
windows, this is negotiated between both sender and reciever. "r" is for
when this machine is on the recieving end, "w" when the connection is
initiated from this machine.
There are more tuning parameters, for the Linux kernel they are documented
in Documentation/networking/ip-sysctl.txt, but in our experience only the
parameters above need tuning to get good tcp performance..
Know How
list the sysctl’s that usually have impact on network performance:
net.nf_conntrack_max
maximum number of tracked connection in iptables
net.ipv4.ip_local_port_range
range of ports used for outgoing TCP connections (useful to change it if you have a lot of outgoing connections from host)
net.ipv4.tcp_rmem
autotuning tcp receive buffer parameters
net.ipv4.tcp_wmem
autotuning tcp send buffer parameters
net.ipv4.rmem_max
maximum tcp socket receive buffer memory size (in bytes)
net.ipv4.wmem_max
maximum tcp socket send buffer memory size (in bytes)
net.ipv4.tcp_mem
TCP buffer memory usage thresholds for autotuning, in memory pages (1 page = 4kb)
net.core.somaxconn
maximum listen queue size for sockets (useful and often overlooked setting for loadbalancers, webservers and application servers (like unicorn, php-fpm). If all server processes/threads are busy, then incoming client connections are put in “backlog” waiting for being served). Full backlog causes client connections to be immediately rejected, causing client error.
net.core.dev_weight
maximum number of frames that kernel may drain from device queue during one interrupt cycle (setting higher value will allow more packets to be processed during one softirq cycle, but longer gaps between CPU availability for applications)
net.core.netdev_max_backlog
number of slots in the receiver's ring buffer for arriving packets (kernel put packets in this queue if the CPU is not available to process them, for example by application)
net.ipv4.tcp_keepalive_time
interval in seconds between last packet sent and first keepalive probe sent by linux
net.ipv4.tcp_keepalive_probes
number of unacknowledged keepalive probe packets to send before

any devs checked out this? placebo or malware?

Every improvemnt for lates experiment will be post ini here and this is the lates update
for our device ( Qualcom snapdragon 800 , MSM 8974 )
Last tested on nougat 7.1 [ROM][LOS14.1][7.1.2_r29] DARK ROM [OMS] huge thanks for that
The latest give me some Amazing improvement on my N5 the one and only i have ....i missed my xperia :crying:.test using gsm network 3G/4G
Change Log :
1. New Value on signal stability
2. New IPtable on system bin based msm 8974 device
3. Change most of value on script
4. busybox include not to necessary download from ps ( give me some crash with latest super su )
4. Google dns included and more i think i forgot
before you use this it will be better if you upgrade your bootloader and radio to the latest update
i make flashble zip for that just grab it (hhz20h-2.0.50.2.30)
grab it here :
lates bootloader and radio
https://www.androidfilehost.com/?fid=746010030569955615
Boosted V.1.0 tweak :
https://www.androidfilehost.com/?fid=890129502657584755
Just try it and give me some feed back..
and please delete manualy the old tweak or you can do dirty flash to try this
ENJOY...... YOU ARE BOOSTED NOW !!!
​

My issues with this mod is not what the TCP tweaks to the kernel and build.prop.
It lies here:
00Cleaner:
Code:
if $cache; then
echo "* RemoveCache Tweaks Starting At $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $raweLOG
busybox find /data/data -type d -iname "*cache*" -maxdepth 2 -mindepth 2 -exec busybox rm -rf {} ';'
busybox rm -f /data/anr/*.*
busybox rm -f /data/cache/*.*
busybox rm -f /data/log/*.*
busybox rm -f /data/mlog/
busybox rm -f /data/tombstones/*
busybox rm -f /data/backup/pending/*
busybox rm -r /data/local/tmp/*
busybox rm -r /data/system/appusagestats/*
busybox rm -r /data/system/dropbox/*
busybox rm -f /data/system/usagestats/*
echo "* RemoveCache Tweaks Finished At $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $raweLOG
fi
and
01killing
Code:
#System rw at boot
sysrw
#Clean-up
find /data/data/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
rm -Rf /data/data/com.facebook.katana/files/video-cache/*
#Google service drain fix
su -c "pm enable com.google.android.gms/.update.SystemUpdateActivity"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService$ActiveReceiver"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService$Receiver"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService$SecretCodeReceiver"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateActivity"
su -c "pm enable com.google.android.gsf/.update.SystemUpdatePanoActivity"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateService"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateService$Receiver"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateService$SecretCodeReceiver"
I'm not sure what this all does on boot...
moreover, a permanent non upgradable hosts file redirecting all ads to localhost will probably reflect in a somewhat better web performance, but you should announce that you're doing it.
Code:
# This hosts file has been generated by AdAway on:
# 2016-11-15 23:17:02
# Please do not modify it directly, it will be overwritten when AdAway is applied again.
# This file is generated from the following sources:
# [url]http://winhelp2002.mvps.org/hosts.txt[/url]
# [url]https://adaway.org/hosts.txt[/url]
# [url]https://hosts-file.net/ad_servers.txt[/url]
# [url]https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext[/url]
127.0.0.1 localhost
::1 localhost
127.0.0.1 ad.doubleclick.net.18295.9086.302br.net
127.0.0.1 db6.net-filter.com
127.0.0.1 ads.doktoronline.no
127.0.0.1 logc189.xiti.com
127.0.0.1 spinbox.techtracker.com
...
...
...
...
BTW, and for the record, to give credit where it's due:
Code:
================ Copyright (C) 2014 rawe Project ================
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 <http://www.gnu.org/licenses/>.
=====================================================================

daedric said:
My issues with this mod is not what the TCP tweaks to the kernel and build.prop.
It lies here:
00Cleaner:
Code:
if $cache; then
echo "* RemoveCache Tweaks Starting At $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $raweLOG
busybox find /data/data -type d -iname "*cache*" -maxdepth 2 -mindepth 2 -exec busybox rm -rf {} ';'
busybox rm -f /data/anr/*.*
busybox rm -f /data/cache/*.*
busybox rm -f /data/log/*.*
busybox rm -f /data/mlog/
busybox rm -f /data/tombstones/*
busybox rm -f /data/backup/pending/*
busybox rm -r /data/local/tmp/*
busybox rm -r /data/system/appusagestats/*
busybox rm -r /data/system/dropbox/*
busybox rm -f /data/system/usagestats/*
echo "* RemoveCache Tweaks Finished At $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $raweLOG
fi
and
01killing
Code:
#System rw at boot
sysrw
#Clean-up
find /data/data/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/*/cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
find /data/data/*/*/*/*/Cache/ -depth -mindepth 1 -exec rm -Rf {} \;
rm -Rf /data/data/com.facebook.katana/files/video-cache/*
#Google service drain fix
su -c "pm enable com.google.android.gms/.update.SystemUpdateActivity"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService$ActiveReceiver"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService$Receiver"
su -c "pm enable com.google.android.gms/.update.SystemUpdateService$SecretCodeReceiver"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateActivity"
su -c "pm enable com.google.android.gsf/.update.SystemUpdatePanoActivity"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateService"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateService$Receiver"
su -c "pm enable com.google.android.gsf/.update.SystemUpdateService$SecretCodeReceiver"
I'm not sure what this all does on boot...
moreover, a permanent non upgradable hosts file redirecting all ads to localhost will probably reflect in a somewhat better web performance, but you should announce that you're doing it.
Code:
# This hosts file has been generated by AdAway on:
# 2016-11-15 23:17:02
# Please do not modify it directly, it will be overwritten when AdAway is applied again.
# This file is generated from the following sources:
# [url]http://winhelp2002.mvps.org/hosts.txt[/url]
# [url]https://adaway.org/hosts.txt[/url]
# [url]https://hosts-file.net/ad_servers.txt[/url]
# [url]https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext[/url]
127.0.0.1 localhost
::1 localhost
127.0.0.1 ad.doubleclick.net.18295.9086.302br.net
127.0.0.1 db6.net-filter.com
127.0.0.1 ads.doktoronline.no
127.0.0.1 logc189.xiti.com
127.0.0.1 spinbox.techtracker.com
...
...
...
...
BTW, and for the record, to give credit where it's due:
Code:
================ Copyright (C) 2014 rawe Project ================
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 <http://www.gnu.org/licenses/>.
=====================================================================
Click to expand...
Click to collapse
thanks in advance
sorry late for respond..i have a lot of work to do
i'll try to fix and run the script on boot and running flawless
i.m still working on it doing some test and else
wide open minded if there any sugestion and oppinion cheers

Boost_net_test rc 02
Tested On Nougat ( Pure Nexus 7.1 ) Huge thank for they awesome rom and hardwork
i just make additional option for net connection and i think nougat better on net then mm
Change Log :
- change the other method with directly touch the tuning from buildprop
- busybox included
Note :
Backup your buildprop to your sdcard ! and if theres some wrong u can push it manualy
for check just take alook system/buildprop on your device and you will find my tweak on it
link moved to post #1

rawe_etc said:
Boost_net_test rc 02
Tested On Nougat ( Pure Nexus 7.1 ) Huge thank for they awesome rom and hardwork
i just make additional option for net connection and i think nougat better on net then mm
Change Log :
- change the other method with directly touch the tuning from buildprop
- busybox included
Note :
Backup your buildprop to your sdcard ! and if theres some wrong u can push it manualy
for check just take alook system/buildprop on your device and you will find my tweak on it
Click to expand...
Click to collapse
Canthis tweak work on 8.1.0 oreo.?.. Or can you share any significant information i should be researching to better acheive this tweak.?.. Thank you in advance. RUNNING. GZOSP

alienblackpro said:
Canthis tweak work on 8.1.0 oreo.?.. Or can you share any significant information i should be researching to better acheive this tweak.?.. Thank you in advance. RUNNING. GZOSP
Click to expand...
Click to collapse
not testing yet on oreo . but i think this can be work on oreo cause it just tweak on build prop and the main goal of this tweak are pushing the kernel 3. above to the limit until we get the max result, my advice just try it ! not to worry .. but u should backup your rom first .. do some test by app on playstore .. before u flashin this tweak and after ,, if anything goes wrong u can restore your rom and everthing will be back .. cheers

rawe_etc said:
not testing yet on oreo . but i think this can be work on oreo cause it just tweak on build prop and the main goal of this tweak are pushing the kernel 3. above to the limit until we get the max result, my advice just try it ! not to worry .. but u should backup your rom first .. do some test by app on playstore .. before u flashin this tweak and after ,, if anything goes wrong u can restore your rom and everthing will be back .. cheers
Click to expand...
Click to collapse
Yes foe sure...just needed the boot of confidence.. Thanks again..and yes sir im no strangee to brinking devices back from the dead...FYI....OREO. Running great on tge old " hammerhead"...#NEVERSETTLE

alienblackpro said:
Yes foe sure...just needed the boot of confidence.. Thanks again..and yes sir im no strangee to brinking devices back from the dead...FYI....OREO. Running great on tge old " hammerhead"...#NEVERSETTLE
Click to expand...
Click to collapse
Try this one my freind
Due on hammerhead kernel for maximus TCP tunning 7.1 and give me some feedback
link moved to post #1

rawe_etc said:
Try this one my freind
Due on hammerhead kernel for maximus TCP tunning 7.1 and give me some feedback
Click to expand...
Click to collapse
Okie dokie,..here goes nothin....crossed fingers...feed back soon as i can..:good::good:

alienblackpro said:
Okie dokie,..here goes nothin....crossed fingers...feed back soon as i can..:good::good:
Click to expand...
Click to collapse
Not letting me post screen shots...somethin im doing wrong here..?.. Flashed fine...im sure im missing a whole lot about other parameters i need to follow...to free all capabilities of your script...i was gonna post my kernal ....and anything else you need for feedback..i also have map of coverage here ...and it not bad i just only can get signal outside the house in certain areas...this is why im so desperate to control these networks...about to construct my own tower..!!! Thank you in advance..#NEVERSETTLE.....dies my kernel interfere?.. I have speed up swap running also...wow what a difference... Awaiting guidance fellas...tganx again

its hard to make it stable .. if u put big or small value .. then some issue come up and i dont gett it why the qualcom not upgrade the modem like iphone .. this is my progress so far .. base on this value on hammerhed 7.1
and i try to put script to make it stabel and change to incerease the download section and decrease the the upload section
3 time test .. give stable result but not significant improvment .. cause cann't deal with the modem and our lovely limeted device
u can figure out on google for that ...
note:
May be in your country will give u diffrent result then mine
and for awhile this project will be suppend cause i have alot of to do in real world
cheeers.......
new update tweak boot_net_ rc04 .. good luck
link moved to post #1

rawe_etc said:
its hard to make it stable .. if u put big or small value .. then some issue come up and i dont gett it why the qualcom not upgrade the modem like iphone .. this is my progress so far .. base on this value on hammerhed 7.1
and i try to put script to make it stabel and change to incerease the download section and decrease the the upload section
3 time test .. give stable result but not significant improvment .. cause cann't deal with the modem and our lovely limeted device
u can figure out on google for that ...
note:
May be in your country will give u diffrent result then mine
and for awhile this project will be suppend cause i have alot of to do in real world
cheeers.......
new update tweak boot_net_ rc04 .. good luck
Click to expand...
Click to collapse
OK..so I had no idea it would do full wipe...hardly anything workedvin settings..WiFi wouldn't stay on ...greyed out...icons were different....complete restore....appreciate all your time and work..I'll be following how you come along with this...great work...thanx

hallo world
i' m back with the lates update all change log u can find on post #5
heres my screen shot .. but sorry
I'm out of internet quota for tested .. so only one result for test speed
you can do it by your own or you can try to download something .. u can see some good improvent on downlod speed
enjoy

rawe_etc said:
hallo world
i' m back with the lates update all change log u can find on post #5
heres my screen shot .. but sorry
I'm out of internet quota for tested .. so only one result for test speed
you can do it by your own or you can try to download something .. u can see some good improvent on downlod speed
enjoy
Click to expand...
Click to collapse
It seems to work fine, connection speed somewhat is quicker, but less battery friendly than before, but anyway I appreciate the work done, thank you for that. If it's in your plans, can you do something about Bypass ISP, Tether boost and DNSmasq features from Crossbreeder to be included in your mod? I really miss them, and they were extremely useful at the time. Take this as a simple question, not a request to be satisfied immediately. Thank you again
Inviato dal mio Nexus 5 con Tapatalk 2

jacomail95 said:
It seems to work fine, connection speed somewhat is quicker, but less battery friendly than before, but anyway I appreciate the work done, thank you for that. If it's in your plans, can you do something about Bypass ISP, Tether boost and DNSmasq features from Crossbreeder to be included in your mod? I really miss them, and they were extremely useful at the time. Take this as a simple question, not a request to be satisfied immediately. Thank you again
Inviato dal mio Nexus 5 con Tapatalk 2
Click to expand...
Click to collapse
sorry late for respond .. alot off app to support your question hope that will help you but i dont think will work .. on 6.0 above
let see what i can do on next update .. thank you for testing mine.. and support .. some feed back and report give me some energy to give you more
cheers

Flash this zip can modify build.prop right?
I change dns server to cloudflare,sorry.

Related

Useful things to throw into froyo.user.conf

I've been building a list of commands that gets executed into froyo.user.conf. Use this as a reference, as I won't be responsible for your Rhodium exploding.
# Dealing with incomplete swapfile support in userinit.sh
swapon /sdcard/swapfile
# busybox /bin/sh is 10000x better than what's in /system
mount --bind /bin/sh /system/bin/sh
# I use F22's b1home setup, not only do I get needed symbols, it doesn't do idiotic stuff like define SMS to GRAVE, then redefine GRAVE to 0x03 (Ctrl-C) in the kcm file - read my post below on how to do this
mkdir -p /init.etc/keymaps/custom
cp -a /sdcard/*.kcm* /sdcard/*.kl /init.etc/keymaps/custom
# Create /data/local if it doesn't exist, then symlink bin to /sdcard/bin if that doesn't exist
mkdir -p /data/local
[ -e /data/local/bin ] || ln -s /sdcard/bin /data/local/bin
There is now a file that is called /sdcard/local.prop that gets copied on boot. Anything related to setprop can be set there, ie. I have:
dalvik.vm.execution-mode = int:jit
dalvik.vm.heapsize = 32m
ro.cdma.home.operator.alpha seems unnecessary now, but you must still have a valid eri.xml (again residing in /sdcard) to get the system to show you the provider.
-- Starfox
---
This is for legacy FRX06 or earlier, kept as reference:
# Readahead for /sdcard as per hyc
echo 2048 > /sys/devices/virtual/bdi/179:0/read_ahead_kb
# Dealing with incomplete swapfile support in userinit.sh, I use a 32mb file
swapon /sdcard/swapfile
# CDMA stuff, /etc gets rebuilt on every boot for now
echo "ro.cdma.home.operator.alpha = Sprint" >> /etc/default.prop
echo "ro.cdma.home.operator.numeric = 31000" >> /etc/default.prop
# CDMA stuff since I keep the Sprint SIM in & changing dalvik to jit
sed -e 's/default_network = 0/default_network = 4/' -e 's/vm.execution-mode = int:fast/vm.execution-mode = int:jit/' /system/build.prop > /sdcard/build.prop
# Bigger heapsize
echo "dalvik.vm.heapsize = 32m" >> /sdcard/build.prop
# /system/build.prop is mounted from /tmp, bindmount mine instead
umount -f /system/build.prop; mount --bind /sdcard/build.prop /system/build.prop
# GPS (0,0) fix
umount -f /system/lib/libhardware_legacy.so; mount --bind /sdcard/libhardware_legacy.so /system/lib/libhardware_legacy.so
# Using hyc RIL
mount --bind /sdcard/libhtcgeneric-ril.so /lib/froyo/libhtcgeneric-ril.so
# hyc's injection RIL lib
mount --bind /sdcard/libril.so /system/lib/libril.so
# Use /bin/sh (Busybox) over statically compiled sh, esp. for arrow key support
mount --bind /bin/sh /system/bin/sh
# I keep eri.xml and serialno in /sdcard/conf, and an empty dir called local
cp -a /sdcard/conf/* /data
# Term emu puts /data/local/bin in path first, I keep some binaries in /sdcard/bin, need to /data/local first
ln -s /sdcard/bin /data/local/bin
Nice. May want to note that the GPS 0,0 fix requires a fixed library.
Two sources for this:
1) Use the one on my testing thread
2) Extract it from system.ext2 of FRX06 (It may be difficult to do this with a running system due to the bindmounts. Although I see you're effectively unmounting the existing bindmount prior to mounting the new one - I should try this weekend to see if that is enough to get the fix to work with FRX06.)
2) is preferable as it's the official release, although it should be identical to mine.
Thanks alot for doing this.
Any chance you could attach the files you are showing to replace in some of your commands? Like some I see are 'build.prop', 'libhardware_legacy.so', 'libhtcgeneric-ril.so' and 'libril.so'.
Or possibly link to the original thread/post you got this from?
where do we put these in froyo.user.conf
anish88 said:
where do we put these in froyo.user.conf
Click to expand...
Click to collapse
Most go in CustomCommands...
Starfox said:
I've been building a list of commands that gets executed into froyo.user.conf. Use this as a reference, as I won't be responsible for your Rhodium exploding.
Click to expand...
Click to collapse
I hope to see most of these already incorporated in the next release...
# Readahead for /sdcard as per hyc
echo 2048 > /sys/devices/virtual/bdi/179:0/read_ahead_kb
Click to expand...
Click to collapse
I've requested this readahead patch to be merged.
# Dealing with incomplete swapfile support in userinit.sh, I use a 32mb file
swapon /sdcard/swapfile
Click to expand...
Click to collapse
Current Android system_server is too stupid to work well with swap. And I think our low_memory_killer settings need to be tweaked to work well with it. I haven't spent any time investigating but it definitely slows down too much. I would recommend against using swap for now.
# CDMA stuff, /etc gets rebuilt on every boot for now
echo "ro.cdma.home.operator.alpha = Sprint" >> /etc/default.prop
echo "ro.cdma.home.operator.numeric = 31000" >> /etc/default.prop
# CDMA stuff since I keep the Sprint SIM in & changing dalvik to jit
sed -e 's/default_network = 0/default_network = 4/' -e 's/vm.execution-mode = int:fast/vm.execution-mode = int:jit/' /system/build.prop > /sdcard/build.prop
Click to expand...
Click to collapse
CDMA stuff is going to be automated in next ril. No more manual prop settings needed.
# Bigger heapsize
echo "dalvik.vm.heapsize = 32m" >> /sdcard/build.prop
Click to expand...
Click to collapse
Good idea.
# GPS (0,0) fix
umount -f /system/lib/libhardware_legacy.so; mount --bind /sdcard/libhardware_legacy.so /system/lib/libhardware_legacy.so
# Using hyc RIL
mount --bind /sdcard/libhtcgeneric-ril.so /lib/froyo/libhtcgeneric-ril.so
Click to expand...
Click to collapse
These should no longer be needed when my rootfs requests are merged.
# hyc's injection RIL lib
mount --bind /sdcard/libril.so /system/lib/libril.so
Click to expand...
Click to collapse
I've requested that this be merged too.
# I keep eri.xml and serialno in /sdcard/conf, and an empty dir called local
cp -a /sdcard/conf/* /data
Click to expand...
Click to collapse
New system image will have a nicer default eri.xml ...
Does this look right? It's hard tell because it's all a jumble in notepad. I highlighted the two items I added in red.
Code:
# General parameters
general{
renice=1 # Run the renice script to inprove call answering
}
#compcache related parameters
compcache{
compcache_en=1 # enable(1) or disable(0)20 compcache
cc_disksize=100 # Ram swap disksize - any number between 1 to 98 should
work; default is 1/4 of the RAM (24)
cc_memlimit=64 # Limit the memory usage for backing swap (cc .5x known issue-defaults to
15% of total RAM)
cc_backingswap_en=0 # enable(1) or disable(0) backing swap
cc_backingswap=/dev/block/mmcblk0p4 # pointing to
the backingswap partition device, swap
}
#create swap file for compcache or linux swap
swap_file{
swap_file_en=0 # set to 1 to
create swap file
# set to 0 to del the swap file
linux_swap_file_size=32 # swap file size in MB
linux_swap_file=/sdcard/swapfile # pointing to the swap file location ( must be /system/sd/)
}
#Linux swap parameters
#
# linux
swap can only be enabled if cc_backingswap_en is set to "0"
#
linux_swap{
linux_swap_en=0 # enable(1) or disable(0) linux swap
linux_swap_partition=/dev/block/mmcblk0p4 # swap partition device
}
#virtual memory
sys_vm{
sys_vm_en=1 # enable(1) or disable(0)
virtual memory configurations
swappiness=0 # default 60
page_cluster=0 # default 3, (0 since CM3.9.6+)
laptop_mode=5 #
default 0
dirty_expire_centisecs=3000 # default 3000
dirty_writeback_centisecs=1500 # default 500
dirty_background_ratio=3 #
default 5
dirty_ratio=5 # default 10
vfs_cache_pressure=200 # default 100 (tendency of the kernel to reclaim cache memory)
overcommit_memory=1 # default 0 (0=Heuristic 1=Always overcommit 2=Don't overcommit)
overcommit_ratio=80 # default 50 (% of
Physical+Virtual memory to allow allocation)
}
# custom shell commands, these commands run last
custom_shells{
chmod 777
/etc/dbus.conf
#echo 2 > /sys/devices/platform/msm_hsusb/usb_function_switch
rm -f /sdcard/fsck*.rec
modprobe ipv6
mount --bind
/sdcard/Android/libhtcgeneric-ril.so /lib/froyo/libhtcgeneric-ril.so
[COLOR=Red]# Bigger heapsize
echo "dalvik.vm.heapsize = 32m" >> /sdcard/build.prop# /system/build.prop is mounted from /tmp, bindmount mine instead
umount -f /system/build.prop; mount --bind /sdcard/build.prop /system/build.prop[/COLOR]#echo "Hello!!!" # example
#echo "You can create
your own commands here" # example
}
Avatar28 said:
Does this look right? It's hard tell because it's all a jumble in notepad. I highlighted the two items I added in red.
Click to expand...
Click to collapse
Looks fine - use Notepad++ if you're on Windows.
arrrghhh said:
Looks fine - use Notepad++ if you're on Windows.
Click to expand...
Click to collapse
Hmm, you're right. MUCH better.
System wouldn't boot into Android at first. Just went black when it should load the animated xdandroid splash screen. Finally realized that I wasn't thinking and needed to copy the build.prop file from the system folder to the SD card before I could call it. Oops.
would anyone care to provide some info on what each command does? benefits?
manny05 said:
would anyone care to provide some info on what each command does? benefits?
Click to expand...
Click to collapse
He's commented each line... if you're not sure then don't use it. highlandsun also went thru them pretty thoroughly.
I think the only thing that isn't in the category of "soon to be obsolete" or "explained by highlandsun" is the vm.heapsize tweak
I believe that vm.heapsize sets the maximum amount of memory a single app can use. As a result, it can sometimes fix applications that claim to be running out of memory when there is plenty of system RAM. (Traffic features in Google Maps are one thing that frequently breaks with the default setting of 12-16M)
Entropy512 said:
I think the only thing that isn't in the category of "soon to be obsolete" or "explained by highlandsun" is the vm.heapsize tweak
I believe that vm.heapsize sets the maximum amount of memory a single app can use. As a result, it can sometimes fix applications that claim to be running out of memory when there is plenty of system RAM. (Traffic features in Google Maps are one thing that frequently breaks with the default setting of 12-16M)
Click to expand...
Click to collapse
how much memory do you think an app needs? i mean how would i know what to set it to.
manny05 said:
how much memory do you think an app needs? i mean how would i know what to set it to.
Click to expand...
Click to collapse
If you read the OP, that value seems good. AFAIK the default is 12, in the OP it's set to 32.
manny05 said:
how much memory do you think an app needs? i mean how would i know what to set it to.
Click to expand...
Click to collapse
Most of the Android forums I've read seem to recommend 32m - which seems to be more than enough for any app I am aware of. I think the majority of cooked Android ROMs for other devices use that value.
Added support for bluetooth:
sed -e "s% /system/bin/hciattach % /data/local/bin/brcm_patchram_plus -r --enable_hci %" -e "s%-n -s 115200 /dev/ttyHS1 texas 115200 flow%--enable_lpm --baudrate 4000000 --patchram /sdcard/BCM4325.hcd /dev/ttyHS1%" -i /etc/init.rc
This of course assumes you have patchram and the hcd files in their respective place.
-- Starfox
Starfox said:
# Bigger heapsize
echo "dalvik.vm.heapsize = 32m" >> /sdcard/build.prop
Click to expand...
Click to collapse
If this heapsize line is all I want to use from the thread, should I omit the ">> /sdcard/build.prop"? This stuff is all over my head, but I'm thinking that portion might refer to other commands I'm not using and a file I might not have. Any illumination would be appreciated.
___________________
The following two commands from elsewhere (as pulled from manekineko's custom conf) enable droidwall. This seemed like a good thread for them to be in.
modprobe xt_owner
modprobe ipt_REJECT
Click to expand...
Click to collapse
For those using F22's rootfs with the new keymaps and would like to use it over the somewhat braindead one residing in FRX07, these commands will help you keep the mappings:
1) While using F22's rootfs with the correct physkeyboard, copy raph_navi_pad.* and microp-keypad.* from /etc/keymaps to /sdcard
2) Rename raph_navi_pad.kl to qwerty.kl
3) Switch over to FRX07, and add these lines to froyo.user.conf
cp -a /sdcard/*.kcm.bin /sdcard/*.kl /init.etc/keymaps/default
4) Then go to startup.txt, and delete any reference to physkeyboard=
This prevents the init from overwriting "our" keymaps with theirs, as keylayout processing occurs after parsing froyo.user.conf. The init copies whatever is in /init.etc/keymaps/default to the proper place in /system/usr/key*, then checks /init.etc/keymaps/$physkeyboard/ exist, then does the same for that directory.
If you want to preserve the default keymaps directory for some reason, you could also do:
mkdir -p /init.etc/keymaps/custom
cp -a /sdcard/*.kcm.bin /sdcard/*.kl /init.etc/keymaps/custom
And use physkeyboard=custom for steps 3 and 4.
Now time for a rant:
Really why even bother defining a key to GRAVE (microp*.kl) then defining GRAVE as 0x03 (aka Ctrl-C) in the .kcm file. You can see the generated .kcm.bin has that included, by hd microp*.kcm.bin, at the bottom. Also why take away a useable SYM popup with 0x09 (aka Ctrl-I or TAB), again in the .kcm file.
Also, the choice of b1home vs b4home. IMHO Android is too unstable to lose ENDCALL. I can recall a number of times the system became unusable with an active phone call. Relying on touch screen interaction to end a call, on a what is still an unstable port, is quite idiotic. Not to mention you lose that nice end button feature in Spare Parts. You still need the same keypress to get to the dialer with either (as pressing takes you to either the home or contact list, and another to go to dialer).
-- Starfox
Updated post for FRX07, first and last post has been edited.
-- Starfox

[Q] Has anybody know how to root GT-I9001

Hi,
Is there some way to root I9001 now or I have to wait.
Firmware I9001XXKE8
Android 2.3.3
Kernel 2.6.35.7
I tried several methods (Superoneclick 1.7, 1.9.1, Gingerbreak 1.2) available for I9000 but nothing positive.
If someone can guide me in this process will be very appreciated.
Go here for step by step instructions: http://androidhogger.com/how-to-root-samsung-galaxy-s2-heres-the-tutorial.html.
Hi,
It is guide for I9100 but I have I9001 it is completely different hardware, so I doubt that the same guide can be applied to I9001.
Any news on rooting? Have you sucseeded?
No, still waiting, but it starts to sell to mass in Russia so soon will get news.
Since yesterday the new 2.3.4 firmware is out:
http://netload.in/datei5X4ZyAkNkO/I9001XXKP4_v2.3.4.rar.htm
(edit: maybe its not 2.3.4 ... samfirmware write 2.3.3)
... but we wait still for the root...
SPOOKY
afaik 2.3.x cannot be rooted. only 2.2.x
sweetnsour said:
afaik 2.3.x cannot be rooted. only 2.2.x
Click to expand...
Click to collapse
Say what? Ofcourse 2.3.x can be rooted. We just have to get more attention to the 9001 so that the rom builders actively start devving this device.
Any one knows how to root this device?
Sent from my GT-I9001 using XDA Premium App
I'm looking for a solution as well, please don't make me use Touchwiz..
Have tried to look into ways to root this phone. It looks like it'll need to be root in similar way to i9100. So guess will need to wait for dev to come up with a special kernel for rooting.
İ hope they they ll come up with new karnel as soon.as possible
Sent from my GT-I9001 using Tapatalk
sweetnsour said:
afaik 2.3.x cannot be rooted. only 2.2.x
Click to expand...
Click to collapse
Here http://forum.xda-developers.com/archive/index.php/t-1136781.html is afaik 2.3.3 rotted. I think there is a posibility to root I9001.
I hope so ....! Did u try this method?
Sent from my GT-I9001 using Tapatalk
westcrip said:
I hope so ....! Did u try this method?
Sent from my GT-I9001 using Tapatalk
Click to expand...
Click to collapse
Nope but I will try in this weekend. I found how to restore phone when you brick it (if something happen) , and it's not so hard. That's why I will use different method to root it. I just wonder if one of brick is avilable or more. I only know how to unbrick by this method http://www.youtube.com/watch?v=2qB4RNoXTd8 . Its very simple just install software downoladed from http://www.samfirmware.com/WEBPROTECT-i9001.htm our software is in the middle I9001XXKF8 ##. Odin as well recognize my phone.
I have managed it to root the i9001. So far it is very complicated, and the detailed guide as well as the analysis of SMD archives is only in German available:
http://www.android-hilfe.de/samsung...g-galaxy-s-plus-i9001-rooten.html#post1911955
As always: You are responsible for your Phone! If someone bricks his device using this guide, I am not responsible for that! Bad Luck, I have warned you! Its a dangerous job! You really shouldn't do it.
In short:
- extract the PDA SMD File
- mount system.ext4
- copy su binary and Superuser.apk into the mounted image
- adjust the file permissions (especially the suid bit for su)
- umount system.ext4
- repack the PDA SMD.
I have created two Linux bash scripts for extracting and packing SMD Archives. Warning: I'm not very experienced in bash scripting. If someone is here who is capable of making a nice script of it, feel free! The scripts are working, that's all so far. They won't win a price in a beauty contest.
First the extract.sh:
Code:
#!/bin/bash
base=0
length=1
while (( length > 0 ))
do
# calculate Length
let "skip = base + 18"
length=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
let "length = length * 65536"
let "skip = base + 16"
length2=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
let "length += length2"
let "length = length / 512" # Number of 512-Byte blocks
# calculate offset
let "skip = base + 22"
offset=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
let "offset = offset * 65536"
let "skip = base + 20"
offset2=`hexdump -e '"%d"' -s ${skip} -n 2 ${1}`
let "offset += offset2"
let "offset = offset / 512" # Number of 512-Byte blocks
# save header in case of first loop
if (( base == 0 ))
then
dd if=${1} bs=512 of=header count=${offset}
fi
# extract filename
let "skip = base + 32"
filename=`dd if=${1} skip=${skip} count=16 bs=1 2>/dev/null`
# and finally: extract image
if (( length > 0 ))
then
echo "Length: ${length}"
echo "Offset: ${offset}"
echo "Filename: ${filename}"
dd if=${1} bs=512 of=${filename} skip=${offset} count=${length} 2>/dev/null
fi
# next header
let "base += 64"
done
Syntax: ./extract.sh Archive.smd
The script will extract the archive and create a lot of local files (system.ext, boot.img and so on). Well, the content of the Archive obviously.
Root the system.ext4:
I have used the newest su and Superuser.apk from here (3.0-beta4 at the moment. Newer ones should be ok):
http://goo-inside.me/superuser
The steps for rooting a system.ext4:
Code:
mkdir system
sudo mount -o loop system.ext4 system
sudo cp su system/xbin/
sudo chown 0.0 system/xbin/su
sudo chmod 4755 system/xbin/su
sudo cp Superuser.apk system/app/
sudo chown 0.0 system/app/Superuser.apk
sudo chmod 644 system/app/Superuser.apk
sudo umount system
And the pack.sh. Note: The pack.sh so far expects an existing "header" file created from an extract action and all files to be added into the archive. The resulting archive will have the same contents, as the starting archive (of course with a modified system.ext4). MD5 Checksums in the archive are calculated automatically.
Code:
#!/bin/bash
base=16
length=0
filename=dummy
# save the beginning
dd if=header of=newheader bs=1 count=16 2>/dev/null
# First create the MD5 checksums of all included (and maybe modified) files and generate the new header
while [ ! -z "${filename}" ]
do
# Length, offset, etc. is unchanged, just copy it.
let "skip = base"
dd if=header of=newheadertmp bs=1 skip=${skip} count=32 2>/dev/null
cat newheadertmp >> newheader
rm newheadertmp
# extract filename
let "skip = base + 16"
filename=`dd if=header skip=${skip} count=16 bs=1 2>/dev/null`
if [ ! -z "${filename}" ]
then
echo "creating MD5Sum of: ${filename}"
checksum=`md5sum ${filename} | tr '[a-z]' '[A-Z]'`
echo -n ${checksum:0:32} >> newheader
fi
# next header
let "base += 64"
done
# save the rest of the old header.
filesize=$(stat -c%s header)
let "base -= 32"
let "size = filesize - base"
dd if=header of=newheadertmp bs=1 skip=${base} count=${size} 2>/dev/null
cat newheadertmp >> newheader
rm newheadertmp
# the new header is the first content of the new archive.
cat newheader > ${1}
# now add all files to the archive.
filename=dummy
base=16
while [ ! -z "${filename}" ]
do
# extract filename
let "skip = base + 16"
filename=`dd if=header skip=${skip} count=16 bs=1 2>/dev/null`
if [ ! -z "${filename}" ]
then
echo "Adding: ${filename}"
cat ${filename} >> ${1}
fi
# next header
let "base += 64"
done
rm newheader
Syntax: ./pack.sh Archive.smd
Flash the resulting .smd files using Odin Multi Downloader an be happy about a rooted SGS Plus.
Note: The procedure has been tested with European KF6 and KP4 firmware. the scripts are capable of extracting and packing other SMD Archives as well, like Modem or CSC SMDs. But you don't need it for rooting (but maybe for debranding or customizing ROMs).
I'm thinking about an simpler root method like a modified kernel with a "magic" initramfs (like CF Root is working). This would make rooting of course much easier. But I have to investigate a lot of things handling boot.imgs.
Nice one RiverSource! Let's hope this is the start of more to come (ie. easier root, custom roms..).
Hello,
ok, next step for rooting the SGS Plus: The FMROOT (hehe). FMROOT is the original untouched Samsung Kernel with a modified init.rc. The init.rc calls a script which places the su binary and the Superuser.apk into the /system partition.
As always: You are responsible for your Phone! If someone bricks his device using this guide, I am not responsible for that! Bad Luck, I have warned you! Its a dangerous job! You really shouldn't do it.
Howto:
Download the appropriate file for your firmware.
Extract it
There should be 2 Files: AriesVE.ops and FMROOT_?????.smd
Use Odin Multi Downloader
Put "AriesVE.ops" in OPS
Put "FMROOT_?????.smd" in PDA
Flash. Wait 5 Seconds. Phone reboots. Phone is rooted. Normally without loosing data or settings.
Please ask here, if your Firmware is not available. It should be possible to create an appropriate FMROOT Kernel.
Credits:
astuermer for pointing me to the correct su and Superuser binaries.
Chainfire here from XDA Developers. My script is based on the CF-Root
Paul from Madaco. I had a closer look into his "superboot".
Lots and Lots of Custom ROM Developers for i9000 and i9100. I have learned a lot about Android Images on Samsung phones from them.
For the developers: the FMBOOT Script called by init.rc:
Code:
mount -o rw,remount -t ext4 /dev/block/mmcblk0p15 /system
rm /system/xbin/su
rm /system/bin/su
mkdir /system/xbin
cat /fmboot/su > /system/xbin/su
chmod 4755 /system/xbin/su
cat /fmboot/Superuser.apk > /system/app/Superuser.apk
mount -o ro,remount -t ext4 /dev/block/mmcblk0p15 /system
And the calling code inside the init.rc:
Code:
start fmboot
class_start default
## Daemon processes to be run by init.
##
service fmboot /system/bin/sh /fmboot/fmboot.sh
user root
group root
oneshot
If someone is interested, I can post a howto on modifying boot.imgs for SGS Plus. Don't hesitate to ask. BTW, i have also coded a script which is capable of generating SMD archives with any content (not based on a previous SMD archive). I can also post it, if someone is interested.
I think, I will optimize the script in the future. Checking if the phone is already rooted and skip the thing for example. Or adding busybox. Are there any additional ideas?
Thank you very [email protected]@@@ Come on!
THX, THX,..
It works, rooted..!!

[Request] Dev Help Pretty Please!

Ok I'm on the OTA 2.3.4 from a fresh unlocked 4.1.83 no problems what soever and I'm looking to make a few mods when I saw the link posted for the 2.3.4 HDMI Mirror over at
http://forum.xda-developers.com/showthread.php?t=1169457
I went ahead and ran
adb shell
su
mount -o remount,rw /dev/block/mmcblk0p12 /system
sed -ie s/ro.hdmi.mirror.enable=false/ro.hdmi.mirror.enable=true/g /system/build.prop
mount -o remount,ro /dev/block/mmcblk0p12 /system
cd /etc/init.d
cp startXServer.sh startXServer.bak
(head -n 40 startXServer.bak; echo "if [ ! -e /var/run/noWebtop ]; then"; tail -n 12 startXServer.bak; echo "fi") > startXServer.sh
restart your phone
I read through the command and seemed pretty safe and was excited because the post listed the HDMI Mirror as being in "landscape" mode. Hell yeah right! Well it wasn't, it was the same portrait so I was looking to revert back. Go change the build.prop back for the ro.hdmi.mirror to equal false. No big deal that's easy enough with root explorer. Read through the commands and saw that the startXServer.sh was cp to startXServer.bak. Easy enough just delete the startXServer.sh and rename startXServer.bak to .sh.
Well there is the problem. When i ran the commands the first time didn't work so i went into the build.prop and did a manual change. Then re-ran the bottom half. It seems doing that I over wrote the .bak agan and now both files are exactly the same and have no way of reverting. I have the system, boot, and webtop backed up with an .img but that didn't fix my entertainment center when I plug in an HDMI to the TV. The original commands did a back-up so I didn't double back-up the file.lol
I was wondering if a dev that has a little more command line knowledge, maybe the orginal contents of startXServer.sh, or the actual file could help me out with the revert back and a working entertainment center. The current contents are
if [ ! -e /var/run/noWebtop ]
fi
I'm pretty sure that's the problem, unless someone else sees something I'm missing.
**Edit**
This was solved under the Q&A Section from a earlier post yesterday afternoon. Mods please close if necessary. In case any one needs it see below. I just rewrote the startXServer.sh to contain the following.
#!/bin/sh
#
# startX.sh
#
# This script starts the X server
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=startX
DESC="OSH X Server"
. /lib/lsb/init-functions
#umask 002
log_begin_msg "Starting $DESC: $NAME"
rm -f /tmp/serverauth.*
rm -f /tmp/.X0-lock
rm -fr /tmp/.X11-unix
rm -fr /tmp/.ICE-unix
if [ ! -e /home/adas/.tag_master_reset_ls ]; then
/usr/local/sbin/update-language.pl "en_US.UTF-8"
echo 1 > /home/adas/.tag_master_reset_ls
fi
. /etc/environment
export PATH
export LANG
export DISPLAY
export LD_LIBRARY_PATH
export USER=adas
export HOME=/home/$USER
# new way of starting
if [ $1 = "webtop" ]
then
sudo -u adas -i /usr/bin/startx -- -nolisten tcp -layout HDMI vt2 &
else
sudo -u adas -i /usr/bin/startx /usr/local/bin/xnull -- -nolisten tcp -layout HDMI vt2 &
fi

[Q] autostart.sh and u2nl to init.d

How can I add u2nl to init.d? I have an HTC Evo 4g LTE and need to make android 4.3 Viper4g Rom run my script on boot. I've tried to use Root Explorer and Root Browser apps to manually add them to the init.d folder, set permissions and changed owner and group to root. But my phone won't boot after I've added my script. The name of my script file is autostart.sh and this is what it contains.
#!/system/bin/sh
export PATH="$PATH:/system/bin"
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -t nat -F
iptables -X
iptables -t nat -A OUTPUT -o rmnet0 -p 6 ! -d 10.132.25.254 -j REDIRECT --to-port 1025
u2nl 10.132.25.254 8080 127.0.0.1 1025 >/dev/null 2>&1 &
sh -c "sleep 5;kill `ps|grep nk.bla.android.autostart|grep -v grep|awk '{print $2}'`" &
exit 0
I know someone here has the knowledge to make this happen. Please advise and assist. Thanks. P.S. I have tried to rename the script to 99data and placed it init.d directory so it would run last but phone won't boot.?
solcam said:
How can I add u2nl to init.d? I have an HTC Evo 4g LTE and need to make android 4.3 Viper4g Rom run my script on boot. I've tried to use Root Explorer and Root Browser apps to manually add them to the init.d folder, set permissions and changed owner and group to root. But my phone won't boot after I've added my script. The name of my script file is autostart.sh and this is what it contains.
#!/system/bin/sh
export PATH="$PATH:/system/bin"
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -F
iptables -t nat -F
iptables -X
iptables -t nat -A OUTPUT -o rmnet0 -p 6 ! -d 10.132.25.254 -j REDIRECT --to-port 1025
u2nl 10.132.25.254 8080 127.0.0.1 1025 >/dev/null 2>&1 &
sh -c "sleep 5;kill `ps|grep nk.bla.android.autostart|grep -v grep|awk '{print $2}'`" &
exit 0
I know someone here has the knowledge to make this happen. Please advise and assist. Thanks. P.S. I have tried to rename the script to 99data and placed it init.d directory so it would run last but phone won't boot.?
Click to expand...
Click to collapse
have you tried a dummy test script that just echos a number to the sdcard file?
Thanks for replying. The script term-init.sh that I found elsewhere on XDA, had a test and set perms output file that can be found in /data/Test.log. I have solved the problem on my Evo 4g LTE but, not on my Sprint Galaxy S3. Turns out that I couldn't use Root Explorer to manually add the file! I had to REALLY MANUALLY add the file using the terminal emulator. That worked on the Evo but not the S3. I had placed the scripts in one postboot.rc files on S3 and it worked fine but, my battery seemed to be draining a lot faster, which was not acceptable. So I guess my problem is half solved. So, do you know how to make it work on the S3? Thanks in advance to anyone that can help me.

Unexpected slowndowns on CM11 (high I/O activity, ANR and black screens)

Hi, I'm an hopeless but advanced user who is suffering from his f***ing S3 device.
No one was able to help me, as simply suggest to do thousands of tests, factory reset, turn to stock rom etc. etc. etc. ...
I haven't free time to dedicate to my device, I want to know the problems cause without time losing, so I thought to attach many logcat files related to happened issues.
I want a definitive help from advanced users, I won't to see bunch of enthusiasts who purpose the easiest ways.
Now I explain them with words: I've a very unstable device in performance terms, at random moments the I/O usage increase to high values causing slowdown, ANR and FCs due to "Input dispatching", rarely also forced reboots (probably system_server keep crashing).
RAM cleaning sometimes is resolutive as it kill many background services, but useless when system processes like mmcqd/0 and the already cited system_server are involved.
I never known the cause, but I know that my phone, with a ridiculous amount of free RAM (often 100-150 MB) and a large amount of installed apps, works greatful... until some f***ed mess happens.
I'm on latest CM 11 M releases (actually M10) with related Gapps and latest BOEFFLA NG Kernel (but its experimental status is not cause of issues, as I had the same situation with the stable kernel).
No OC (only the 5th gpu clock step on 533 Mhz by default), little UV (-25v for both cpu and gpu, the minimum tolerated by AnTuTu Benchmark), governor and scheduler respectively pegasusqplus and sio for both storages.
Then... the Xposed Framework enabled with GravityBox module (with few enabled functions, so might not be conflicts), build.prop and init.d edits, in summary related to have the JIT compiler enabled, gpu for display composition, better deep sleep, lower minfree values and VM optimization.
All the lines are thoughtful since almost an year and used by lot of users, I reported them below.
Build.prop
Code:
# Faster soft reboots #
persist.sys.purgeable_assets=1
# The better Deep Sleep mode #
ro.ril.sensor.sleep.control=1
pm.sleep_mode=1
# Better power saving #
power_supply.wakeup=enable
# Better Dalvik management #
dalvik.vm.checkjni=true
dalvik.vm.verify-bytecode=true
dalvik.vm.execution-mode=int:jit
dalvik.vm.dexopt-flags=m=y
# Enable FPS capping #
debug.gr.swapinterval=1
# Hardware acceleration for UI #
debug.composition.type=gpu
debug.sf.hw=1
persist.sys.ui.hw=1
# Hardware acceleration for videos #
video.accelerate.hw=1
# Performance improvements #
debug.performance.tuning=1
# Performance statistics in logcat #
debug.egl.hw=1
debug.egl.profiler=1
# Better OOM and LMK management #
ro.HOME_APP_MEM=2048
ro.FOREGROUND_APP_MEM=4096
ro.PERCEPTIBLE_APP_MEM=4096
ro.VISIBLE_APP_MEM=6144
ro.SECONDARY_SERVER_MEM=8192
ro.BACKUP_APP_MEM=8192
ro.HIDDEN_APP_MEM=10240
ro.HEAVY_WEIGHT_APP_MEM=10240
ro.CONTENT_PROVIDER_MEM=12228
ro.EMPTY_APP_MEM=14336
ro.HOME_APP_ADJ=1
ro.MIN_CRASH_INTERVAL=10
# Better upload speed #
ro.ril.hsxpa=3
# Better battery saving while losting telephony signal #
ro.mot.eri.losalert.delay=1000
# Enable IPv4 and IPv6 support #
persist.telephony.support.ipv4=1
persist.telephony.support.ipv6=1
# Better Wi-Fi bandwidth usage #
net.tcp.buffersize.wifi=524288,1048576,2097152,524288,1048576,2097152
# OpenDNS for all the networks #
net.dns1=208.67.222.222
net.dns2=208.67.220.220
net.gprs.dns1=208.67.222.222
net.gprs.dns2=208.67.220.220
net.ppp0.dns1=208.67.222.222
net.ppp0.dns2=208.67.220.220
net.rmnet0.dns1=208.67.222.222
net.rmnet0.dns2=208.67.220.220
net.wlan0.dns1=208.67.222.222
net.wlan0.dns2=208.67.220.220
net.secondary.dns=208.67.220.220
# Prevent blackscreen issues after calls #
mot.proximity.delay=25
ro.lge.proximity.delay=25
# Better scrolling #
ro.min_pointer_dur=8
ro.min.fling_velocity=8000
ro.max.fling_velocity=12000
# Call ringtone delay #
ro.telephony.call_ring.delay=500
# Better picture quality #
persist.sys.use_dithering=1
# Better speech quality #
ro.ril.enable.amr.wideband=1
# Better audio quality #
persist.af.resampler.quality=255
af.resampler.quality=255
# Better camera quality #
ro.media.enc.jpeg.quality=100
# Better camcorder #
ro.camcorder.videoModes=true
# Better camera flash #
ro.media.capture.flashIntensity=70
ro.media.capture.torchIntensity=70
# Faster video streaming #
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan =true
media.stagefright.enable-http=true
media.stagefright.enable-rtsp=true
Init.d script
Code:
## Filesystem trim for each partition ##
#!/system/bin/sh
fstrim -v /system
fstrim -v /data
fstrim -v /cache
## Ext4 filesystem instant mount ##
#!/system/bin/sh
busybox mount -o remount,noatime,noauto_da_alloc,nodiratime,barrier=0,nobh /system
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /data
busybox mount -o remount,noatime,noauto_da_alloc,nosuid,nodev,nodir atime,barrier=0,nobh /cache
## Tweaks for better performance and battery saving ##
sysctl -p
sysctl -w vm.dirty_background_ratio=70;
sysctl -w vm.dirty_expire_centisecs=250;
sysctl -w vm.dirty_ratio=90;
sysctl -w vm.dirty_writeback_centisecs=1000;
sysctl -w vm.drop_caches=3;
sysctl -w vm.min_free_kbytes=8192;
sysctl -w vm.vfs_cache_pressure=10;
## Tweaks for better security ##
sysctl -w net.ipv4.tcp_syncookies=1;
sysctl -w net.ipv4.conf.all.rp_filter=1;
sysctl -w net.ipv4.conf.default.rp_filter=1;
sysctl -w net.ipv4.tcp_synack_retries=2;
sysctl -w net.ipv4.tcp_syn_retries=2;
sysctl -w net.ipv4.tcp_max_syn_backlog=1024;
sysctl -w net.ipv4.tcp_max_tw_buckets=16384;
sysctl -w net.ipv4.icmp_echo_ignore_all=1;
sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1;
sysctl -w net.ipv4.tcp_no_metrics_save=1;
sysctl -w net.ipv4.tcp_fin_timeout=15;
sysctl -w net.ipv4.tcp_keepalive_time=1800;
sysctl -w net.ipv4.ip_forward=0;
sysctl -w net.ipv4.tcp_moderate_rcvbuf=1;
sysctl -w net.ipv4.route.flush=1;
sysctl -w net.ipv4.udp_rmem_min=6144;
sysctl -w net.ipv4.udp_wmem_min=6144;
sysctl -w net.ipv4.tcp_rfc1337=1;
sysctl -w net.ipv4.ip_no_pmtu_disc=0;
sysctl -w net.ipv4.tcp_ecn=0;
sysctl -w net.ipv4.tcp_sack=1;
sysctl -w net.ipv4.tcp_fack=1;
sysctl -w net.ipv4.conf.default.accept_source_route=0;
sysctl -w net.ipv4.conf.all.accept_source_route=0;
sysctl -w net.ipv4.conf.all.accept_redirects=0;
sysctl -w net.ipv4.conf.default.accept_redirects=0;
sysctl -w net.ipv4.conf.all.secure_redirects=0;
sysctl -w net.ipv4.conf.default.secure_redirects=0;
## Extended I/O scheduler queue ##
if [ -e /queue/nr_requests ]; then
echo 1024 > /queue/nr_requests; fi;
## Enable V-Sync ##
#!/system/bin/sh
mount -o remount,rw /sys /sys
busybox mount -t debugfs debugfs /sys/kernel/debug
busybox echo '1' > /sys/kernel/debug/msm_fb/0/vsync_enable
umount /sys/kernel/debug
## Fix apps permissions (by Einherjar Dev Team - www.edtdev.com) ##
logFile=/data/edt/logs/S30edt_perms.log
if [ -f $logFile ]; then
rm $logFile
fi
touch $logFile
mount -o rw,remount /dev/block/stl9 /system
echo "Setting permissions" >> $logFile
for file in /system/app/* /system/framework/* /data/app/*; do
echo " setting permissions (644) for $file" >> $logFile
chmod 644 $file
done
echo "chmodding init.d folder"
chmod 777 /system/etc/init.d
for file in /system/etc/init.d/*; do
echo " setting permissions (777) for $file" >> $logFile
chmod 777 $file
done
echo "Permissions set" >> $logFile
## Zipalign apps (by Wes Garner) ##
#!/system/bin/sh
LOG_FILE=/data/zipalign.log
CURRDATE=`date +%s`
if [ -e $LOG_FILE ]; then
rm $LOG_FILE;
fi;
echo "Starting Automatic ZipAlign $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $LOG_FILE;
for apk in /data/app/*.apk ; do
zipalign -c 4 $apk;
ZIPCHECK=$?;
if [ $ZIPCHECK -eq 1 ]; then
echo ZipAligning $(basename $apk) | tee -a $LOG_FILE;
zipalign -f 4 $apk /cache/$(basename $apk);
if [ -e /cache/$(basename $apk) ]; then
cp -f -p /cache/$(basename $apk) $apk | tee -a $LOG_FILE;
rm /cache/$(basename $apk);
else
echo ZipAligning $(basename $apk) Failed | tee -a $LOG_FILE;
fi;
else
echo ZipAlign already completed on $apk | tee -a $LOG_FILE;
fi;
done;
echo "Automatic ZipAlign finished at $( date +"%m-%d-%Y %H:%M:%S" )" | tee -a $LOG_FILE;
fi
## Optimization of all sqlite databases ##
if [ -d "/system" ]; then
for i in \ `find /system -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
if [ -d "/dbdata" ]; then
for i in \ `find /dbdata -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
if [ -d "/data" ]; then
for i in \ `find /data -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
if [ -d "/datadata" ]; then
for i in \ `find /datadata -iname "*.db"` do \ sqlite3 $i 'VACUUM;'; done
## Scheduled cron jobs - Copyright (C) 2010 Jared Rummler (JRummy16) GNUv3 License ##
#!/system/bin/sh
symlink_system_bin() {
# crond has "/bin/sh" hardcoded
if busybox [ ! -h /bin ]
then
mount -o remount,rw rootfs /
busybox ln -s /system/bin /bin
mount -o remount,ro rootfs /
fi
}
export_timezone() {
# set timezone (if you're not between -0500 and -0800 you get PST)
# todo - support other timezones
timezone=`date +%z`
if busybox [ $timezone = "-0800" ]; then
TZ=PST8PDT
elif busybox [ $timezone = "-0700" ]; then
TZ=MST7MDT
elif busybox [ $timezone = "-0600" ]; then
TZ=CST6CDT
elif busybox [ $timezone = "-0500" ]; then
TZ=EST5EDT
else
TZ=PST8PDT
fi
export TZ
}
set_crontab() {
# use /data/cron, call the crontab file "root"
if busybox [ -e /data/cron/root ]
then
mkdir -p /data/cron
cat > /data/cron/root
Thank you so much... may the best win!
I've to survive almost until Christmas.

Categories

Resources