Hello,
Zebra Global Support said this inquiry was beyond their capabilities and asked that I post here. Hopefully someone can help.
We have created a web app that allows our customers to print badges to the Zebra ZD621 via USB. We are using the latest SDK and printing via WebUSB.
The application prints successfully on Mac OS devices. However, our customers are running into issues when attempting to print on Windows 10/11.
We have tried a variety of methods to install/uninstall/reinstall the Zebra drivers including restarting Windows devices. When attempting to print from the web using our app, users get this error. DOMException: Failed to execute ‘open’ on ‘USBDevice’ : Access denied.
The one solution we've found online is not viable for our customer base as it requires downloading a third-party software called Zadig and manually assigning the WebUSB driver to the printer in Windows. We do not want to support or recommend software to our customers that we don't maintain. In addition, the steps required are more technical.
We are looking for a way to unblock our customers from using Zebra printers with our integration. Any steps we could provide our customers using Zebra tools would be greatly appreciated. There is a good sized investment in Zebra printers from our customer base and not being able to print via Windows is a significant challenge.
Thanks so much!
-Danny
3 Replies
Hey Danny, we ran into exactly the same problem. On macOS things worked perfectly, but testing on Windows / Ubuntu gave issues.
Furthermore we observed that on the Windows machine the browser’s WebUSB could successfully connect to other USB devices, so we are pretty sure the browser / OS there doesn't block WebUSB in principle.
A theory we have is that the print system on the Windows machine somehow »claims« the device, thus rendering it unavailable for access by WebUSB in the browser. But I wouldn't know how to analyze this further or fix it.
In case you have more information / experiences, I’d be happy to learn about it as otherwise the WebUSB way seems like a great solution for the problem at hand.
Best
Sven
Thanks for sharing Danny!
We ran into exactly the same situation (works fine on macOS, doesn’t work on Windows / Ubuntu) and couldn’t resolve this so far. Probably also because I am not knowledgable in the Windows world.
Our investigation showed so far that the Windows 11 / Edge combination does successfully show the device and it can also successfully connect to other devices, so it works in principle. Just for the Zebra Printer the call of .open() fails.
A theory we have is that the OS's print system somehow claims the printer, blocking it for access by other applications. Unfortunately I could neither validate that theory yet, nor find out how to fix the problem.
As using WebUSB would be a very convenient way of using the printer without needing to install further software, I’d pretty much like to use that solution.
So in case you find out more or people more familiar with Windows / USB / Printing are reading this, please share!
Best
Sven
Hello,
we already implemented a few applications where we print labels using WebUSB.
WebUSB works fine on macOS, for Windows we need to install the Zadig Tool/Driver (https://zadig.akeo.ie/)
Best
Dustin