KPPD - Configure post-processing settings of your display! [2015/08/09] - G4 Original Android Development

Hello all! If you're familiar with KCAL and suffer from symptoms such as a locked bootloader or non-loadable kernel modules then you may be interested in KCAL Post-Processing Daemon, or KPPD - the all-in-one display tuning tool that you can use to customize your color calibration on the fly!
This does NOT require an unlocked bootloader, custom kernel, or even a kernel that supports module loading, just run the daemon and you're good to go!
To install on a device with a locked bootloader, you'll need to download the kppd release below, and unpack it to prep for some adb fun... (If you have TWRP, you can also flash this in recovery)
Code:
adb push /path/to/kppd /data/local/tmp/
adb push /path/to/postproc.conf /data/local/tmp/
adb shell
su
mount -o rw,remount /system
cp /data/local/tmp/kppd /system/bin/
cp /data/local/tmp/postproc.conf /system/etc/
chmod 0755 /system/bin/kppd
chmod 0644 /system/etc/postproc.conf
reboot
Now at this point, you can use any scripting app to start the daemon on boot, I use ROM Toolbox... http://i.imgur.com/0juzfug.png
And you're done! To edit your display settings, just edit the postproc.conf file... http://i.imgur.com/pjOPbIr.png
Download KPPD

Thanks, works great. Now we need some custom configs

any chance you can update your KCAL Color Control app to support KPPD? Easy way to set the values

Thanks Savoca! I have followed all of your work fairly closely and am very glad we have you around the forums!

This is amazing. Would it work for other LG tablets such as the LG X8.3 with the snapdragon 610?
My G4 is pretty decent but my tablet is super red. Once you get it setup, you constantly have to have Rom Toolbox installed to make this work or do you only need the app for the initial setup?

