ok.. if your Zaurus starts to crash after a long period of being suspended dont worry about hacking up any crazy scripts, etc..
just click on the power settings and set suspend after "0" min's to both. You might also want to click on the screen applet and disable suspend for good measures.
I refered to jcabrer's post (a little hard to follow) ->
"For your consideration:
Let us assume that you have set your screen to blank at 10 minutes and suspend at 30.
Let's also assume that there is some not so perfect behavior in the clock time keeping.
OK, so now you manually suspend because your Girl/Boy friend just showed up. After 15 minutes you excuse your self to the rest room, and secretly try to power up your Z. The screen comes on momentarily, even the light may come on, but it powers back off.
In frustration you go back outside for a while, and try again later. say an hour or so. Still no luck? RESET. Then it works.
What's happening is that the suspen timers are not being reset when you power off. They only reset when a screen tap or some keys are registered. The result is that if your system wakes up and sees that its suspend timer has expired, it goes back into suspend thinking its been active the whole time.
The real solution to this problem is any fix that actually resets the suspend/screen blank timers when the system wakes up, or right before it suspends.
If you are losing time... (as i was)
just add two lines to /usr/bin/apm
# X11 ROM apm wrapper
# test -e /etc/rc.d/init.d/pcmcia && /etc/rc.d/init.d/pcmcia stop >/dev/null 2>/dev/null
echo -n Suspending ...
# test -e /etc/rc.d/init.d/pcmcia && /etc/rc.d/init.d/pcmcia start >/dev/null 2>/dev/null
# sleep 1
cardctl insert > /dev/null 2>&1
echo ... Resumed
if [ "$1" = "--suspend" -o "$1" = "-s" -o "$1" = "--su" ]; then
are the two lines you need to add... much thanks to the guy who figured this out!! (not me)