I've came across a really nasty behavior in the ZebraLink SDK in combination with the Bluetooth APIs.
Scenario: printer is shutting down due to inactivity. But the ZebraLink SDK still tells me that it is connected when calling the IsConnected() method on the connection. So I have to send a request for the current printer status. Programming around this wouldn't be too much of an issue.
The real problem is that if I try to Close() and Open() again this will fail! So I have to create a whole new connection from scratch in order to be able to re-connect to the printer. This is not the expected behavior! I've programmed interfaces for other printers in the past and never had to take such measures.
Please fix the link detection and re-connection issue. If you like I can provide a sample project that shows these flaws.