in reply to Progressing a ProgressBar...

If you are just finding on the CDRW to wake it, what would be wrong with :
while (1) { # mabe a notice that your app is waiting for CDRW device to wake up he +re... open (TESTCDRW, ">$path_to_cdrw/touchtest.txt") and last; sleep 1; } close (TESTCDRW); do your stuff here...
instead of finding the cdrw data? This should loop until the cdrw is able to be written to.

-Waswas