and the most important thing... will it work if I press sleep mode button?
Sorry for the delay, I only got notified when you changed my answer:
Not that familiar with CE3, but it should just be a case of:
Timer tim = new Timer();
tim.Interval = 30000;
tim.Tick += new EventHandler(tim_Tick);
}
void tim_Tick(object sender, EventArgs e)
{
SystemIdleTimerReset();
}
As for your sleep button, On sleep disable the timer, on wakeup restart it.