Sendevent & getevent - G1 General

Someone know more google about sendevent and getevent? i try emulate the nav ball sending to my g1 code whit these...but i'm not so luky...

Related

How to get the power left on the dock battery

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.

Fix HD2 Black screen in call (broken/dirty proximity)

Hello fellas,
Is your screen also black on a call, and turns back on when you hang up the call?
Here is a simple fix.
Open Terminal Emulator, and type:
Code:
su
chmod 000 /dev/cm3602
chmod 0000 /dev/cm3602
Fixed.

Z1C and Tasker automation

Thought I would create a thread to discuss Tasker automation on the Z1C (help requests, troubleshooting, automation ideas, etc.)
First a help request:
Has anyone been successful in getting AutoInput or Sendevent shell commands (double taps, swipes) to work on the Z1C?
I've used this script in the past to record events and replicate them to create macros using Tasker shell, but the Z1C input devices (touchscreen, buttons) don't seem to be allowing capture using getevent:
http://forum.xda-developers.com/showthread.php?t=2233865
wernyuen said:
Thought I would create a thread to discuss Tasker automation on the Z1C (help requests, troubleshooting, automation ideas, etc.)
First a help request:
Has anyone been successful in getting AutoInput or Sendevent shell commands (double taps, swipes) to work on the Z1C?
I've used this script in the past to record events and replicate them to create macros using Tasker shell, but the Z1C input devices (touchscreen, buttons) don't seem to be allowing capture using getevent:
http://forum.xda-developers.com/showthread.php?t=2233865
Click to expand...
Click to collapse
Edit: always execute as root!!!!
task Swipe:
Script
execute Shell
input swipe x1 y1 x2 y2 speed
like:
input swipe 310 870 310 320 200
keyevents:
http://developer.android.com/reference/android/view/KeyEvent.html
like
power on/off
input keyevent 26 or
input keyevent KEYCODE_POWER
pause between actions:
sleep 1
sleep 2 etc.
tap:
input tap x y
start app:
am start -n app.name.name/ManifestActivity
close app:
am force-stop app.name.name
complete action screen on, unlock, start spotify, autoplay, screen off
am start -n com.spotify.music/.MainActivity;
sleep 2;
input keyevent 26;
sleep 1;
input swipe 310 870 310 320 200;
sleep 1;
input keyevent 126;
sleep 1;
input keyevent 26;
i hope it help
Maetz3 said:
Edit: always execute as root!!!!
task Swipe:
Script
execute Shell
input swipe x1 y1 x2 y2 speed
like:
input swipe 310 870 310 320 200
keyevents:
http://developer.android.com/reference/android/view/KeyEvent.html
like
power on/off
input keyevent 26 or
input keyevent KEYCODE_POWER
pause between actions:
sleep 1
sleep 2 etc.
tap:
input tap x y
start app:
am start -n app.name.name/ManifestActivity
close app:
am force-stop app.name.name
complete action screen on, unlock, start spotify, autoplay, screen off
am start -n com.spotify.music/.MainActivity;
sleep 2;
input keyevent 26;
sleep 1;
input swipe 310 870 310 320 200;
sleep 1;
input keyevent 126;
sleep 1;
input keyevent 26;
i hope it help
Click to expand...
Click to collapse
thanks! very helpful.
what about multi-touch or pinch-to-zoom? have not been able to find solutions that have bridged that online
double tap also seems to be a challenge for the Z1C, somehow even without sleep in between two "input taps" it is still too slow to be recognized as a double tap
wernyuen said:
thanks! very helpful.
what about multi-touch or pinch-to-zoom? have not been able to find solutions that have bridged that online
double tap also seems to be a challenge for the Z1C, somehow even without sleep in between two "input taps" it is still too slow to be recognized as a double tap
Click to expand...
Click to collapse
i dont know but i think you need something like nova launcher
i think you can combine this controls in tasker
for zoom you can use:
KEYCODE_ZOOM_IN (input keyevent 168)
KEYCODE_ZOOM_OUT (input keyevent 169)
Maetz3 said:
i dont know but i think you need something like nova launcher
i think you can combine this controls in tasker
for zoom you can use:
KEYCODE_ZOOM_IN (input keyevent 168)
KEYCODE_ZOOM_OUT (input keyevent 169)
Click to expand...
Click to collapse
Thanks ... tried the ZOOM_IN/OUT keyevents, but I think that is for the camera, I'm trying to implement this on Google Maps and Maps Engine, since they removed the Zoom and Scaling buttons on the official Google apps it's been a pain (and driving hazard) to manually zoom in and out with touchscreen input. (trying to map the zoom actions to my media controls on the steering wheel)
Hi all,
Let me start with an apology as I am not sure that I am in the right thread here, however tasker automation does seem to have alot of threads - I am confident that someone who knows more than me might be able to answer my questions/problems.
I am currently trying to automate a search in youtube using autovoice and autoinput. Via voice command so far I can get autoinput to launch youtube, and click the search bar, however I cant get it to input any text into the search bar! - So I really need to know, how to get autoinput to input variable text and search for it within youtube, not even sure which function of autoinput it would be to be honest.
Still learning.
Any help you can give would be fantastic,
Cheers
Dan
If what you want to achieve is to search YouTube, there are easier ways:
1. Simply ask Google Now to search or YouTube using the "watch" or "listen" command; or
2. Use an intent in Tasker to activate YouTube search with the search term %avcommnofilter (rather than try to use autoinput)
If you really must use autoinput, you can use the UI query action to find the right variable name for the search box, then use the 'autoinput action' action to paste your search term (%avcommnofilter) into the search box
dan34321 said:
Hi all,
Let me start with an apology as I am not sure that I am in the right thread here, however tasker automation does seem to have alot of threads - I am confident that someone who knows more than me might be able to answer my questions/problems.
I am currently trying to automate a search in youtube using autovoice and autoinput. Via voice command so far I can get autoinput to launch youtube, and click the search bar, however I cant get it to input any text into the search bar! - So I really need to know, how to get autoinput to input variable text and search for it within youtube, not even sure which function of autoinput it would be to be honest.
Still learning.
Any help you can give would be fantastic,
Cheers
Dan
Click to expand...
Click to collapse
I have a slightly different question how to make a script turning stamina mode on and off? It would be usefull because stamina sometimes prevents alarm apps from ringing in time.

