If you're having problems with statemenu, the first thing to do is look for its log file, statemenu.log. It should be in the directory StateMenu was started from - probably your home directory if you have StateMenu started automatically by your desktop environment. The log file will only be created if there is a problem.
If the log file doesn't help, or if you don't have a log file, the next thing to try is running StateMenu from a terminal. Sometimes a problem with a script looks to StateMenu like the script is just reporting back negative status.
killall statemenu statemenu
While StateMenu should log a script's stderr, this will let you see the script's stdout as well - hopefully this will shed some light on the problem.
If StateMenu realizes that it cannot determine the status of a resource, it will label the resource's status as 'Unknown' (and use a red 'X' for its icon). But if the problem is that StateMenu is reporting the wrong state, the above steps might tell you why. In any case, if you're still having trouble, feel free to email me.