Zend certified PHP/Magento developer

How to properly detect USB disconnection with recovery in case of reconnect?

I have a serial interface connected via USB. I have a simple white true loop checking every 15 minutes if /dev/ttyUSB0 exists (purpose is to execute some code if its not there):

if [ -e /dev/ttyUSB0 ]; then

It works well; however, it appears that if the device ever disconnects even for a few seconds (like a reboot), when the next check happens, it thinks its not there (even though the interface is connected and working, data is flowing and /dev/ttyUSB0 is there).

Why is this?