Hello all,
I’m working on an Android app on a Sunmi V2 device and can’t get the Stripe WisePAD 3 reader to show up in discovery. I can connect Sunmi’s native card reader no problem, but when I switch to the WisePAD 3 it never appears.
My setup:
Android: compileSdk 33 / minSdk 26 / targetSdk 33
Stripe Terminal SDK: 2.23.4
Reader: WisePAD 3 (WPC32, S/N WPC323127003826)
Discovery code (USB):
Callback disconnectCallback = new Callback() {
@Override
public void onSuccess() {
String connectLocationId = Define.STRIPE_LOCATION_ID;
DiscoveryConfiguration config = new DiscoveryConfiguration(30,DiscoveryMethod.USB,false,connectLocationId);
viewModel.discoveryTask = Terminal.getInstance().discoverReaders(config, new DiscoveryListener() {
@Override
public void onUpdateDiscoveredReaders(@NonNull List readers) {
if (readers.size() > 0) {
cancelDiscovery();
connectUsbReader(readers.get(0));
}
}
}, new Callback() {
@Override
public void onSuccess() {
viewModel.discoveryTask = null;
}
@Override
public void onFailure(@NotNull TerminalException e) {
showErrorMessage("Discovery failed: " + e.getErrorMessage());
}
});
}
@Override
public void onFailure(@NotNull TerminalException e) {
showErrorMessage("Failed to disconnect reader: " + e.getErrorMessage());
}
};
Terminal.getInstance().disconnectReader(disconnectCallback);
Questions for the community:
-
Has anyone integrated WisePAD 3 on a Sunmi V2 (or similar industrial Android device)?
-
Are extra Android permissions or USB host flags required?
-
Any hidden config steps for locating readers on non-standard Android builds?
-
Suggestions for troubleshooting deeper (e.g., enabling ADB logs on the reader)?
Appreciate any pointers or sample code that’s worked for you!
Thanks.