USB keyboard to wake up from suspend (Utilite)
Home › Forums › GeeXboX on ARM SoCs › USB keyboard to wake up from suspend (Utilite)
This topic contains 4 replies, has 2 voices, and was last updated by
yoshi 10 months ago.
-
AuthorPosts
-
I have a usb remote attached to my Utilite Standard (which functions as a keyboard).
I’m looking for a way to wakeup my utilite with the remote.The way I understand it, there are two steps involded:
1. Set XBMC’s poweroff to actually suspend the system (not to completely shut it down)
2. Set the USB device to trigger wakeup from suspend.I’ve trying looking how it is done with a regular PC, and there are files under /sys/bus/usb/devices/
/power/* that configure these kinds of things. But the files such as “wakeup” are missing in the Geexbox’s current distribution. Also there is no /proc/acpi, only /proc/apm… I guess the interface Geex works with is apm?
There is no “suspend” state on ARM SoCs.
So if its not possible than I guess it must be done in the “firmware” level.
i.e. the same code that controls the nice LED when the device is powered off…I know that it should be possible to keep on of the USB devices powered up. The question if it can also be used to trigger the power on of the device – I’ll ask that one in the Compulab’s forum
Okay. Thought of another option:
1. Use xbmc’s exit as power off. the device still shows the console.
2. Somehow map the “power” button, to start XBMC again, if its not running.For those who are interested, I wrote a solution that works and does exactly what I thought in the previous post, which means it doesn’t “suspend” the system, only halts xbmc and blanks the screen.
(This can also be considered an advantage because it is still accessible via ssh and can be to do other tasks while on “standy”)1. keymap.xml that maps “power” key to a script which calls “systemctl stop xbmc” and blanks the screen (by writing 1 to /sys/class/graphics/fb0/blank)
2. Service that runs in the background waiting for “power” key and then turns on the screen and starts xbmc, by calling “systemctl start xbmc”.The reason for the external service is that I wanted to kill xbmc, since it was overloading the CPU on idle.
And the reason the solution was not implemented only in that service is that xbmc opens the keyboard event file exclusively, which makes the service “blind” to any key presses when xbmc is running. -
AuthorPosts
You must be logged in to reply to this topic.