sendevent for input tap x y?

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.

Useful Tasker script for rooted head units

Device needs to be rooted!
This does not work with apps from the supplier as radio, phone, player, video etc. These are nearly all included in the com.car.ui and I did not yet find a way to get them "catched".... may be there is another way... Would be nice if someone could point it to me.
Target of this script with Tasker:
I just wanted to reduce touch screen using while driving.
To start may be a player with a click on a button is one thing, but I may don´t want to stay in this app.
In this case I need to click the Home button and choose another app. On a head unit without hardware buttons sometimes hard to get the home button clicked.
But If I need to play around with the settings of the app, I don´t want to get rejected to the home screen during changing the app settings....
So the target was to create a task which:
Moves the app to background after a short time
To not move the app to background while touching the screen
To move the app to background if there is no touch within a predefined time.
I found a way to get back to the home screen if I opened a player (in this case DAB-Z from realzoulou) by using shell commands.
Example:
Code:
DAB_RETURN (3)
A1: Variable Clear [ Name:%Touch Pattern Matching:eek:ff Local Variables Only:eek:ff ]
A2: Wait [ MS:100 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A3: Variable Clear [ Name:%Dab Pattern Matching:eek:ff Local Variables Only:eek:ff ]
A4: Wait [ MS:0 Seconds:5 Minutes:0 Hours:0 Days:0 ]
A5: Run Shell [ Command:cat /proc/$(pidof -s com.zoulou.dab)/oom_adj Timeout (Seconds):0 Use Root:eek:n Store Output In:%Dab Store Errors In:%Dab_false Store Result In: Continue Task After Error:eek:n ]
A6: Wait [ MS:100 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A7: Run Shell [ Command:getevent -c 1 /dev/input/event1 Timeout (Seconds):5 Use Root:eek:n Store Output In:%Touch Store Errors In:%Touch_false Store Result In: Continue Task After Error:eek:n ]
A8: If [ %Touch Set ]
A9: Goto [ Type:Action Number Number:1 Label: ]
A10: Else
A11: Run Shell [ Command:cat /proc/$(pidof -s com.zoulou.dab)/oom_adj Timeout (Seconds):0 Use Root:eek:n Store Output In:%Dab Store Errors In:%Dab_false Store Result In: Continue Task After Error:eek:n ]
A12: Wait [ MS:100 Seconds:0 Minutes:0 Hours:0 Days:0 ]
A13: If [ %Dab !~ 3 ]
A14: Go Home [ Page:1 ]
A15: Else
A16: End If
A17: End If
To use it for other apps you need to find the package name by using the shell:
Open ADB on your PC, connect to your Android in the same WiFi by:
adb connect [IP-Addresse]
adb shell
top (this command does not stop. You need to press "q" on your keyboard to stop it)
The output shows all running apps on your device. You need to search for the app name you want to use with this script.
Code:
cat /proc/$(pidof -s [app-name])/oom_adj
For DAB-Z it is:
Code:
cat /proc/$(pidof -s com.zoulou.dab)/oom_adj
This command returns the status of DAB-Z:
1 = App in foreground
0= App not running, or in background
Other apps can show different states. You need to find the status by using your PC for each app you want to get managed by this task.
The shell command:
Code:
getevent -c 1 /dev/input/event1
fetches touch events on the screen....
and waits in my script 5 sec, stores a touch in %Dab and keeps it empty if there was no touch on the screen.
If you touch it, the variable will be filled with a "0" (zero), otherwise the shell throws an exception which is the trigger to go back to the home screen.
Have fun with it.

Categories

Resources