☠ [APK][Tweaks & Mods] █ PIMP MY ROM █ BETA v1.0 {Any Device // Any Rom} ☠
NEW : Check-out the Dedicated Pimp my Rom website (still under construction) : http://www.pimpmyrom.org
Subscribe to the Newsletter to be Notified when a New Update is Released!
Quote:
Quote:
Quote:
Quote:
Network & Internet
Wifi Scan interval in seconds
TCP Congestion Algorithm selection
Media streaming tweaks
Use Google DNS servers
Enable/Disable HSUPA
Protect against SYN attacks by hardening your TCP stack
Avoid Time-Wait state
Block all redirects
Block source-routing
Various IPv4 tweaks
Multitasking
3 presets of OOM Groupings (lom/mid/high)
3 presets of Minfree values (low/mid/high)
2 presets of zRam compression (64mb/128mb)
Adjust Dalvik VM to new OOM & Minfrees
Adjust kernel to new OOM & Minfrees
Renice low consumption processes to a softer value
Dalvik VM
VM Heap Size selection
VM Heap Growth-limit selection
VM Heap Start Size selection
Optimization Flags selection, any combination of verification, optimization & register mapping
Force dex optimization on /data only
Enable/Disable Just in Time Compiler (JIT)
Enable/Disable JNI Error Checking
Enable/Disable bytecode verification for Dalvik
Kernel
Governor tweaks
I/O Scheduler tweaks
Disabling I/O stats
Enable/Disable Vertical Synchronization (Vsync)
Disable Normalized Sleepers
Disable New-Fair Sleepers
Disable Gentle-Fair Sleepers
Toggle Android Features
Hardware Acceleration
Force GPU rendering
Surface Dithering
Purgeable Assets
16bit Transparency
Kernel JNI Error Checking
Android Logger
Locking launcher in memory
Telephony
Call Ring Delay
Proximity Sensor delay
In-Call amount of volume steps
SMS & MMS retry timer if failed sending
SMS & MMS amount of retries if failed sending
Enable/Disable AMR Wideband (a.k.a HD Voice)
Touchscreen & Display
Amount of fingers recognized by the screen (multitouch)
Minimum amount of time between 2 touch events (Pointer Duration)
Maximum amount of events per second WindowsManager can handle
SurfaceFlinger's minimum velocity
SurfaceFlinger's maximum velocity
Enable/Disable FPS Capping
Miscellaneous
Optimize sqlite3 databases at each boot
I/O Tweaks for ext4 file-systems
Internal & External sdcard tweaks
Zipalign all apks at each boot
Various battery saving tweaks
Various camera quality tweaks
Raising jpg quality to 100%
Enable quickpoweron
Quote:
Quote:
Rescue Package
This tool allows you to completely safely pimp your rom.
It will backup all your original system files and create a flashable zip containing them. This way, if some tweak cause problems, simply flash your Rescue Package to remove all modifications made by Pimp My Rom while leaving all your apps & data intact.
Universal Init.d Support
Enable init.d support with absolutely ANY kernel.
This tool is the first completely universal method for granting init.d support, for the simple reason that everything happens on the app side.
Pimp My Rom will detect when your device is rebooted and execute your init.d scripts automatically, acting just like a kernel with init.d support would.
This tool also gives you a way to quickly manage your int.d scripts. Edit, delete & run scripts at the touch of a button!
Pimp My CPU
A beautifully designed interface that gives you full control over your processor :
Minimum & maximum CPU frequencies management
Overclocking if your kernel supports it
Governors management
Schedulers management
Voltage control
Density Changer
Safely modify your display's density in 3 easy steps.
Entropy Generator
A graphical user interface for the Random Number Generator Daemon (RNGD) binary.
Independently set :
Feed Interval
Feed Timeout
Amount of Random bytes
Fill-watermark
Kernel random read wakeup threshold
Kernel random write wakeup threshold
Dual Bootanimations
Allows you to have 2 different bootanimations which will alternatively be displayed, one boot each.
Lock Apps in Memory
Bypass Android's built-in task killer by locking any installed application in memory, including system apps!
Navigation Bar Toggle
Self-explanatory, toggle the navigation bar on & off
Gps Configuration Choose between 79 countries + 5 continents of gps.conf files: Having the right gps.conf file for your country is esssential for the accuracy and lock-speed of your gps)
Code:
Africa
Asia
Europe
North America
Oceania
South America
Angola
Argentina
Australia
Austria
Bangladesh
Belarus
Belgium
Bosnia & Herzegovina
Brazil
Bulgaria
Cambodia
Canada
Chile
China
Costa-Rica
Croatia
Czech Republic
Denmark
El Salvador
Estonia
Finland
France
Germany
Greece
Guatemala
Hong-Kong
Hungary
India
Indonesia
Iran
Ireland
Israel
Italy
Japan
Korea
Kyrgyzstan
Latvia
Lithuania
Luxembourg
Macedonia
Madagascar
Malaysia
Mexico
Moldova
Netherlands
New Caledonia
New Zealand
Norway
Oman
Pakistan
Panama
Philippines
Poland
Portugal
Qatar
Republic of Serbia
Romania
Russian Federation
Saudi Arabia
Singapore
Slovakia
Slovenia
South Africa
Spain
Sri Lanka
Sweden
Switzerland
Taiwan
Tanzania
Thailand
Turkey
Ukraine
United Arab Emirates
United Kingdom
United States of America
Uzbekistan
Venezuela
Vietnam
Yugoslavia
Device Hidden Menu
Access your device's hidden settings without having to dial weird and hard to remember codes
Quote:
Quote:
Download & install some popular mods without flashing anything!
Pimp My Beats
A full-blown audio mod containing :
Modified DSPManager
Beats Audio binaries, libs, framework & other assets
Dolby Mobile binaries, libs, framework & other assets
SRS binaries, libs, framework & other assets
Bravia Engine 2
Install the very popular Bravia Engine 2 by Sony on any device with the touch of a button!
xLoud & ClearAudio+
Install the popular xLoud audio enhancement, along with the brand new ClearAudio+ engine and equalizer.
Sony Album
Install the Sony Gallery & Photo Editor app for a full Sony media experience
OpenVPN Support
Add OpenVPN support to your device and surf the web safely
Quote:
Quote:
Pimp My Rom comes with its own set of Settings.
Those allow you to :
Select among 12 different transition animations to apply independently to each section of the app
Select the type of reboot used by the "Reboot Required" Notification (Hot reboot/Normal reboot)
Clear all the app's preferences
Quote:
Quote:
Currently, the only option included i this section allows you to have the "PIMPED" prefix before your Rom's name in Settings/About
Quote:
Make sure to always have a nandroid backup before applying tweaks
Quote:
Make a nandroid backup
Download the app
Install it like you would with any apk
Click the rescue package section in the app and create a new Rescue Package
Choose and apply the tweaks you want, make sure you read the descriptions and instructions in-app
Added a new Tool : Density Changer. Allows you to modify your device's LCD density easily and safely, avoiding the usual playstore compatibility issues after dpi changes
Fixed Voltage Control set-on-boot function
Alpha v3.2 (17/12/2012)
New Telephony Tweaks section (all values are automatically detected) :
- Call Ring Delay : Define the interval of time in seconds between the dialing and the ringing
- Proximity Sensor Delay : Define the delay between your sensor's detection and the screen being lit off/back-on
- In-Call Volume Steps : Define the maximum amount of volume steps while in call. Only working on froyo & gingerbread (Android 2.2.x & 2.3.x)
- SMS/MMS Retry Timer : Define the amount of automatic retries when an SMS or MMS fails to be sent as well as the delay between those retries
- AMR Wideband : improve in-call audio quality by enabling Adaptive Multi-Rate encoding
[LIST][*] Improved the Camera Quality tweak (in the Miscellaneous section) by adding more build.prop modifications :
- Set maximum capture resolution to 8 megapixels (ro.media.capture.maxres)
- Set panorama resolution to 3264x1840 (ro.media.panorama.defres)
- Set panorama frames resolution to 1280x720 (ro.media.panorama.frameres)
- Enabled VideoModes (ro.camcorder.videoModes)
- Set video media encoder maximum fps to 65 (ro.media.enc.hprof.vid.fps)
Alpha v3.1.1 (17/12/2012)
[LIST][*] Hotfix for the Network & Internet section FC when the current wifi scan interval value couldn't be detected by the app
Alpha v3.1 (16/12/2012)
Added Wifi Scan Interval control to the Network & Internet section, set the interval in seconds between which the system automatically checks for available wifi networks. A high value will save more battery, a low value will help if your wifi disconnects often.
Fixed Init.d support verification process that was returning false everytime in v3.0
Fixed Hardware Acceleration enabler tweak that was commented-out by mistake in v3.0
Fixed Purgeable Assets toggle state not being saved
Fixed SYN Attack protection checkbox state not being saved
Minor text modification
For older changelogs, see post #4 of this thread
Quote:
Quote:
Pimp My Rom works on maybe 99.99% of the android devices, these are only the ones users confirmed working Remember that results might differ on the same device, depending on the rom, kernel and recovery
Quote:
- Acer Liquid Metal (codename ?)
- Asus Infinity (TF700)
- Asus Eee Pad (TF101)
- Asus Transformer Pad (TF300T)
- Cube U30GT-H (Chinese Tab)
- Google-Asus Nexus 7 (Grouper)
- HP Touchpad (codename ?)
- HTC Amaze (codename ?)
- HTC Desire C (codename ?)
- HTC Desire S (S510E)
- HTC Desire HD (codename ?)
- HTC Desire Z (codename ?)
- HTC Droid Incredible (codename ?)
- HTC Evo 3D (codename ?)
- HTC Evo 4G (Supersonic)
- HTC Explorer (A310e)
- HTC HD2 (T9193)
- HTC Incredible S (S710e)
- HTC MyTouch 4G Slide (codename ?)
- HTC One V (Primo)
- HTC One X (Endeavour)
- HTC Thunderbolt (ADR6400L)
- HTC Tattoo (Click)
- HTC Vision (T-mobile G2)
- Huawei Ascend (g300)
- Huawei Honor (U8660)
- Huawei U8030 (codename ?)
- Huawei u8800pro (codename ?)
- Le Pan II Tablet (codename ?)
- LG Eclypse (C800)
- LG G2x (P999 DW)
- LG Optimus Black (codename ?)
- LG optimus one (P500)
- LG Optimus 3D (P920)
- LG Optimistic V (VM670)
- Motorola Atrix 2 (MB865)
- Motorola Atrix 4G (MB860)
- Motorola Bravo (MB520)
- Motorola Defy (codename?)
- Motorola Droid X (MB810)
- Motorola Droid 2 (DW2E)
- Motorola Photon Q (codename ?)
- Motorola Triumph (Virgin Mobile model)
- Samsung Galaxy Ace + (S7500)
- Samsung Galaxy Nexus (i9250)
- Samsung Galaxy Nexus 4G (Verizon)
- Samsung Nexus S (i9020)
- Samsung Nexus S (SCLCD - i9023)
- Samsung Galaxy Exhibit 4g (Ancora)
- Samsung Galaxy Gio (S5660)
- Samsung Galaxy Note (N7000)
- Samsung Galaxy Note 2 LTE (N7105)
- Samsung Galaxy Note 10.1 (N8000)
- Samsung Galaxy Player 5 (YP-G70)
- Samsung Galaxy S (I9000)
- Samsung Galaxy S Advance (I9003)
- Samsung Galaxy S Plus (I9001)
- Samsung Galaxy S2 (i9100)
- Samsung Galaxy S2 (T-Mobile T989)
- Samsung Galaxy S2 (AT&T i777)
- Samsung Galaxy S2 (SHW M250k)
- Samsung Galaxy S2 Epic 4g Touch (SPH-D710)
- Samsung Galaxy S3 (I9300)
- Samsung Galaxy S3 (ATT 1747)
- Samsung Galaxy S3 (T-Mobile)
- Samsung Galaxy Tab (P1000)
- Samsung Galaxy Tab 2 - 7.0 (P3100)
- Samsung Galaxy Tab 7.7 3G (P6800)
- Samsung Galaxy Tab 7.7 Wifi (P6810)
- Samsung Galaxy Tab 7.7 Verizon (i815)
- Samsung Galaxy Tab 8.9 (p7300)
- Samsung Galaxy Tab 10.1 Wifi (P5110)
- Samsung Galaxy Y (S5360)
- Sony Live with Walkman (WT19)
- Sony Xperia Arc S (LT18i)
- Sony Xperia Mini (ST15i)
- Sony Xperia Neo (codename ?)
- Sony Xperia Neo V (codename ?)
- Sony Xperia P (LT22i)
- Sony Xperia Play (R800i)
- Sony Xperia Ray (ST18i)
- Sony Xperia Sola (MT27i)
- Sony Xperia U (ST25i)
- Toshiba Thrive (codename ?)
- Test it on your other devices and report your results here please !
- Nicholas Shake for donating a high performance server that serves your in-app downloads much faster, and allows me to have a full development environment everywhere I go via vnc.
- Each and Every users who provided constructive feedback to help improving this project to its current state
Quote:
If you like this project, please rate the thread 5 stars & Newsworthy
Here you'll find featured articles about Pimp my Rom that were published on different famous android/high-tech websites. If you published one or read one that's not on the list, please tell me so I can add it.
Here are some further explanations of some PmR options :
Multitasking Section
Quote:
¤ OOM groupings :
Android, like any other Linux system, has a built-in task killer, called the LowMemoryKiller (a.k.a LMK).
The LMK analyses the RAM usage of all applications in real-time, and when the system has too many apps open, or too much RAM consumption, the LMK will start killing apps to free-up some memory.
To determine which app to kill first, the LowMemoryKiller distinguishes 10 categories of apps, which are called the Out-Of-Memory (OOM) Priorities.
As the name implies, the LMK will create a kind of ordered list based on the determined priority of the apps.
Those categories are as follow :
Foreground App
Visible App
Secondary Server
Backup App
Home App
Hidden app
Empty App
Perceptible App
Heavy-Weight App
Content Provider App
For each of these categories, Pimp my Rom will modify the memory threshold for LMK to start killing processes and adjust the priority of the categories to match three preset levels of multitasking :
Low : Your device will be able to handle less opened apps at once, but consume less RAM and less battery
Mid : An average good level of both Multitasking and not too much RAM drain/Battery drain
High : Your device will be able to handle a big bunch of opened apps at once without being killed
The OOM settings in PmR also takes care of the ADJ, but I might add a separate 3 levels radiogroup for ADJ too
¤ Minfree Values :
The LowMemoryKiller isn't only about OOM groupings, the Minfree values are very important as well :
The Minfree module of the Low Memory Killer is here to set the minimum amount of free RAM that should always be available.
If the free RAM level goes below the Minfree value, the the LMK starts killing apps (based on the OOM priorities, remember ? )
In other terms, if the LMK is the gun for killing apps, then the Minfree module is the trigger ^^
Again, PmR will allow you to choose between 3 preset levels (for the purpose of clarity for the user, the levels are inverted from the actual values. i.e : High Level in the app wil set a low minfree value, allowing for more multitasking) :
Low : The minimum amount of free Ram (minfree) will be set high, allowing apps to get killed by the LMK quickly. = Not much multitasking, but good battery/less lags as you always have a good amount of free ram
Mid : Balanced Level, good multitasking, not much lags and average battery
High : Big multitasking hog
¤ zRam (Zero Capacitor Ram) :
Taken from Wikipedia :
zRam is an experimental (staging) module of the Linux kernel. It was previously called "compcache". zRam increases performance by avoiding paging on disk and instead uses a compressed block device in RAM in which paging takes place until it is necessary to use the swap space on the hard disk drive. Since using RAM is faster than using disks, zRam allows Linux to make more use of RAM when swapping/paging is required, especially on older computers with less RAM installed.
To make it simple, zRam allows to virtually increase the amount of RAM your device has by using the Swap spaces in your device memory.
This is mostly profitable for low-end devices that come with few ram (512mb generally).
PmR offers 2 levels :
64 mb : virtually adds 64mb of RAM
128mb : virtually adds 128mb of RAM
zRam settings requires a kernel that includes this module.
I hope these little explanations will help you understand how to use those settings, and help you find the right combination for your device and use
Fixed the issue where beats audio and walkman options would be displayed for gb roms when it shouldn't
Various bugfixes (a few swapped selections and unworking tweaks)
Removed the extra apps screen, this wasn't really matching the mainline of this project, since you can grab those apps from the market. Plus this makes the whole package lighter.
Switched to miui installer theme
Quote:
v2.0
ø New Tweaks selection screen : Multitasking
==> Choose between :
4 levels of OOM Priorities
4 levels Minfree settings
2 levels of ZRAM compression
Tweak your kernel and dalvik cache to behave well and be stable on hard multitasking conditions
ø New Tweaks selection screen : Networks & Internet
==> Security tweaks :
Reinforce your TCP/IP Stacks to make them resist to SYN attacks which cause a DoS (Denial of Service) on your device. Now those lame-ass blackhat hackers won't harm you with this.
Block redirects : auto website redirections will be blocked
Block source-routing : source-routing can be used to hack into your device as it allows full tracing of packets.
==> Stability & Speed tweaks :
Increase the buffer and queue size of each tcp socket to give more stability on high broadband consumption conditions
Allow the system to re-use the Sockets on TIME-WAIT state. In clear time-wait causes memory-loading, memory-loading causes internet lagg, internet lagg sucks.
Various IPv4 protocol speed tweaking scripts using sysctl
DNS and ppp0 tweaks for faster name-resolution, which means faster connections to websites.
ø New Tweaks selection screen : GPS Configuration
==> Choose between 79 countries (and 5 continents) of gps.conf files: those files are essential for the accuracy and lock-speed of your device's gps. (Thanks to gangsterjoop for the files)
ø New Adblock file of over 200 000 hosts ! (100x more than before) (Thanks to BSDgeek_Jake for the host file) --> added to extra features screen
ø New init.d scripts :
Move Dalvik-cache to /cache to increase data storage
Bind-mount dalvik-cache to allow a device to boot without sdcard (useful for devices with damaged internal sdcard)
Touchscreen responsiveness improvement tweaks
ø New Enable/Disable features :
Disable and Re-Enable Android logger
Disable Gentle Fair Sleepers
Disable New Fair Sleepers
Disable Normalized Sleeper
ø Rewritten every single init.d script :
This allowed me to realize many of them were not working, so I added a lot of missing values, and fixed a countless number of errors, redundant values and typos. So there should be some big improvement on the effects of init.d tweaks.
I also set an order of execution of init.scripts to avoid conflicts.
ø Removed themes and S-Voice
The S-Voice flaw that allowed other devices to use it appears to be patched and it was heavy, and themes were heavy and not really useful, you can download a countless number of them for free on the market
ø Changed installer theme to Sense
I realized that the options subtitles were not readable with ics theme, so most of the tweaks effects explainations were hidden.
ø Pimp My Rom will now come in two versions :
One will include the latest version of Aroma (with touchscreen working out-of-the-box, but issues on some devices) and One using Aroma v2.51 (With touchscreen calibration, and this version appears to fix the weird texture/ghost-input/moving screen/vibration issues people have with some devices with aroma v2.56)
ø Major code clean-up, various bugfixes
Re-organized and cleaned-up both aroma-config and updater-script
Fixed the way the installation process input displays sections and sub-sections
Fixed some tweaks getting installed instead of others when they shouldn't, and some other bugs
I'm pretty sure I forgot some stuff, I'll add it when it comes back in mind
Developer's Guide on Implementing PmR in your Roms
1) Implementing PmR with a custom preset & playstore OTA updates working
Flash your Rom & apply the tweaks and options you want to be included in your preset
Create a /data folder at the root of your Rom's zip package, and in this folder create a /app folder (so you now have a /data/app path
Download this version of the PmR apk and place it in the freshly created /data/app folder in your Rom's zip (this is the playstore-signed version, which will allow your users to receive OTA updates as if they installed it from the playstore)
Grab the following files from your device and place them at the corresponding locations in your Rom's zip package : (If some of those files are missing on your device, don't worry, this simply means they are not needed in your preset)
Note : this does not include the Apps & Mods section, except for the Adblock & OpenVPN Support
Create the following path of folders in your Rom's zip : /data/data/com.androguide.pimp.my.rom/shared_prefs/
On your device, navigate to /data/data/com.androguide.pimp.my.rom/shared_prefs and copy all the content of this folder to your Rom's zip freshly created /data/data/com.androguide.pimp.my.rom/shared_prefs/ folder
Open your Rom zip's /system/build.prop in a text editor
Now open your device's /system/build.prop in a text editor, and copy everything from the first occurence of "### Pimp my Rom : xxx" to the end of the file, then paste it at the end of your Rom's build.prop (Do not forget to save the modifications)
Ok, now we have added all the required assets for Pimp my Rom and your custom preset, let's pass-on to the updater-script modifications in order to install those assets properly and set the right permissions to them.
In your Rom's zip package, navigate to /META-INF/com/google/android and open updater-script in a text editor
Copy the following lines near the end of the file, but before "unmount("/system");" :
Code:
ui_print("Installing Pimp my Rom with a custom preset...");
package_extract_dir("data", "/data");
set_perm_recursive(0, 0, 0755, 0755, "/system/etc/init.d");
set_perm_recursive(0, 0, 0771, 0660, "/data/data/com.androguide.pimp.my.rom/shared_prefs");
set_perm(0, 0, 0644, "/data/app/com.androguide.pimp.my.rom-1.apk");
set_perm(0, 0, 0644, "/system/etc/hosts");
set_perm(0, 0, 0755, "/system/etc/install-recovery.sh"); <<< Do NOT include this line if you didn't activate init.d through PmR in your preset
set_perm(0, 0, 0755, "/system/bin/entropy-gen"); <<< Do NOT include this line if you didn't use the Entropy Generator in your preset
set_perm(0, 0, 0755, "/system/xbin/rngd"); <<< Do NOT include this line if you didn't use the Entropy Generator in your preset
set_perm(0, 0, 0755, "/system/xbin/openvpn"); <<< Do NOT include this line if you didn't activate OpenVPN support in your preset
ui_print("Done installing Pimp my Rom - by Androguide.fr@xda");
2) Adding a Pimp my Rom entry to your Rom's Settings.apk - Coming Soon
very good work! will i can to install this on my LG Optimus Hub whit CM 7 rom (android 2.3.7)?
Thanks for your kind words,
This has been designed mainly for ics & jb roms, but you can still try on gb, just make sure you do NOT select gapps/inverted gapps and themes.
The tweaks, extra apps and extra features should work properly.
In fact, the easiest way for you would be to Select "Stock-based Rom" option in the first screen, so the script won't display gapps and themes options. I will rename "Stock-based rom" option to "Stock and Gingerbread roms" in next update, thanks for the idea.
Please make sure you post your results, so I can add your device to the confirmed devices list if it worked properly.
very good work! will i can to install this on my LG Optimus Hub whit CM 7 rom (android 2.3.7)?
Thanks for your kind words,
This has been designed mainly for ics & jb roms, but you can still try on gb, just make sure you do NOT select gapps/inverted gapps and themes.
The tweaks, extra apps and extra features should work properly.
In fact, the easiest way for you would be to Select "Stock-based Rom" option in the first screen, so the script won't display gapps and themes options. I will rename "Stock-based rom" option to "Stock and Gingerbread roms" in next update, thanks for the idea.
Please make sure you post your results, so I can add your device to the confirmed devices list if it worked properly.
i am going to test it on my p500 lg optimus one and i am bit shock with the size but i will install it anyways
Actually it is big because it contains everything the script needs for all different types of roms, but it won't actually install 170mb of stuff on your device...unless you choose to^^
You choose what to install, the main heavy stuff are the gapps and inverted gapps (which will only work with jb). I'll make a light version (gapps-free) soon, might be a good idea.
Thanks for trying, let us know how it goes on your device and rom.
XDA Elite Recognized Developer AdamOutler is known … more
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?