Related
run in terminal:
su
cat /sys/class/power_supply/dock_battery/uevent
will give you Name Status and Capacity (in percentage)
if you want only the capacity, do :
cat /sys/class/power_supply/dock_battery/capacity
For the tablet battery
cat /sys/class/power_supply/battery/uevent
will give you lots of information
as usual
cat /sys/class/power_supply/capacity
will give you the percentage of the battery juice.
You can use those commands with tasker, locale execute Plug-In and Minimalistic Text to create a widget.
If I find the time I will post an how to:
Didn't work for me...
#su
# cat /sys/class/power_supply/dock_battery/capacity
/sys/class/power_supply/dock_battery/capacity: invalid length
case0 said:
Didn't work for me...
#su
# cat /sys/class/power_supply/dock_battery/capacity
/sys/class/power_supply/dock_battery/capacity: invalid length
Click to expand...
Click to collapse
have you tried the other commands?
Go here
http://forum.xda-developers.com/showthread.php?t=1112391
Great free app that works.
#!/system/bin/sh
#
#
#
# DimmerMod Guide
#
# All credit for this mod goes to Ezekeel, who created it,
# and to the kernel devs (e.g. morfic, reddv1, and
# mathkid95) who have implemented it. If you're not
# rooted and using a kernel that supports it, such as
# Trinity, Lucid Nexus, or Matrix, don't ask why it
# doesn't work. If you don't know what I'm talking
# about, this might not be for you.
# Lines not preceded by a pound are commands that
# may be entered in terminal emulator. If you get a
# "directory nonexistent" error, your kernel does not
# support this. If you're familiar with init.d scripts, you
# know what to do.
#
#
#
# Screen Dimmer
# Screen dimmer will turn the screen off at the
# specified interval. Touching the screen will turn it
# back on. It does not play nicely with movies or other
# things that should keep the screen awake, but does
# allow the system and running apps to continue
# running, which shortens battery life. It has been
# made obsolete by touch wake dimmer. Use that
# instead.
#
# Enable:
echo 1 > /sys/class/misc/screendimmer/enabled
#
# Disable:
echo 0 > /sys/class/misc/screendimmer/enabled
#
# Set screen time-out delay,
# in milliseconds (example: 25 seconds). Value of 0 =
# indefinite delay (not useful for screen dimmer).
echo 25000 > /sys/class/misc/screendimmer/delay
#
#
#
# Touchkey Backlight Dimmer
# Touchkey backlight dimmer turns off the softkey
# backlight at the specified interval. It will turn back
# on (temporarily) when you touch the menu buttons.
# The battery savings are negligible. It is more of a
# user experience tweak. Some people prefer the way
# the phone looks with them off, particularly when
# watching movies. It can also be useful for bln users,
# who may prefer the keys to light up only when there
# is a notification.
#
# Disable:
echo 0 > /sys/class/misc/backlightdimmer/enabled
#
# Enable:
echo 1 > /sys/class/misc/backlightdimmer/enabled
#
# Set backlight dimmer time-out delay,
# in milliseconds (example: 3 seconds). Value of 0 =
# indefinite delay (not useful for backlight dimmer).
echo 3000 > /sys/class/misc/backlightdimmer/delay
#
#
#
# Touch Wake
# Touch wake will keep the touch input and menu
# softkeys active for the specified delay. The screen
# timeout will work normally, but you can then wake
# the phone by touching the screen or menu buttons
# instead of the power button. If you press the power
# button (or the touch wake expires) the phone will
# then be woken only by the power button, like normal.
# If you're running CyanogenMod, you can prevent the
# lockscreen from displaying when using touch-to-wake.
# Just set CyanogenMod settings->Lockscreen->Delay
# and timeout->Screen timeout delay to the same
# interval as touchwake/delay.
#
# Disable:
echo 0 > /sys/class/misc/touchwake/enabled
#
# Enable:
echo 1 > /sys/class/misc/touchwake/enabled
#
# Set touch wake time-out delay,
# in milliseconds (example: 5 minutes). Value of 0 =
# indefinite delay (If you do this, touch wake will stay
# active indefinitely. Press the power button to disable
# it when you put the phone in your pocket.)
echo 300000 > /sys/class/misc/touchwake/delay
#
#
#
# This guide brought to you by Maximilian Mary.
If you're on the xda app, this reads better with the phone sideways.
Maximilian Mary said:
#!/system/bin/sh
#
#
#
# DimmerMod Guide
#
# All credit for this mod goes to Ezekeel, who created it,
# and to the kernel devs (e.g. morfic & reddv1) who
# have implemented it. If you're not rooted and using
# a kernel that supports it, such as Trinity or Lucid
# Nexus, don't ask why it doesn't work. If you don't
# know what I'm talking about, this might not be for
# you.
# Lines not preceded by a pound are commands that
# may be entered in terminal emulator. If you get a
# "directory nonexistent" error, your kernel does not
# support this. If you're familiar with init.d scripts, you
# know what to do.
#
#
#
# Screen Dimmer
# Screen dimmer will turn the screen off at the
# specified interval. Touching the screen will turn it
# back on. It does not play nicely with movies or other
# things that should keep the screen awake, but does
# allow the system and running apps to continue
# running, which shortens battery life. It has been
# made obsolete by touch wake dimmer. Use that
# instead.
#
# Enable:
echo 1 > /sys/class/misc/screendimmer/enabled
#
# Disable:
echo 0 > /sys/class/misc/screendimmer/enabled
#
# Set screen time-out delay,
# in milliseconds (example: 25 seconds). Value of 0 =
# indefinite delay (not useful for screen dimmer).
echo 25000 > /sys/class/misc/screendimmer/delay
#
#
#
# Touchkey Backlight Dimmer
# Touchkey backlight dimmer turns off the softkey
# backlight at the specified interval. It will turn back
# on (temporarily) when you touch the menu buttons.
# The battery savings are negligible. It is more of a
# user experience tweak. Some people prefer the way
# the phone looks with them off, particularly when
# watching movies. It can also be useful for bln users,
# who may prefer the keys to light up only when there
# is a notification.
#
# Disable:
echo 0 > /sys/class/misc/backlightdimmer/enabled
#
# Enable:
echo 1 > /sys/class/misc/backlightdimmer/enabled
#
# Set backlight dimmer time-out delay,
# in milliseconds (example: 3 seconds). Value of 0 =
# indefinite delay (not useful for backlight dimmer).
echo 3000 > /sys/class/misc/backlightdimmer/delay
#
#
#
# Touch Wake
# Touch wake will keep the touch input and menu
# softkeys active for the specified delay. The screen
# timeout will work normally, but you can then wake
# the phone by touching the screen or menu buttons
# instead of the power button. If you press the power
# button (or the touch wake expires) the phone will
# then be woken only by the power button, like normal.
# If you're running CyanogenMod, you can prevent the
# lockscreen from displaying when using touch-to-wake.
# Just set CyanogenMod settings->Lockscreen->Delay
# and timeout->Screen timeout delay to the same
# interval as touchwake/delay.
#
# Disable:
echo 0 > /sys/class/misc/touchwake/enabled
#
# Enable:
echo 1 > /sys/class/misc/touchwake/enabled
#
# Set touch wake time-out delay,
# in milliseconds (example: 5 minutes). Value of 0 =
# indefinite delay (If you do this, touch wake will stay
# active indefinitely. Press the power button to disable
# it when you put the phone in your pocket.)
echo 300000 > /sys/class/misc/touchwake/delay
#
#
#
# This guide brought to you by Maximilian Mary.
Click to expand...
Click to collapse
thanks! now i have something to link for people instead of having to type it out every time some asks
Korean Version
Hello~
Thanks for the great guide.
I've translated the guide into Korean for my fellow countrymen.
http://caleb1783.tistory.com/200
Hope you dont mind~!
Cheers,
anyone able to make Widgetlocker play nice with Touch Wake?
After screen timeout, Widgetlocker kicks in immediately.
Sorry for the newbie question, but what should the init.d file be named? I guess you can name it whatever you want but there has to be a specific number at the begining. What should that number be?
Sorry if this is a stupid question, but how do I get the Touch key dimmer to stick after reboot?
MistaJae said:
Sorry if this is a stupid question, but how do I get the Touch key dimmer to stick after reboot?
Click to expand...
Click to collapse
Go to the market and download an app called Script Manager and use the script I've attached to this post, it activates the touchkey back light dimmer after 30 seconds and can be easily modified to whatever you like. I found the script somewhere on the board but one can be easily created with Script Manager so that you can take advantage of Ezekeel's mods and not have to worry about setting them everytime you reboot.
Touchkey Backlight Dimmer script: http://db.tt/y0IHXZCA
onigiri1692 said:
Go to the market and download an app called Script Manager and use the script I've attached to this post, it activates the touchkey back light dimmer after 30 seconds and can be easily modified to whatever you like. I found the script somewhere on the board but one can be easily created with Script Manager so that you can take advantage of Ezekeel's mods and not have to worry about setting them everytime you reboot.
Touchkey Backlight Dimmer script: http://db.tt/y0IHXZCA
Click to expand...
Click to collapse
Just what I was after. I have changed the timeout to 3 secs instead of 30.
Many thanks!
Uh with the zero delay of backlight dimmer, it loses the functionality of holding home button. Can't switch apps :/ But 1 sec is ok.
onigiri1692 said:
Go to the market and download an app called Script Manager and use the script I've attached to this post, it activates the touchkey back light dimmer after 30 seconds and can be easily modified to whatever you like. I found the script somewhere on the board but one can be easily created with Script Manager so that you can take advantage of Ezekeel's mods and not have to worry about setting them everytime you reboot.
Touchkey Backlight Dimmer script: http://db.tt/y0IHXZCA
Click to expand...
Click to collapse
Getting a sytax error when running this in script manager. I tried zipped as is and unzipped as well. Wondering if I missed a step or something.
wild1z said:
Getting a sytax error when running this in script manager. I tried zipped as is and unzipped as well. Wondering if I missed a step or something.
Click to expand...
Click to collapse
You want to run the file that is inside the script. The only thing I can think of is maybe you aren't running the script as root.
onigiri1692 said:
You want to run the file that is inside the script. The only thing I can think of is maybe you aren't running the script as root.
Click to expand...
Click to collapse
Ok, so I unzipped it on my computer. Then copied the file to the phone. Then ran script manager as root and to run on start up. This time it ran with no errors and it worked. Thank you so much for the reply. This opens up some doors for me. Thanks button pushed.
it didn't work on my Nexus S with script manager
i write it , and select as root and at boot
but after i reboot , just like it didn't run this script , touchwake didn't work
------------
this is what i have on my script file
#!/system/bin/sh
echo 1 > /sys/class/misc/touchwake/enabled
echo 10000 > /sys/class/misc/touchwake/delay
echo 1 > /sys/class/misc/deepidle/enabled
Click to expand...
Click to collapse
something wrong ?
problem solved , thanks , although i don't even what have i done to solve it ... - - !!!
qtwrk said:
it didn't work on my Nexus S with script manager
i write it , and select as root and at boot
but after i reboot , just like it didn't run this script , touchwake didn't work
------------
this is what i have on my script file
something wrong ?
problem solved , thanks , although i don't even what have i done to solve it ... - - !!!
Click to expand...
Click to collapse
Go into the SU app next time and make sure The Script Manager is enabled. Happened to me too. Cheers.
I have created an application to make this thing easier
go to this thread
http://forum.xda-developers.com/showthread.php?t=1333696
thanks
Hi there
Just got GS5, ultra power saving mode is sweet however is there a way to automatically turn it on at a certain % of remaining battery (e.g. at 10% it turns on)
ALL help and advice welcome
It only takes one finger swipe and touch to activate it. Don't be too lazy now.
Sent from my SM-G900F using Tapatalk
Simone said:
It only takes one finger swipe and touch to activate it. Don't be too lazy now.
Sent from my SM-G900F using Tapatalk
Click to expand...
Click to collapse
The reason I ask is that if I leave my phone out overnight after a night out etc I don't want to wake up in the morning to a dead battery. Instead having it auto switch will be life saving ..ha :good:
I'm not 100% sure but I'm assuming you could probably create a Tasker profile to trigger UPSM at a specific battery percentage.
I have very little experience with Tasker though so someone correct me if I'm wrong.
Sent from my SM-G900W8 using Tapatalk
1742
msavic6 said:
I'm not 100% sure but I'm assuming you could probably create a Tasker profile to trigger UPSM at a specific battery percentage.
I have very little experience with Tasker though so someone correct me if I'm wrong.
Sent from my SM-G900W8 using Tapatalk
Click to expand...
Click to collapse
Hi there
Thanks v much for the info/ idea. I'll look into it, do I need to root my gs5 for tasker??
anyone else have knowledge activating upsm at a certain battery %.
Thanks
Unfortunately, Tasker has no possibilty to enable UPSM
The Tasker has possibility to lunch external script or application, but the problem is that there is no script which can start UPSM.
Is somebody found a way to do it? May-be another ways?
Somebody on reddit has been working with Tasker to do this. I can't post the link since I haven't posted more than 10 times, so do a google search for "Figured out how to activate Ultra power saver mode" reddit and tasker. It should come up.
I've tried it and had some success with it, but having some issues with the second tap command to activate. Seems like I had to up the timeout to something like 15 seconds.
Good luck.
Yes! You can
Using tasker of course
1. You have to put U.power saving somewhere on the visible part of Notification panel - pic 1
2. Create profile - State - Power - Battery level - (from 0 to 10 for example) - pic 2
3. Create new task: - pic 3
1. Display - Status Bar - Expanded
2. Script - Run Shell - Command - input tap x y (where x y are coordinates of the buttons you want to tap), check Use Root option
3. Script - Run Shell - Command - input tap x y (button OK on the UPSM menu), check Use Root option - pic 4
In my case x=972 y=226 and
x=790 y=1600
You have to check your x and y coordinates by turning Show pointer location in Developer options
And now you will have Ultra Power Saving Mode when your battery reaches 10 %
I would like this feature as well.. makes sense to me. I mean if the camera can stop the flash from working on low battery then enabling UPSM at low battery should be an option
nice but ...
This is really nice solution to automatically enable UPSM but one remark ... screen has to be turned on and screen locker must be unlocked ... so is we are already watching on phone why shouldn't we just manually start UPSM ?
Do you have any idea how to enable UPSM fully automatically ? without even touching phone ? my idea is to forget about power problems and every time when my phone will reach 5% it will automatically turn on UPSM completely without me.
ciechom said:
This is really nice solution to automatically enable UPSM but one remark ... screen has to be turned on and screen locker must be unlocked ... so is we are already watching on phone why shouldn't we just manually start UPSM ?
Do you have any idea how to enable UPSM fully automatically ? without even touching phone ? my idea is to forget about power problems and every time when my phone will reach 5% it will automatically turn on UPSM completely without me.
Click to expand...
Click to collapse
ROOT REQUIRED
Try this :
this will unlock and run UltraPowerMode at the specified time (00:50)
On shell code :
Code:
mount -o rw,remount /system ; mv /data/system/gesture.key /data/system/oldgesture.key ; input keyevent 26 ; input swipe 71 500 636 500 ; mv /data/system/oldgesture.key /data/system/gesture.key ; mount -o ro,remount /system ; am start -n com.android.settings/.Settings\$UltraPowerSavingModeActivity ; input tap 670 103 ; input tap 520 1150
#change ro(readonly) to rw(read/write) and add the remount option
mount -o rw,remount /system
#Unlock device-- 1-PATTERN
mv /data/system/gesture.key /data/system/oldgesture.key
OR
#Unlock device-- 2-PIN LOCK
mv /data/system/password.key /data/system/oldpassword.key
#wakeup device
input keyevent 26 ; input swipe 71 500 636 500
#turn on original lock pattern
mv /data/system/oldgesture.key /data/system/gesture.key
OR
#turn on original lock PIN CODE
mv /data/system/oldpassword.key /data/system/password.key
#remount with the original readonly.
mount -o ro,remount /system
#start ultra power save menu
am start -n com.android.settings/.Settings\$UltraPowerSavingModeActivity
#command to touch the buttons
input tap 670 103 ; input tap 520 1150
flaviofire said:
Try this :
. . .
Click to expand...
Click to collapse
I will try it for sure thx mate
But one more question. I own Galaxy Alpha and I'm using finger to unlock my phone.
Which file shoud I move to Unlock device ? is it /data/system/fingerprintpassword.key ?
And can you please explain a little bit more what this will do:
"input keyevent 26 ; input swipe 71 500 636 500"
does those numbers 71 500 636 500 are important ? I'm wondering because it might differ in different phones
Thank you :thumbup: I'm looking for this.
This is good but can we do it so it starts at a specific battery level instead of time?
Thanks.
No idea how to do it that is why I asked.
flaviofire said:
ROOT REQUIRED
Try this :
this will unlock and run UltraPowerMode at the specified time (00:50)
On shell code :
Code:
mount -o rw,remount /system ; mv /data/system/gesture.key /data/system/oldgesture.key ; input keyevent 26 ; input swipe 71 500 636 500 ; mv /data/system/oldgesture.key /data/system/gesture.key ; mount -o ro,remount /system ; am start -n com.android.settings/.Settings\$UltraPowerSavingModeActivity ; input tap 670 103 ; input tap 520 1150
#change ro(readonly) to rw(read/write) and add the remount option
mount -o rw,remount /system
#Unlock device-- 1-PATTERN
mv /data/system/gesture.key /data/system/oldgesture.key
OR
#Unlock device-- 2-PIN LOCK
mv /data/system/password.key /data/system/oldpassword.key
#wakeup device
input keyevent 26 ; input swipe 71 500 636 500
#turn on original lock pattern
mv /data/system/oldgesture.key /data/system/gesture.key
OR
#turn on original lock PIN CODE
mv /data/system/oldpassword.key /data/system/password.key
#remount with the original readonly.
mount -o ro,remount /system
#start ultra power save menu
am start -n com.android.settings/.Settings\$UltraPowerSavingModeActivity
#command to touch the buttons
input tap 670 103 ; input tap 520 1150
Click to expand...
Click to collapse
Thanks for posting. Status bar -> set expanded does not work on my lollipop latest firmware phone. I figured out the XY in developer mode and tested my script, steps 2 and 3 are working, but step 1 seems to no longer work for lollipop. Do you have another method for getting the new taskbar to come down?
ivankolev said:
Yes! You can
Using tasker of course
1. You have to put U.power saving somewhere on the visible part of Notification panel - pic 1
2. Create profile - State - Power - Battery level - (from 0 to 10 for example) - pic 2
3. Create new task: - pic 3
1. Display - Status Bar - Expanded
2. Script - Run Shell - Command - input tap x y (where x y are coordinates of the buttons you want to tap), check Use Root option
3. Script - Run Shell - Command - input tap x y (button OK on the UPSM menu), check Use Root option - pic 4
In my case x=972 y=226 and
x=790 y=1600
You have to check your x and y coordinates by turning Show pointer location in Developer options
And now you will have Ultra Power Saving Mode when your battery reaches 10 %
Click to expand...
Click to collapse
:good:
Thanks for the post. Hopefully Tasker is working on adding UPSM in a future update.
rickneworleansla said:
:good:
Thanks for the post. Hopefully Tasker is working on adding UPSM in a future update.
Click to expand...
Click to collapse
If you´re rooted. Install secure settings plugin it works with Tasker
I solved the problem
Open quick settings and then use AutoInput to click ultra saving mode and ok (or whatever the prompt). Make sure to include wait tasks to pause for sufficient time so everything have chance to happen.
I'm struggling to build up a Tasker routine to automate the USB Audio setup with one screen tap.
To do that I need a method for emulating screen taps (like for "off" and "host" and "close" in the USB Mode Utility, for example). I've already discovered that Eclair lacks the shell command "input tap x y". That would have been the easy route.
I'm not sure about "sendevent" and I'm even less sure about the syntax. Every resource I look at seems written for people who already know the answer. The typical syntax seems to be something like
sendevent /dev/input/event2 x x x
I can see in the root directory that there is a dev folder and in that an input folder. In there are listed 5 things:
21:14 event0
21:14 event1
21:14 event2
21:14 mice
21:14 mouse0
Does anyone know if "sendevent" is a valid shell command in Eclair and, if so, the functions of the events listed above?
Edit: well, I have a partial answer. Running an adb shell getevent I found the following:
event2 = zForce Touchscreen
event1 = gpio-keys [hardware, I assume?)
event0 = TWL4030 Keypad
It said it could not find a driver version for mice or mouse0 because it was not a typewriter (duh).
So it looks like event2 is what I need to deal with. Now if I only understood how. I know I need the screen coordinates where the touch is to be emulated
and I have an app for that.
As much as I love UsbMode, you don't need it.
For a script, you are better off just doing what it does yourself.
Code:
echo host > /sys/devices/platform/musb_hdrc/mode
echo peripheral > /sys/devices/platform/musb_hdrc/mode
echo 0 > /sys/devices/platform/bq24073/force_current
echo 500000 > /sys/devices/platform/bq24073/force_current
Renate NST said:
As much as I love UsbMode, you don't need it.
For a script, you are better off just doing what it does yourself.
Code:
echo host > /sys/devices/platform/musb_hdrc/mode
echo peripheral > /sys/devices/platform/musb_hdrc/mode
echo 0 > /sys/devices/platform/bq24073/force_current
echo 500000 > /sys/devices/platform/bq24073/force_current
Click to expand...
Click to collapse
Wow, and I was so excited because I figured out how to use sendevent w/Tasker to "press" the OFF button in the USB Mode Utility app today!
I really appreciate your response, Renate, so please bear with my lack of Android understanding. I can see that the first line is equivalent to tapping "host" (at least I hope that's what it is...). The the second is how to get back to normal mode.
By extension I am guessing that the third line is equivalent to "off" while the last line is equivalent to "auto". Right so far?
Now the most important question: so is "echo" a shell command I can use? I looked it up and it appears to be, just want to check before I try typing that into Tasker (not that it's half as bad as 8 sendevents to "touch" the screen one time!).
And one last question: is there a similar command equivalent to the "beep" of AudioCTRL (i.e., to kickstart the audio)
Edit: oh, wait, this is it, isn't it: kill -9 19409 [that being the PID of mediaserver on my NST]
Thanks for your help!
Woo-Hoo!!
The shell commands from Renate work great in a simple toggle Task. I just need to work on a few wait times and it's a done deal. One-touch USB Audio!
One question: the command "echo 500000 > /sys/devices/platform/bq24073/force_current" leaves the Max. current setting at 500 mA rather than "Auto". I'm guessing since there is nothing attached to the USB port anyway when you're all done that this is OK?
@nmyshkin
Values are 0, 100000, 500000, 1500000, auto for off, 100mA, 500mA, 1.5A, auto
Renate NST said:
@nmyshkin
Values are 0, 100000, 500000, 1500000, auto for off, 100mA, 500mA, 1.5A, auto
Click to expand...
Click to collapse
Perfect! Thanks so much. I've got a little widget on my homescreen now that does the work behind the scenes! Still struggling with a shortcut that I could customize a little.
I looked at the App Creator for Tasker but see that it requires Android 2.3. I wonder if created apps would therefore be for 2.3 or up? If not, I'd install it on my Nook Tablet running CM 10.2, make an app and export it. That would be cool.
Edit: both completed. Tasker widget here, stand-alone apps here.
Digging up an old thread here, but I'm trying to figure out a way to use an 'input tap' type event for my nook touch. I've got everything set up for a digital picture frame that can dynamically load images but the only slideshow viewer that I found to work doesn't start automatically, it loads on a file location menu first and I need to manually start the slideshow with a button press. Is there an 'input tap' equivalent that will work with the nook?
Figured it out. The adb shell command getevent will return a series of commands when you touch the screen (make sure it is a simple touch and not multiple points). Use these results (converting your numbers from hex to dec) as the command, in my case the correct sequence was:
sendevent /dev/input/event2 3 0 509
sendevent /dev/input/event2 3 1 58
sendevent /dev/input/event2 1 330 1
sendevent /dev/input/event2 0 0 0
sendevent /dev/input/event2 1 330 0
sendevent /dev/input/event2 0 0 0
Obviously it will be different for you, but the general sequence is x coordinate, y coordinate, touch screen, blank, release touch, blank.
And it works (i'm using a series of tasker adb shell commands)!
I don't know which viewer you are using (or even anything about them), but I'll be that it can take a path as data in the actuating Intent.
Then you'd only need something like:
Code:
am start -n com.neatoh.viewer/.Viewer -e Path /MyPhotos
No, these are all hypothetical values.
so, I was googling around a bit, a few days ago, and found out you can control the torch (and other leds) from the command line, or a bash script.
Prerequisites
root (magisk or superSU)
FX file manager or Termux
Text editor
Instructions
Create a file in a directory of your choice with a '.sh' extension
Add the following code to the file:
Code:
su -c 'echo 255 > /sys/class/leds/torch/brightness'
Run the shell script in termux (cd to the directory and run it) or run it using FX, it will ask for root access if you haven't already granted it
Your torch is now on!
To turn it off create another file with
Code:
su -c 'echo 0 > /sys/class/leds/torch/brightness'
in it
Tested on an Honor 9 and P10+
If you have dual tone flash, yo may find different values cause either led to come on, for me, '255' is the yellow flash and '1' is the white flash
For a bit more messing around, cd to the '/sys/class/leds' directory, you will see a few more directories for other LEDs on your device, controlling them is exactly the same as the torch!
Works for me, thanks a bunch dude
EDIT: on honor 7x/Huawei mate se
Thank you so much for this but I found in my own experience, and from comments I saw where this has been shared, that a bash script perhaps wasn't the most effective to have to run each time so I thought of implementing this to Tasker, create a "pseudo toggle" and allocate it to a quick setting tile. The algorithm is:
Code:
If flashlightStatus = TRUE then
Run shell command: su -c 'echo 0 /sys/class/leds/torch/brightness'
Set variable flashlightStatus to FALSE
Else
Run shell command: su -c 'echo 3 /sys/class/leds/torch/brightness'
Set variable flashlightStatus to TRUE
End If
I set it up this way because if you've never set the variable before (or if it clears on reboot or something) then it won't equal true and would still enable. Also, when I set the brightness to 255 the torch had a slight yellow tint so upon further reading, despite that 255 should be full brightness, apparently max brightness is 3 and is a white light (this seems to disable automatically after around 750ms however). Hope this will help those who are still without a torch on treble GSIs.
P.S. I also set up a quick profile that if the flashlight status variable = true then to wait 750ms and check if still true then change to false and turn off the torch; this would reset to compensate for the OS turning the torch off automatically but Tasker still thinking it was on. I'm not sure how necessary this is or whether it's overkill or not.
beejkitsune said:
Thank you so much for this but I found in my own experience, and from comments I saw where this has been shared, that a bash script perhaps wasn't the most effective to have to run each time so I thought of implementing this to Tasker, create a "pseudo toggle" and allocate it to a quick setting tile. The algorithm is:
Code:
If flashlightStatus = TRUE then
Run shell command: su -c 'echo 0 /sys/class/leds/torch/brightness'
Set variable flashlightStatus to FALSE
Else
Run shell command: su -c 'echo 3 /sys/class/leds/torch/brightness'
Set variable flashlightStatus to TRUE
End If
I set it up this way because if you've never set the variable before (or if it clears on reboot or something) then it won't equal true and would still enable. Also, when I set the brightness to 255 the torch had a slight yellow tint so upon further reading, despite that 255 should be full brightness, apparently max brightness is 3 and is a white light (this seems to disable automatically after around 750ms however). Hope this will help those who are still without a torch on treble GSIs.
P.S. I also set up a quick profile that if the flashlight status variable = true then to wait 750ms and check if still true then change to false and turn off the torch; this would reset to compensate for the OS turning the torch off automatically but Tasker still thinking it was on. I'm not sure how necessary this is or whether it's overkill or not.
Click to expand...
Click to collapse
mind if i improve this?
Code:
su -c 'if grep -q 1 /sys/class/leds/torch/brightness; then echo 0 > /sys/class/leds/torch/brightness; else echo 1 > /sys/class/leds/torch/brightness; fi'
-- obviously you can change the 1 to whatever you want
that is the code i'm using, prevents the use of an unnecessary variable, so is faster, and will use less resources, plus its pretty much fail safe, since it reads the current state of the torch to determine if its on or off, so if something else sets it to a state it still works, if something else set you variable externally then the torch becomes messed up until a reboot.
plus, im assuming that variable is a tasker thing? not everyone will use tasker, so eliminating the variable all together makes it work on any app that can add custom quick settings tiles
ambitiousButRubbish said:
mind if i improve this?
Code:
su -c 'if grep -q 1 /sys/class/leds/torch/brightness; then echo 0 > /sys/class/leds/torch/brightness; else echo 1 > /sys/class/leds/torch/brightness; fi'
-- obviously you can change the 1 to whatever you want
that is the code i'm using, prevents the use of an unnecessary variable, so is faster, and will use less resources, plus its pretty much fail safe, since it reads the current state of the torch to determine if its on or off, so if something else sets it to a state it still works, if something else set you variable externally then the torch becomes messed up until a reboot.
plus, im assuming that variable is a tasker thing? not everyone will use tasker, so eliminating the variable all together makes it work on any app that can add custom quick settings tiles
Click to expand...
Click to collapse
Yes, the variable is a Tasker thing so I'm glad there is a solution that wouldn't rely on it. Thanks for the upgrade and I've already switched out my Tasker profile for this. Doesn't seem any quicker or anything but more simple!