I think I can answer the second part of this. The rom toolbox thing is just one of many ways to run this script on boot. But you will need SOMEthing to start it no matter what. This could be init script (I think that's what its called, which some roms have built in) Or any custom rom could include it by default.
So no, Rom toolbox isn't really necessary, its just the way he recommended to get it running on boot if you don't know another way.

I am more curious to seen if it will work on my LG tablet. I'll just have to test it out. I guess worst case scenerio is you dont have it auto start on boot. If you mess it up you just reboot.

player911 said:
I am more curious to seen if it will work on my LG tablet. I'll just have to test it out. I guess worst case scenerio is you dont have it auto start on boot. If you mess it up you just reboot.
Click to expand...
Click to collapse
Yes it should work, however it depends on each device's version of the MDSS (Qualcomm display driver). If it doesn't work, let me know so I can add support for it.

I'm wondering if this would work on my G Flex 2 ? Is there any chance that it can break anything if it doesn't work?
---------- Post added at 03:37 PM ---------- Previous post was at 03:05 PM ----------
I've just installed it on my G Flex 2 and it works great. Thanks a lot!

how control this mod with KCAL apk???

armsar1978 said:
how control this mod with KCAL apk???
Click to expand...
Click to collapse
You can't (yet?). Only via the config.

New version uploaded significantly reduces CPU load and removes any delay between modifying the postproc.conf and applying the display settings.

I've read a little and I remember making rgb adjustments regularly with my old gnex years ago...
Wondering if there are suggested settings/values one can recommend for use with the G4 please.

I second this g4 question, any recommended values?

dontbeweakvato said:
I second this g4 question, any recommended values?
Click to expand...
Click to collapse
I'm using these right now: http://imgur.com/UKkOt7x
If you're editing the file at runtime, I recommend you use either FX File explorer or ES File Explorer to edit the config, root explorer and ROM toolbox editors delete the original file and rewrite a new one for some reason (maybe they can fix this in their apps) and kppd looses the original from the kernel.

Does this have an option for sharpness?

"su" doesnt work -> not found

Z900 said:
"su" doesnt work -> not found
Click to expand...
Click to collapse
You need to root your device.

savoca said:
I'm using these right now: http://imgur.com/UKkOt7x
If you're editing the file at runtime, I recommend you use either FX File explorer or ES File Explorer to edit the config, root explorer and ROM toolbox editors delete the original file and rewrite a new one for some reason (maybe they can fix this in their apps) and kppd looses the original from the kernel.
Click to expand...
Click to collapse
"Error occurred while trying to save file. File will not be saved." - using es file explorer. I seem to not have issues with rom toolbox. What's the deal with it not saving after editing?

dontbeweakvato said:
"Error occurred while trying to save file. File will not be saved." - using es file explorer. I seem to not have issues with rom toolbox. What's the deal with it not saving after editing?
Click to expand...
Click to collapse
Sounds like an issue with the app. You could always move the config file to somewhere on /data where you would have write access. Just point kppd to the config location in the init script.

Related

Request: any way to get init.d on Stock rom without using CF Root

Request: any way to get init.d on Stock rom without using CF Root..Its just that ive tried the CF Root & always get SOD...
Ive rooted my phone using upd_1...but i need init.d to run different tweak scripts
will super1click root give me init.d?
Hope ive posted in the right section
frz said:
Request: any way to get init.d on Stock rom without using CF Root..Its just that ive tried the CF Root & always get SOD...
Ive rooted my phone using upd_1...but i need init.d to run different tweak scripts
will super1click root give me init.d?
Hope ive posted in the right section
Click to expand...
Click to collapse
found it
http://forum.xda-developers.com/showthread.php?t=1017291
frz said:
Request: any way to get init.d on Stock rom without using CF Root..Its just that ive tried the CF Root & always get SOD...
Ive rooted my phone using upd_1...but i need init.d to run different tweak scripts
will super1click root give me init.d?
Hope ive posted in the right section
Click to expand...
Click to collapse
thanks for it
frz said:
found it
http://forum.xda-developers.com/showthread.php?t=1017291
Click to expand...
Click to collapse
This won't work for Galaxy Ace, because the scripts in that thread refer to some Motorola scripts that are not present in Ace (/system/bin/mot_boot_mode).
Does someone know of a script that gets executed at boot in a Galaxy Ace stock rom? If so, maybe it could be used in the same way as mot_boot_mode for Motorola Droid, and get an executable /etc/init.d in our stock Galaxy Aces...
Just have a look at the "!Autostarts - Enable init.d on Stock ROMS.sh" script. It is very straightforward.
Juanma.
I would really be interested in this. Anyone? Care to shed some light on this little issue?
Basically you have to add this into the init.rc file (after creating manually the init.d folder of course):
service sysinit /system/bin/logwrapper /system/xbin/busybox run-parts /system/etc/init.d
disabled
oneshot
Click to expand...
Click to collapse
=> an example of usage; or just google "busybox run-parts"
It is the same method which CF-Root also uses. So you still have the option to study the CF-Root way and will learn some more tricks on the way. ...
^^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Android kitchen has that feature
Herpderp Adreno + Tegra.
I found this post here had a possible workaround: http://forum.xda-developers.com/showpost.php?p=20134361&postcount=3
Bakuron said:
I found this post here had a possible workaround: http://forum.xda-developers.com/showpost.php?p=20134361&postcount=3
Click to expand...
Click to collapse
andy572 said:
3. answer is some wrong:
you doesnt need to cook a custom rom, you only need the adb (android debug bridge) to "speak" with your phone:
...
Click to expand...
Click to collapse
That's what she said. ...
^^
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
tossan said:
Basically you have to add this into the init.rc file (after creating manually the init.d folder of course)
Click to expand...
Click to collapse
So I take it it is not as simple as browsing with Root Explorer, finding the file and adding it. If not, could you tell me how. Can I do it using the terminal emulator app rather than connecting phone to PC and using cygwin? Thanks
tossan said:
That's what she said. ...
Click to expand...
Click to collapse
Sorry, I didn't read your post before I posted. You explained it even simpler so thanks
Gizmotech said:
So I take it it is not as simple as browsing with Root Explorer, finding the file and adding it. If not, could you tell me how. Can I do it using the terminal emulator app rather than connecting phone to PC and using cygwin? Thanks
Click to expand...
Click to collapse
I'm really not sure it's possible. But regarding 'in-phone script writing' Pyronia's just started a thread here on it that you could possibly raise the issue in: http://forum.xda-developers.com/showthread.php?t=1476400
Thanks. I tried to extract using the adb pull command to desktop but kept getting permission denied. So I managed to change permission on init.rc and send it via bluetooth to my desktop. I edited the file and put it back in via bluetooth to sd and then used root explorer to move back the file to root and changed back to the original permission of the file. Before I did this, I manually created the init.d folder. What permissions do I set the init.d folder? Do I set it to rwxr-xr-x like the other folders inside /etc? Also how do I know or test that the script is enabled and that it is functioning properly as it should?
Gizmotech said:
Thanks. I tried to extract using the adb pull command to desktop but kept getting permission denied. So I managed to change permission on init.rc and send it via bluetooth to my desktop. I edited the file and put it back in via bluetooth to sd and then used root explorer to move back the file to root and changed back to the original permission of the file. Before I did this, I manually created the init.d folder. What permissions do I set the init.d folder? Do I set it to rwxr-xr-x like the other folders inside /etc? Also how do I know or test that the script is enabled and that it is functioning properly as it should?
Click to expand...
Click to collapse
Rest of that thread has a suggestion on testing if its working forum.xda-developers.com/showthread.php?p=20134361#post20134361
I think permission of init.d is rwxr-xr-x. Check this thread here forum.xda-developers.com/showthread.php?t=1390093
Gizmotech said:
Thanks. I tried to extract using the adb pull command to desktop but kept getting permission denied. So I managed to change permission on init.rc and send it via bluetooth to my desktop. I edited the file and put it back in via bluetooth to sd and then used root explorer to move back the file to root and changed back to the original permission of the file. Before I did this, I manually created the init.d folder. What permissions do I set the init.d folder? Do I set it to rwxr-xr-x like the other folders inside /etc? Also how do I know or test that the script is enabled and that it is functioning properly as it should?
Click to expand...
Click to collapse
Which script? Post the link here...or u open the script then type the command on terminal to check if the script working..
regards,
•ƒγяύs ργяσ™•
pyronia said:
Which script? Post the link here...or u open the script then type the command on terminal to check if the script working..
Click to expand...
Click to collapse
Basically, I mean how would I know if init.d is activated and any scripts I put in is actually working. After all I created init.d folder manually. What command do I type in adb shell to see if scripts are working?
Can someone help me troubleshoot this please. I have put scripts in the init.d folder but see no difference. I followed the method on this thread to enable init.d. I don't notice any difference after putting any scripts such as lagfree, turboboost or even the keylight one.
Gizmotech said:
Basically, I mean how would I know if init.d is activated and any scripts I put in is actually working. After all I created init.d folder manually. What command do I type in adb shell to see if scripts are working?
Click to expand...
Click to collapse
Sent me the script then i show u how to check
regards,
•ƒγяύs ργяσ™•
Gizmotech said:
Can someone help me troubleshoot this please. I have put scripts in the init.d folder but see no difference. I followed the method on this thread to enable init.d. I don't notice any difference after putting any scripts such as lagfree, turboboost or even the keylight one.
Click to expand...
Click to collapse
Which thread actually?
regards,
•ƒγяύs ργяσ™•
Init.d support ? Not without CF-ROOT
Herpderp Adreno + Tegra.
Well I thought this thread was about init.d on stock rom without CF-Root.

[kernel module/beta] OPPtimizer Projekt - OMAP4 Overclocking

Just wanted to let you guys know I got some kernel modules up for testing. These are unverified on nook tablet. So far reports are that "0.1 modules" with top frequency manipulation only work pretty flawlessly on devices tested. "0.2 modules" with top frequency and voltage manipulation, seem to work on Motorola Droid RAZR & Droid 3. Motorola Bionic & Atrix 2 don't like voltage manipulation at this point. I need beta testers.
opptimizer.googlecode.com
More info can be found and the original thread on RootzWiki:
http://rootzwiki.com/topic/14511-op...g-kernel-modulesofficial-thread/page__st__200
I downloaded and installed this. I ran linpack a few times and had a moderate jump in scores. I have not been able to play with it much more, however. I can do some more testing too.
Thank u for this post. I had been asking this question in a few other threads and people were naysaying that it couldn't be done. Im glad to see that I was on the right track.
Any idea on how to make if persistent? All is lost on reboot, however works well with setcpu. No noticeable battery drain or heat in beta 0.2 with 1200000000 1388000. Linpsck 57, Antutu 5390. Excellent discovery! Anything. Above 1200mhz is not stable and may crash. I had one crash the tablet froze; held down the power button 10 seconds to power off and then reboot.
Works very well. A permanent solution would be great.
Sent from my Nook Tablet using XDA Premium App
You need init.d to run at startup. There is a thread on how to get init.d scripts working here:
http://forum.xda-developers.com/showthread.php?t=1390093
You don't need all the build.prop stuff to overclock, just the init.d support at the top.
I have a post on where the file should be put, and what it should look like here:
http://rootzwiki.com/topic/14511-op...g-kernel-modulesofficial-thread/page__st__190
The init script was created by frostincredible for running at boot on Motorola Droid Bionic. His thread is here:
http://rootzwiki.com/topic/14698-in...or-tekahunas-omap4-overclock-modules-1-10-12/
Using the last link in your post, here is what I found to have the Nook Tablet boot persistently into the desired overclocking speed.
1. Extract the init.d folder from the init scripts created by frostincredible and using ES File Explorer, copy to /system/etc directory
2. Download tekahuna version 1.0 files, (symsearch.ko and opptimizer.ko) and extract and copy them to /system/lib/modules directory. Create the modules directory if it does not exist.
3. Reboot and use Rom Tool or Setcpu for your desired CPU speed. I'm using 1.2GHZ on the Nook Tablet. I did try to flash the files using CWM, however the system partition identified in the zip file is not correct for the Nook Tablet.
4. I thank everyone involved for their work on this as this mod really perks up the Nook Tablet. See my previous post above on the new benchmarks at 1.2GHZ.
UPDATE I broke the persistence and caught He** trying to figure out what I did wrong. A step not mentioned above requires you to edit clrbootcount.sh located in /system/bin. You must add the init.d code below to end of the code in the file. From that point forward the tablet will boot at the script speed you have placed in /system/etc/init.d. I do not recommend anything above 1200. Set permissions on clrbootcount.sh to rwxrwxrwx. You can shrink the permissions once you get it running.
bb=/system/xbin/busybox
if [ -f $bb ]; then
/system/bin/logwrapper $bb run-parts /system/etc/init.d
else
for i in $(ls /system/etc/init.d/*); do
sh $1
done
fi
rapcon said:
Using the last link in your post, here is what I found to have the Nook Tablet boot persistently into the desired overclocking speed.
1. Extract the init.d folder from the init scripts created by frostincredible and using ES File Explorer, copy to /system/etc directory
2. Download tekahuna version 1.0 files, (symsearch.ko and opptimizer.ko) and extract and copy them to /system/lib/modules directory. Create the modules directory if it does not exist.
3. Reboot and use Rom Tool or Setcpu for your desired CPU speed. I'm using 1.2GHZ on the Nook Tablet. I did try to flash the files using CWM, however the system partition identified in the zip file is not correct for the Nook Tablet.
4. I thank everyone involved for their work on this as this mod really perks up the Nook Tablet. See my previous post above on the new benchmarks at 1.2GHZ.
Click to expand...
Click to collapse
I followed instructions using the1200 package, but setcpu and rom toolbox still show 1008 max frequency. What else can I be missing?
I had this problem and I can only suggest the following:
*Ensure you are using version 1.0 of the kernel modules
*check all permissions on the init.d folder in /system/etc and /system/lib/modules
If all goes well after the reboot, the tablet should be reporting 1200 in the Rom Toolbox CPU panel.
Version 2 of the kernel modules allow for voltage manipulation and the scripts in the init.d directory are not written to take advantage of that and therefore will not run. The scripts can be modified however.
rapcon said:
I had this problem and I can only suggest the following:
*Ensure you are using version 1.0 of the kernel modules
*check all permissions on the init.d folder in /system/etc and /system/lib/modules
If all goes well after the reboot, the tablet should be reporting 1200 in the Rom Toolbox CPU panel.
Version 2 of the kernel modules allow for voltage manipulation and the scripts in the init.d directory are not written to take advantage of that and therefore will not run. The scripts can be modified however.
Click to expand...
Click to collapse
It runs great from the command line, but the init.d fix isn't working for me. I've set all permissions to 777. I'll have to fiddle around with it some more. I'm running at 1.2GHZ until I reboot.
I actually didn't get mine to stick at boot until i set the permissions on the file in the init.d folder (00cpufreq_modules) to rwxr--r--. I believe thats what did the trick for me. (I had it at rw-r--r-- before).
Can we OC the GPU as well? Thanks
Awesome, it works and it does seem snappier. I also couldn't get it to stick at boot, but I made the /system/lib/modules/*.ko files with full permissions (777 I think?) The rest of it, the init.d file, the 0.1 files, etc are all as posted. What did people set the .ko files permissions as?
UPDATE:
Tried it with rwxr--r-- and rw-r--r-- on both the ko files as well. Still didnt stick at boot. Also then tried to make a script in Rom Toolbox to run, and it said it ran successfully, but didn't show any change when I checked it (still at 1008). Using Rom Toolbox because SetCPU wouldn't install btw. And Script Manager just hangs and force closes after a while.
Any ideas?
I'm all for development and "lets see what this puppy can do" but I have to ask - Isn't this puppy fast enough? How fast do you want it? Any faster and it would be answering the questions before your asked.
It's a dual core. It's just a question of how much you want out of it, same as the Nook Color before it. I'm 100% behind overclocking because of the principle - if it's possible, why not?
neoage said:
It's a dual core. It's just a question of how much you want out of it, same as the Nook Color before it. I'm 100% behind overclocking because of the principle - if it's possible, why not?
Click to expand...
Click to collapse
My only thought is, how much actual difference would it make? Will things run smoother? Will graphics be sharper, flow more easily?
Sent from my rooted Nook Tablet using Tapatalk 8)
What about if you find out you can have 2x1.2Ghz without any battery penalty or thermal problems?
rapcon said:
UPDATE I broke the persistence and caught He** trying to figure out what I did wrong. A step not mentioned above requires you to edit clrbootcount.sh located in /system/bin. You must add the init.d code below to end of the code in the file. From that point forward the tablet will boot at the script speed you have placed in /system/etc/init.d. I do not recommend anything above 1200. Set permissions on clrbootcount.sh to rwxrwxrwx. You can shrink the permissions once you get it running.
bb=/system/xbin/busybox
if [ -f $bb ]; then
/system/bin/logwrapper $bb run-parts /system/etc/init.d
else
for i in $(ls /system/etc/init.d/*); do
sh $1
done
fi
Click to expand...
Click to collapse
...I haven't tried this, but looking at this script I'm wonderingif the "sh $1" should really be "sh $i" ...this should make it run all init.d scripts if busybox is not installed at the expected location.
(As it was written it will instead try to execute $1 which is probably the first argument passed to the clrbootcount.sh script unless otherwise defined in the script... without my suggested change the for loop doesn't do anything with the init.d scripts)
I hope the project's going well! Took a look at the rootzwiki site and saw how it was going for the other devices...Just wondering if it's still happening for the Nook Tablet, since CM7 is right around the corner...
neoage said:
I hope the project's going well! Took a look at the rootzwiki site and saw how it was going for the other devices...Just wondering if it's still happening for the Nook Tablet, since CM7 is right around the corner...
Click to expand...
Click to collapse
Cm7 is OUT mh friend, and its AWESOME
Sent from my CM7 Nook Tablet

[Titanium Backup] Failed to protect backup

Tried every method...but I'm unable you protect my backups in titanium backup
To protect*
How I solved this problem on my Moto G LTE
Shantanu Baviskar said:
Tried every method...but I'm unable you protect my backups in titanium backup
Click to expand...
Click to collapse
I carefully read this thread: [Help] Titanium Backup PRO - protected archive not working.
So I modified file /system/etc/permissions/platform.xml according http://jrummy-apps.com/fix-sdcard-on-kitkat/ and make new file /data/local/userinit.sh with this content:
Code:
#!/system/bin/sh
busybox mount -o remount,rw /
chmod 770 /mnt/media_rw
See the attached archive root.zip which I made for you it is pretty straightforward.
You should have move your TiB backup folder on this path: /mnt/media_rw/sdcard1/TitaniumBackup
You will be able to protect backup archives in Titanium Backup Pro then.
PS: If /data/local/userinit.sh doesn't start automatically in your ROM you can use for example Scripter feature in ROM Toolbox Pro and import userinit.sh script and set it as Start at boot.
_jis_ said:
I carefully read this thread: [Help] Titanium Backup PRO - protected archive not working.
So I modified file /system/etc/permissions/platform.xml according http://jrummy-apps.com/fix-sdcard-on-kitkat/ and make new file /data/local/userinit.sh with this content:
Code:
#!/system/bin/sh
busybox mount -o remount,rw /
chmod 770 /mnt/media_rw
See the attached archive root.zip which I made for you it is pretty straightforward.
You should have move your TiB backup folder on this path: /mnt/media_rw/sdcard1/TitaniumBackup
You will be able to protect backup archives in Titanium Backup Pro then.
PS: If /data/local/userinit.sh doesn't start automatically in your ROM you can use for example Scripter feature in ROM Toolbox Pro and import userinit.sh script and set it as Start at boot.
Click to expand...
Click to collapse
Although in the case of Note 4 it didn't work right off the bat, I made it work a little different thanks to your idea. For some weird reason the script just doesn't get executed at boot (neither the *.sh file, nor as a script, through ROM Toolbox) but I was able to use the 2 lines in the script and made a task (in Tasker) which executes the shell command at boot. Everything else is straight forward and TiBu can now protect backups.
As a mention for those interested in replicating all these: the suggested SD card fix made by rummy applies EXACTLY the same changes as the SDFix so you can use either of them. Again, thanks for your reply and the great idea! :good:
nacos said:
I was able to use the 2 lines in the script and made a task (in Tasker) which executes the shell command at boot. Everything else is straight forward and TiBu can now protect backups.
Click to expand...
Click to collapse
Great, this is another example how to execute script at boot
I solved this problem on all my phones (Moto G LTE and Samsung Galaxy Note 2 and Samsung Galaxy W) but not on my tablet Nexus 7 2013 nor on internal emulated SD card nor on attached OTG USB flash disk. This is example where pure Stock Google Android ROM sucks
_jis_ said:
Great, this is another example how to execute script at boot
I solved this problem on all my phones (Moto G LTE and Samsung Galaxy Note 2 and Samsung Galaxy W) but not on my tablet Nexus 7 2013 nor on internal emulated SD card nor on attached OTG USB flash disk. This is example where pure Stock Google Android ROM sucks
Click to expand...
Click to collapse
This update addresses the issue mentioned before about init'd scripts not executing at boot. OK, here is the issue (specific to Qualcomm's Snapdragon) and the working solution - thanks to alexndr. I've tested it and it's working, however it doesn't work directly with <X.sh> text files, instead the script must be packaged in a flashable zip and flashed from recovery. Once I did that, it worked like a charm! The 98mediarw file in the screenshot uses the same script as previously mentioned; The 98 before the file name assigns a higher execution priority - I used 98 for testing purposes, it clearly doesn't need that. :good:
nacos said:
OK, here is the issue (specific to Qualcomm's Snapdragon) and the working solution - thanks to alexndr.
Click to expand...
Click to collapse
Oh, at first I thought that you post something what helps me with my tablet:
_jis_ said:
I solved this problem on all my phones but not on my tablet Nexus 7 2013 nor on internal emulated SD card nor on attached OTG USB flash disk.
Click to expand...
Click to collapse
But this is just another example how to execute script at boot
none of these methods are working. Is it because I'm using a Custom ROM?
What are you trying to achieve? What exactly is your environment?
nacos said:
What are you trying to achieve? What exactly is your environment?
Click to expand...
Click to collapse
I have Motorola Moto E (CM11 Stable build by percy_g2) and I'm trying to protect my backups in TiB but I'm getting error "Sorry, the operation failed." It used to be the same in stock ROM. And one more question, is this bug fixed in Lollipop versions of Android?
To answer you questions, no, this is not a bug, it's by design, also it's not happening because you're using a custom ROM, but rather because all OEM's (Google being probably the worst of all) are pushing towards more and more restrictive software & hardware environments, also supported by laws meant to discourage the users from modifying original configurations. Why? Dirty politics, I won't get into that but if you keep your eyes wide open you'll see and understand A LOT! Oh, by the way...to expect for Lollipop to be less restrictive and more fun (to customize) would be naive! Nuff said, let's have some fun!
There are multiple parts to this fix/diagnostic. Don't skip any point and follow these instructions rigorously, otherwise it won't work!!! Let's take them one by one:
Is you platform.xml file (under system/etc) modified to allow read/write access to media_rw (mnt/media_rw)? If not, apply the patch using SDFix from Google Store.
TiBu backup folder must be set to mnt/media_rw/externalSD/Titaniumxxx (if you don't have externalSD than use your internal storage instead, pointing to TiBu folder) - but, for right now, you won't be able to set this path because currently TiBu doesn't have access to media_rw, due to media_rw not being given the right permissions by the system. That's exactly what mediarw script does.
In order for init.d to execute the mediarw script at every boot, you need to insure that you do have init.d support AND it's working. This is how you verify:
(3a) Do you see the folder system/etc/init.d? If yes, go to (3b), if no, you don't have init.d support! That's another fix entirely.
(3b) If you see the 00test file in the init.d folder navigate to /data and open up the file called Test.log - that tells you that init.d is installed and working. If you have a Qualcomm's Snapdragon and you do have the init.d folder but it doesn't execute any script at boot, see the fix in post #6.
(3c) If you don't care about setting up init.d support, you can still run the script at boot, as a shell command using Tasker - see post #4
Once you're sure that all the above are set correctly, flash the attached file from recovery. Reboot, navigate to system/etc/init.d and confirm the presence of the mediarw script in the init.d folder
Reboot again, then navigate to mnt/media_rw and check that permissions for media_rw have been set to 770 - :fingers-crossed: mission accomplished, my friend! :fingers-crossed: If, on the other hand, the permissions for media_rw are still set at 700, then something went wrong. Go back and check every step again, otherwise...
Open up TiBu, set the backup folder path as instructed in #2 and verify that your backups can be protected. Voila!!
nacos said:
To answer you questions, no, this is not a bug, it's by design, also it's not happening because you're using a custom ROM, but rather because all OEM's (Google being probably the worst of all) are pushing towards more and more restrictive software & hardware environments, also supported by laws meant to discourage the users from modifying original configurations. Why? Dirty politics, I won't get into that but if you keep your eyes wide open you'll see and understand A LOT! Oh, by the way...to expect for Lollipop to be less restrictive and more fun (to customize) would be naive! Nuff said, let's have some fun!
There are multiple parts to this fix/diagnostic. Don't skip any point and follow these instructions rigorously, otherwise it won't work!!! Let's take them one by one:
Is you platform.xml file (under system/etc) modified to allow read/write access to media_rw (mnt/media_rw)? If not, apply the patch using SDFix from Google Store.
TiBu backup folder must be set to mnt/media_rw/externalSD/Titaniumxxx (if you don't have externalSD than use your internal storage instead, pointing to TiBu folder) - but, for right now, you won't be able to set this path because currently TiBu doesn't have access to media_rw, due to media_rw not being given the right permissions by the system. That's exactly what mediarw script does.
In order for init.d to execute the mediarw script at every boot, you need to insure that you do have init.d support AND it's working. This is how you verify:
(3a) Do you see the folder system/etc/init.d? If yes, go to (3b), if no, you don't have init.d support! That's another fix entirely.
(3b) If you see the 00test file in the init.d folder navigate to /data and open up the file called Test.log - that tells you that init.d is installed and working. If you have a Qualcomm's Snapdragon and you do have the init.d folder but it doesn't execute any script at boot, see the fix in post #6.
(3c) If you don't care about setting up init.d support, you can still run the script at boot, as a shell command using Tasker - see post #4
Once you're sure that all the above are set correctly, flash the attached file from recovery. Reboot, navigate to system/etc/init.d and confirm the presence of the mediarw script in the init.d folder
Reboot again, then navigate to mnt/media_rw and check that permissions for media_rw have been set to 770 - :fingers-crossed: mission accomplished, my friend! :fingers-crossed: If, on the other hand, the permissions for media_rw are still set at 700, then something went wrong. Go back and check every step again, otherwise...
Open up TiBu, set the backup folder path as instructed in #2 and verify that your backups can be protected. Voila!!
Click to expand...
Click to collapse
(Please ignore that screenshot. I didn't properly read your msg in blue text)
I couldn't understand post #4 so can you please describe it more deeply? :crying: btw I don't have 00test but a file named 00banner. And can you tell me how to use tasker properly?
Sorry for butting in on this thread. I found it by searching because I too can no longer protect a backup in my tibu Pro. I used to be able to but not anymore and I'm not sure why.
I'm on a rooted nexus 5 running stock 4.4.4.
Reading your instructions I went looking for platform.xml and found it. When I checked its properties I got, see screenshot. Don't know what to modify to mount it as you say. I'm in ES Explorer.
Can you help?
Thanks.
And here is a screenshot in root Explorer
Update your tb to 7.0.1 and now you can protect backups ? this thread should get closed now
Closed? Why? Just because a shortcut is available doesn't mean there is nothing to learn from wondering around, my friend!
After all, this is exactly what XDA is: a huge data base available to those who are willing to learn and dare to wonder around, wouldn't you agree?

[resolved] need Init.d script to execute a file on system/bin

Resolution on post #10, in post #11 a second resolution and on post #12 the confirmation.
I need a init.d script to run or execute a service that is on system/bin
Is this possible?
Which commands to use?
I researched a lot, and I do not find anything about it.
The file name is jellyservice.
Jellyservice is a normal service that need to be running before run a app, without that, the app does not run.
I know that:
1. The jellyservice is presented on stock rom and the stock rom use init.rc to call the jellyservice at boot, and i can change the init.rc by change the boot.img (unpack, change, repack), but i wanna to be able to run it on any device wit any kernel, and don't wanna to change it kernel for it rom.
2. I can use SManager to run the file on boot. but i don't wanna to need a app just init.d, init.d is already implemented and working on almost every custom rom, so I put the init.d file on a zip that flash the apk, libs etc, and no more app or config is need.
Thanks.
baybutcher27 said:
I need a init.d script to run a service that is on system/bin
Is this possible?
Which commands to use?
I researched a lot, and I do not find anything about it.
The file name is jellyservice.
Jellyservice is a normal service that need to be running before run a app, without that, the app does not run.
I know that:
1. The jellyservice is presented on stock rom and the stock rom use init.rc to call the jellyservice at boot, and i can change the init.rc by change the boot.img (unpack, change, repack), but i wanna to be able to run it on any device wit any kernel, and don't wanna to change it kernel for it rom.
2. I can use SManager to run the file on boot. but i don't wanna to need a app just init.d, init.d i already have implemented on rom, so I put the init.d file on a zip that flash the apk, libs etc, and no more app or config is need.
Thanks.
Click to expand...
Click to collapse
Is this what you are looking for, or I am missing something?
http://forum.xda-developers.com/showthread.php?t=1933849
And this, which is more up to date:
http://www.xda-developers.com/init-d-support-for-any-rooted-phone/
Ciuffy said:
Is this what you are looking for, or I am missing something?
http://forum.xda-developers.com/showthread.php?t=1933849
And this, which is more up to date:
http://www.xda-developers.com/init-d-support-for-any-rooted-phone/
Click to expand...
Click to collapse
No you did not read what I wrote.
As I said, i wanna a script of init.d that runs or execute a file, i already have init.d working...
baybutcher27 said:
No you did not read what I wrote.
As I said, i wanna a script of init.d that runs or execute a file, i already have init.d working...
Click to expand...
Click to collapse
Sorry, I was assuming you could find help there. By the way, you should be able to do this just by using a script like:
#!/system/bin/sh
-Give permission
/path/jelliservice
Then place it in init.d or write a specific script for init.d to run the above one.
http://android.stackexchange.com/questions/6558/how-can-i-run-a-script-on-boot
Sorry if there's a bigger obstacle I'm not aware of.
Ciuffy said:
Sorry, I was assuming you could find help there. By the way, you should be able to do this just by using a script like:
#!/system/bin/sh
-Give permission
/path/jelliservice
Then place it in init.d or write a specific script for init.d to run the above one.
http://android.stackexchange.com/questions/6558/how-can-i-run-a-script-on-boot
Sorry if there's a bigger obstacle I'm not aware of.
Click to expand...
Click to collapse
No is all good.
but??? that willl run the service, or just give a permission.
I don't really know much about init.d script and the web does not help in that thing i wanna.
i'm implemented it now to see what that script does. :good:
baybutcher27 said:
No is all good.
but??? that willl run the service, or just give a permission.
I don't really know much about init.d script and the web does not help in that thing i wanna.
i'm implemented it now to see what that script does. :good:
Click to expand...
Click to collapse
Oh, so you are just asking for help with the actual script, fine. See if you can figure it out yourself from that post, I'm trying to build an easy example right now. I seem to not have this jelliservice you are talking about, maybe you can give me a few more insights about this.
Ciuffy said:
Oh, so you are just asking for help with the actual script, fine. See if you can figure it out yourself from that post, I'm trying to build an easy example right now. I seem to not have this jelliservice you are talking about, maybe you can give me a few more insights about this.
Click to expand...
Click to collapse
ok.
i tested that you post doesn't do what i need.
i have this on init.d to now if it works.
#!/system/bin/sh
touch /data/local/tmp/init.d_log_test.txt
echo "done" >> /data/local/tmp/init.d_log_test.txt
so i change the "done" of the last line to wherever and it time i reboot it change to wherever i wrote.
so init.d is working fine.
The jellyservice is a service that only exist on motorola stock rom on devices that have dedicated hardware of DTV.
it is started by i .rc file:
init.mmi.dtv.rc
and the content of that .rc is:
Code:
on boot
# DTV feature
service dtv-jelly /system/bin/jellyservice
class main
user system
group system audio camera graphics inet net_bt net_bt_admin net_raw sdcard_rw
iknow that is possible to implemented that .rc on any device by add it to the kernel or boot.img but it will be need to do on any rom and that is allot of work and will be impossible.
so i have created a tread to give support for that DTV to any custom rom, and i wanna to make a more completed .zip to the app.
see the thread here
baybutcher27 said:
ok.
i tested that you post doesn't do what i need.
i have this on init.d to now if it works.
#!/system/bin/sh
touch /data/local/tmp/init.d_log_test.txt
echo "done" >> /data/local/tmp/init.d_log_test.txt
so i change the "done" of the last line to wherever and it time i reboot it change to wherever i wrote.
so init.d is working fine.
The jellyservice is a service that only exist on motorola stock rom on devices that have dedicated hardware of DTV.
it is started by i .rc file:
init.mmi.dtv.rc
and the content of that .rc is:
Code:
on boot
# DTV feature
service dtv-jelly /system/bin/jellyservice
class main
user system
group system audio camera graphics inet net_bt net_bt_admin net_raw sdcard_rw
iknow that is possible to implemented that .rc on any device by add it to the kernel or boot.img but it will be need to do on any rom and that is allot of work and will be impossible.
so i have created a tread to give support for that DTV to any custom rom, and i wanna to make a more completed .zip to the app.
see the thread here
Click to expand...
Click to collapse
You are right, it's not easy to test this out because of default .rc hardcoded into kernel... in order to do this you would have to edit .rc to run that service that runs userinit.sh... Have you already done this? And, are you able to start the service manually?
Ciuffy said:
You are right, it's not easy to test this out because of default .rc hardcoded into kernel... in order to do this you would have to edit .rc to run that service that runs userinit.sh... Have you already done this? And, are you able to start the service manually?
Click to expand...
Click to collapse
i didn't try implemented that .rc on boot.img, that is too much work, and need to be done on it kernel or rom update, but yes can be done.
The file is just like any other executable, just like a .sh or any file you can execute using a app that can execute files like, root browser or SManager.
all the process to run the file is on the thread i just post.
The thing is i already know how to run it via app, but i don't wanna to stop there i wanna to run it via init.d because is a very simple way, but very difficult to find the commands.
Exists any command on init.d that can run a file commands like, run, execute, open or start ?
any of those work? and how to use they?
have any website that have all the command available on init.d?
Hey, you can run a binary from sh by just invoking its path, for example:
Code:
#!/bin/sh
/system/bin/jellyservice
The proccess will spawn with UID 0 (root)
You can change that if you have a good root binary by doing this:
Code:
#!/bin/sh
su system -c '/system/bin/jellyservice'
If you're using supersu I think you have to enable root at boot (Look at the application settings)
baybutcher27 said:
i didn't try implemented that .rc on boot.img, that is too much work, and need to be done on it kernel or rom update, but yes can be done.
The file is just like any other executable, just like a .sh or any file you can execute using a app that can execute files like, root browser or SManager.
all the process to run the file is on the thread i just post.
The thing is i already know how to run it via app, but i don't wanna to stop there i wanna to run it via init.d because is a very simple way, but very difficult to find the commands.
Exists any command on init.d that can run a file commands like, run, execute, open or start ?
any of those work? and how to use they?
have any website that have all the command available on init.d?
Click to expand...
Click to collapse
so i resolve this :silly: :laugh: :victory:
after writing I read, and is so lame.
if the file is just like any other executable way not put it in the init.d folder?
and i put, rename to 99jellyservice
and the init.d run it and the apk that need that file to be running before you open it work.
@Ciuffy
Thanks you help me to find a way...
nagalun said:
Hey, you can run a binary from sh by just invoking its path, for example:
Code:
#!/bin/sh
/system/bin/jellyservice
The proccess will spawn with UID 0 (root)
You can change that if you have a good root binary by doing this:
Code:
#!/bin/sh
su system -c '/system/bin/jellyservice'
If you're using supersu I think you have to enable root at boot (Look at the application settings)
Click to expand...
Click to collapse
the 1° option work perfectly!, but i use like this
Code:
#!/system/bin/sh
/system/bin/jellyservice
i think doesn't make a difference.
Thanks man I will use your way, is better that my. :good:
baybutcher27 said:
the 1° option work perfectly!, but i use like this
Code:
#!/system/bin/sh
/system/bin/jellyservice
i think doesn't make a difference.
Thanks man I will use your way, is better that my. :good:
Click to expand...
Click to collapse
Yeah basically the only difference is that Android has no /bin/sh but /system/bin/sh. I though about just putting that there honestly but I couldn't get any of this working on my cyanogenmod so I was trying to figure out why >.>, but I'm probably missing something.
Anyway, glad I could help!

[09.01][Script]schedtune.boost - making Pixel XL (and eas) even more smoother

hello guys and girls,
I am quite sure everyone knows and feels that our pixels are already super smooth. However few of us are never completely satisfied and are looking for ways to make the device even more smoother.
Some of you might be aware, that the sched governor, which is bound to eas, isn´t as customizable as the old interactive governor. This is the main reason we don´t have any scripts or tweaks touching the governor.
So I did some digging and finally found a tunable that allows the cpu to be even more aggressive. This will result (at least for me) in a tremendous effect on overall smoothness. Battery life will take only a slight or a grave hit, depending on the boost you choose. @Alcolawl you are free to do benchmarks
The schedtune.boost (s) reside in the directories /dev/stune, dev/stunde/foreground and dev/stune/background
You can apply values from 0 to 100.
When setting it to 100 your device will run constantly with all cores maxed out.
I found values from 2 to 10 to have the most efficient effect.
I am currently using a boost value of 8. Battery life is still awesome. But oh my god how smooth the device runs now.
Remember: you can also set the values higher yourself
For your convenience I made scripts that you can either put in system/etc/init.d or system/su.d. I am planning to refine and maybe add more tweaks to our pixels. So stay tuned and lets all work together. The script does not look like much, but try it before you judge.
Download links will be in the second post.
Instructions:
1. Download the desired file. sched2 means a boost value of 2 will be applied. sched6 means a boost value of 6 will be applied. I think you get the concept.
2. Extract the script from the download
3. Copy the script to either system/etc/init.d or system/su.d
4. set permissions to 0755 (rwxr-xr-x) via terminal or your preferred root explorer.
5. reboot and wait a minute (there is a sleep timer)
6. profit
7. to check if the script got applied correctly do in terminal on your phone
su
cat dev/stune/schedtune.boost
Attention:
su.d only works when you have working root via supersu from chainfire.
Credits:
google for integrating eas to our pixels
@Alcolawl for letting me use his scripts on the HTC 10 and inspiring me greatly in the process. If he did not exist I probably wouldn´t have looked into finding this
Downloads:
init.d and su.d:
https://www.androidfilehost.com/?w=files&flid=140794
01.07.2017
I added an all in one package. The all-in-one package has all scripts with boost values including 2,4,6,8 and 10. So you do not have to start multiple downloads.
09.01.2017
v1:
- decreased the default boost value for top app from 50 to 25
- foreground-app has a boost of 15
- schedtune.boost for all other activities (that are not getting categorized) is set to 10
v2:
- decreased the default boost value for top app from 50 to 25
- foreground-app has a boost of 12
- schedtune.boost for all other activities (that are not getting categorized) is set to 8
Freak07 said:
Downloads:
init.d:
https://www.androidfilehost.com/?w=files&flid=140135
su.d:
https://www.androidfilehost.com/?w=files&flid=140130
Click to expand...
Click to collapse
Trying to execute it through root browser and get this: http://i.imgur.com/WbUsV6g.png
Put it in su.d directory. Not sure if it is applying on boot.
XtraArrow said:
Trying to execute it through root browser and get this: http://i.imgur.com/WbUsV6g.png
Put it in su.d directory. Not sure if it is applying on boot.
Click to expand...
Click to collapse
What kernel are you on?
Did You run it from sdcard or su.d?
did you set the right permissions?
Freak07 said:
What kernel are you on?
Did You run it from sdcard or su.d?
did you set the right permissions?
Click to expand...
Click to collapse
On elemental kernel. I tried running from both SD card and su.d directory mate. Upon trying to change permissions it says it cannot be changed.
i like this.
just great!
XtraArrow said:
On elemental kernel. I tried running from both SD card and su.d directory mate. Upon trying to change permissions it says it cannot be changed.[/QUOTE
Also unable to get this working says error some file system do not allow permission changes. ....? Using Root Browser.
Click to expand...
Click to collapse
XtraArrow said:
On elemental kernel. I tried running from both SD card and su.d directory mate. Upon trying to change permissions it says it cannot be changed.
Click to expand...
Click to collapse
kirschdog1 said:
XtraArrow said:
On elemental kernel. I tried running from both SD card and su.d directory mate. Upon trying to change permissions it says it cannot be changed.[/QUOTE
Also unable to get this working says error some file system do not allow permission changes. ....? Using Root Browser.
Click to expand...
Click to collapse
Could you please try this file?
Edit: see new link in second post!
Put it in system/etc/init.d
Permissions to rw-r--r-- (644)
Reboot
Navigate to dev/stune/schedtune.boost and see if the value gets changed to the one your script should set.
It seems like the the scripts did not like the laptop at my Patents home
Click to expand...
Click to collapse
kirschdog1 said:
XtraArrow said:
On elemental kernel. I tried running from both SD card and su.d directory mate. Upon trying to change permissions it says it cannot be changed.[/QUOTE
Also unable to get this working says error some file system do not allow permission changes. ....? Using Root Browser.
Click to expand...
Click to collapse
make sure there are two lines
for some reason there must be a space below the text. this worked for me.
Click to expand...
Click to collapse
kirschdog1 said:
Also unable to get this working says error some file system do not allow permission changes. ....? Using Root Browser.
Click to expand...
Click to collapse
Try it with one of these and copy them to system/etc/init.d please. Permission 644 for the script and reboot.
https://drive.google.com/folderview?id=0BxbxiBXaZVu-d3NOQlFqd3QzMVU
Hello all
I updated the second post. The scripts should work now please report back! Also regarding smoothness.
sorry for any inconvenience.
Have a nice day.
Freak07 said:
kirschdog1 said:
Could you please try this file?
Edit: see new link in second post!
Put it in system/etc/init.d
Permissions to rw-r--r-- (644)
Reboot
Navigate to dev/stune/schedtune.boost and see if the value gets changed to the one your script should set.
It seems like the the scripts did not like the laptop at my Patents home
Click to expand...
Click to collapse
In system/etc I do not have an init.d folder, just init.
I'm using Elemental X kernel.
Click to expand...
Click to collapse
Freak07 said:
Hello all
I updated the second post. The scripts should work now please report back! Also regarding smoothness.
sorry for any inconvenience.
Have a nice day.
Click to expand...
Click to collapse
Same issue unable to change permissions
airmaxx23 said:
Freak07 said:
In system/etc I do not have an init.d folder, just init.
I'm using Elemental X kernel.
Click to expand...
Click to collapse
I have the same structure i found su.d in root but not the other.
Also how would i go about determining if it has taken effect?
Click to expand...
Click to collapse
Jerreth said:
I have the same structure i found su.d in root but not the other.
Also how would i go about determining if it has taken effect?
Click to expand...
Click to collapse
The value in dev/stune/schedtune.boost and /dev/stune/foreground/schedtune.boost should be changed to the value of the script you picked. You can probably change them manually without the script.
airmaxx23 said:
Freak07 said:
In system/etc I do not have an init.d folder, just init.
I'm using Elemental X kernel.
Click to expand...
Click to collapse
Did you Flash Elemental X kernel Prior or after rooting your device. I am not entirely sure but elex should have init.d Support.
can you install the app universal init.d from playstore, open it, scroll down and do the test to determine if init.d is supported or not?
airmaxx23 said:
The value in dev/stune/schedtune.boost and /dev/stune/foreground/schedtune.boost should be changed to the value of the script you picked. You can probably change them manually without the script.
Click to expand...
Click to collapse
yes that is correct. you can Change the values manually but they will not survive a reboot. that is why i made the scripts.
Click to expand...
Click to collapse
kirschdog1 said:
Same issue unable to change permissions
Click to expand...
Click to collapse
are you able to Change the files manually? either via root Explorer or terminal?
for terminal do:
su
echo x > /dev/stune/schedtune.boost
x is a value between 0 and 100 ( try between 1 and 10 to be on the safe side battery wise.)
afterwards check if the value got changed correctly.
Freak07 said:
are you able to Change the files manually? either via root Explorer or terminal?
for terminal do:
su
echo x > /dev/stune/schedtune.boost
x is a value between 0 and 100 ( try between 1 and 10 to be on the safe side battery wise.)
afterwards check if the value got changed correctly.
Click to expand...
Click to collapse
I can change them manually but upon rebooting they reset to 0.
Freak07 said:
are you able to Change the files manually? either via root Explorer or terminal?
for terminal do:
su
echo x > /dev/stune/schedtune.boost
x is a value between 0 and 100 ( try between 1 and 10 to be on the safe side battery wise.)
afterwards check if the value got changed correctly.
Click to expand...
Click to collapse
How do I check?
XtraArrow said:
I can change them manually but upon rebooting they reset to 0.
Click to expand...
Click to collapse
Okay. I was in a hurry. I told you all to set the permissions to 644. You have to set them to 755 (rwxr-xr-x).
kirschdog1 said:
How do I check?
Click to expand...
Click to collapse
check with a root Explorer. it is the easiest way.
or via terminal
cat /dev/stune/schedtune.boost
But first set the permissions of the script to to 755 (rwxr-xr-x). I was in a hurry and did not think correctly
then reboot and wait a Minute.
I edited the instructions in the op and all should be working now. It will not matter if you put it in system/etc/init.d or in system/su.d.
I somehow mixed the permissions with somethings else up. yeah, 755 and all will be well. stupid me.
have a nice evening.

Categories

Resources