I stumbled across an ADB dongle that seems to have been used as a watchdog device for classic macs. It got me thinking about the ADB adapters I've already done and potentially supporting something similar.
The idea seems to be you have an ADB device and software running on the machine that occasionally pings the ADB device. If the ADB device hasn't received a ping in some amount of time, it tries to reboot the machine, presumably through a cmd-shift-power key combo, although I could think of a couple other keyboard related tricks to try to reboot the machine.
I've just been brainstorming a bit on how to accomplish this. I haven't looked at existing software on this yet, so there's probably some clever tricks, but I was just thinking of inserting a task into the system's event loop that pings the ADB device. Using an interrupt isn't very reliable, since on macos you could starve the event loop, essentially hanging the machine, but interrupts are still working (how many times have you seen a mac unusable, but the mouse still moves?). Being a system event should be able to detect that, I'd think.
I'm not sure how useful it'd be, but I just found the idea interesting, especially in conjunction with the ADB work I've already done.
|