I was able to duplicate the problem with the Example POS in the windows remote pay SDK. I haven't been able to isolate the issue, hopefully someone else can help. In the Sample program, on the main POS screen (where you add product buttons, etc), add a new button. In the button click event, use the following code:
label3.Text = "";
Set a break point on this line and now start the POS in debugging mode.
Click OK to connect (using USB to clover). When you are on the main POS (with clover ready), disconnect the clover USB. Wait a second and plug it back in (it should show in the status in the lower right that the mini is ready. Now click the button. Step over the break point and view what it holds.
Instead of emptying the string, it sets it to "\u0002". It does the same thing in my POS app. It causes label text to change to this instead of being empty when set to "". All the labels when they are set to "" will contain this (and have a .Length =1) until the application is closed and started again. But not simple string variables, they will clear appropriately. I cannot figure out why and no matter what I do, I cannot get form labels.text property to be a simple empty string. .ResetText(), etc doesn't work. And it only happens when I disconnect the clover. I tried disconnecting and reconnecting our usb barcode scanner - no problems.