Here's some reading on the subject. Timur himself has had the issue, but sorta passes the job onto a 3rd party app.
Apoligies for the wall of text. - see below for some more reading on it...
Using an USB DAC
FI kernel + Power Loss
Sudden loss of external power can result in a number of problematic situations. This is the case, for example, when slave devices build up state, while being in use. USB mouse and keyboard are often stateless devices and will not suffer any state related issues after a sudden power loss. But state is in play, whenever external filesystems are being used. And also, when a USB DAC is playing back an audio stream.
When a statefull USB session is interrupted by loss of external power, what happens in most cases, is that all slave devices will loose power, while the host will be able to continue operations on battery power. Even if the host will fall into deep sleep mode shortly, it will be able to keep it's state, while slave devices will loose theirs. In a power loss situation, USB slave devices will usually not unplug themselfs. From the point of view of the USB host, these devices keep being registered USB slave devices. They will just stop functioning the way they normally do.
When external power comes back, all slave devices will restart and also the host will start using external power again for it's operations. The problem takes place, when applications, running on the host, may or may not notice, that something has happened with the devices they were using just moments ago.
An application reading from an external SD-card may or may not notice, that when it is using it's file handles now, that the device is returning error codes, instead of data.
A music player application, trying to continue sending it's data stream to a USB DAC, may or may not notice, that the USB DAC is unable to play back the continued audio stream, because it has lost knowledge about data references, the host is sending.
In short, removing power from slave devices is likely to result in all sort of difficult situations. Often, these difficulties can be overcome. What is important to realize here, is that most of these problems are usually on the application level. And the only way to resolve these issues is also on the application level.
External filesystems may need to be remounted. And applications reading and writing to an external SD-card (or a SSD drive) may need to cope with a file system, suddenly being unmount and eventually getting remounted.
Music player applications may need to be triggered to pause and unpause playback. This will make them create and use new audio stream handles, which may be required for a newly started DAC to accept any music data.
Allowing a music app to continue sending an old (unpaused) audio stream to a newly restarted USB DAC, can temporary destabilize all communications on the newly established USB session. Pausing and unpausing now, may not be able to resolve the issue anymore. In some situations the problem will resolve itself over time. In other situations, killing the Music player process (or switching to a different music app) will be the only way back to normal operations. All such issues can be prevented by pausing audio going to the USB DAC, before it will restart. Installation of a dedicated Android service can solve this issue reliably.
Source: http://mehrvarz.github.io/usb-host-mode ... nt-nexus7/
Awesome read on XDA about the Sitch...
http://forum.xda-developers.com/showthr ... ?t=2029728

