Regarding the wake on alarm, have you looked at apmsleep? It seems to do what you want and can be run via an ssh command from a remote box. I haven't used it, but I have programmed the type of functionality you mentioned at a previous company (under Linux), but the code is not open source. The wake on alarm is part of the real time clock, so all you really need to do is get access to the RTC, program in the time, and enable it, then enable the IRQ from the RTC to the interrupt controller and put the system to sleep. The problem is that there are so many different RTCs, different interrupt controllers, different requirements for handling sleep, etc. Luckily, in my application, it was a closed box so I knew all the hardware.
Actually, the hardware was the self-checkout system used at Walmart - I wrote the Windows and Linux device drivers for it at NCR. However, a funny story happened along the way... One of the requirements was also for the unit to wake on motion, where motion is detected by a thresholding light sensor in the small clear sensor at the bottom of the display (the hole is still there, but the sensor is no longer supported). At the first test launch for this hardware (at a Home Depot store in Atlanta), we set all the units to wake up at specific time the next morning, forgetting to disable the wake on motion irq, and then shut all the units down. Then, when the power to the overhead lights was cut, everyone of the units saw the 'darkness' as 'motion' and popped on en masse. It took a bit of head scratching to realize what had happened. Info on apmsleep... http://linux.about.com/library/cmd/blcmdl1_apmsleep.htm -- TriLUG mailing list : http://www.trilug.org/mailman/listinfo/trilug TriLUG Organizational FAQ : http://trilug.org/faq/ TriLUG Member Services FAQ : http://members.trilug.org/services_faq/
