Can Android be woken up from sleep by a peripheral device such as an arduino microcontroller?
Additional details:
I am looking to save power by putting the Android device to sleep and having the low-power peripheral device wake up the Android device only when an “interesting event” occurs (e.g. abnormal sensor reading)
The device probably cannot be woken from true CPU sleep (which is a level beyond having the screen off) by ordinary software/signalling means.
However, enabling a 5v power source to the USB jack probably will wake up the majority of devices which can charge via USB.
If they are connected to an actual USB host (vs a simple power supply/charger) my suspicion is that they would not enter CPU sleep at all. Both the android accessory kit and IOIO schemes have the external microcontroller functioning as a USB host and providing power, so it’s likely sleep would not be an issue. Or if you need to save power, you could probably make the externally sourced power switchable.
Two additional possibilities to consider are using a partial wakelock to prevent CPU sleep, or setting alarms to wake the device periodically so that background code can check for some event.