Google Chrome WebUSB API requestDevices() doesn't see barcode scanner Voyager 1450g












0















I'm trying to access a Voyager 1450g barcode scanner that is connected via USB, but navigator.usb.requestDevices() doesn't see this device.






let button = document.getElementById('request-device');
button.addEventListener('click', async () => {
let device;
try {
device = await navigator.usb.requestDevice({ filters: [{}]});
} catch (err) {
// No device was selected.
console.log('Error:', err);
}





Output of the navigator.usb.requestDevices()Settings in Device Manager
I will be grateful for any ideas.










share|improve this question



























    0















    I'm trying to access a Voyager 1450g barcode scanner that is connected via USB, but navigator.usb.requestDevices() doesn't see this device.






    let button = document.getElementById('request-device');
    button.addEventListener('click', async () => {
    let device;
    try {
    device = await navigator.usb.requestDevice({ filters: [{}]});
    } catch (err) {
    // No device was selected.
    console.log('Error:', err);
    }





    Output of the navigator.usb.requestDevices()Settings in Device Manager
    I will be grateful for any ideas.










    share|improve this question

























      0












      0








      0








      I'm trying to access a Voyager 1450g barcode scanner that is connected via USB, but navigator.usb.requestDevices() doesn't see this device.






      let button = document.getElementById('request-device');
      button.addEventListener('click', async () => {
      let device;
      try {
      device = await navigator.usb.requestDevice({ filters: [{}]});
      } catch (err) {
      // No device was selected.
      console.log('Error:', err);
      }





      Output of the navigator.usb.requestDevices()Settings in Device Manager
      I will be grateful for any ideas.










      share|improve this question














      I'm trying to access a Voyager 1450g barcode scanner that is connected via USB, but navigator.usb.requestDevices() doesn't see this device.






      let button = document.getElementById('request-device');
      button.addEventListener('click', async () => {
      let device;
      try {
      device = await navigator.usb.requestDevice({ filters: [{}]});
      } catch (err) {
      // No device was selected.
      console.log('Error:', err);
      }





      Output of the navigator.usb.requestDevices()Settings in Device Manager
      I will be grateful for any ideas.






      let button = document.getElementById('request-device');
      button.addEventListener('click', async () => {
      let device;
      try {
      device = await navigator.usb.requestDevice({ filters: [{}]});
      } catch (err) {
      // No device was selected.
      console.log('Error:', err);
      }





      let button = document.getElementById('request-device');
      button.addEventListener('click', async () => {
      let device;
      try {
      device = await navigator.usb.requestDevice({ filters: [{}]});
      } catch (err) {
      // No device was selected.
      console.log('Error:', err);
      }






      webusb






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked May 16 '18 at 14:06









      AlexanderAlexander

      91117




      91117
























          2 Answers
          2






          active

          oldest

          votes


















          1














          My guess is that the virtual serial port driver (that mounts it as COM3) has captured the device. Maybe uninstall the driver and try again?






          share|improve this answer
























          • I did it several times. Unfortunately, it didn't help.

            – Alexander
            May 18 '18 at 12:33






          • 2





            Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

            – Reilly Grant
            May 21 '18 at 17:49



















          0














          I have a Honeywell Voyagar 1202g barcode scanner that I managed to get working with Mac and Windows.



          First you will need to change the barcode scanners interface to CDC-ACM, either by using EZConfig (Honeywell software) or by scanning a barcode that you can find on their website.



          Steps to get it working on Windows:




          1. Install Zadig

          2. Install HSM USB Serial Driver Package

          3. Find your device in Windows settings and update USB Composite Device driver (Let me pick from a list of drivers, uncheck compitable drivers) to use Honeywell->WinFlash Intermec Device (without this step Zadig could not find the correct interface).

          4. Using Zadig you should now see your device, update driver to libusbk

          5. Restart PC (important)


          Code:



          const decoder = new TextDecoder();

          const startDevice = async () => {
          try {
          // you should be able to discover your PRODUCT_ID and VENDOR_ID from
          // chrome://device-log
          const device = await navigator.usb.requestDevice({
          filters: {
          productId: PRODUCT_ID,
          vendorId: VENDOR_ID
          }
          });

          // log device data to see available configurations and interfaces
          await device.open();
          // only 1 configuration was available for me
          await device.selectConfiguration(1);
          // interface 1 was bulk transfer
          await device.claimInterface(1);

          readLoop(device);
          } catch (error) {
          console.error(error);
          }
          }

          const readLoop = async (device) => {
          try {
          const result = await device.transferIn(1, 64);
          // this is your incoming data
          const data = decoder.decode(result.data).trim();

          readLoop(device);
          } catch (error) {
          console.error(error);
          }
          }





          share|improve this answer

























            Your Answer






            StackExchange.ifUsing("editor", function () {
            StackExchange.using("externalEditor", function () {
            StackExchange.using("snippets", function () {
            StackExchange.snippets.init();
            });
            });
            }, "code-snippets");

            StackExchange.ready(function() {
            var channelOptions = {
            tags: "".split(" "),
            id: "1"
            };
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function() {
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled) {
            StackExchange.using("snippets", function() {
            createEditor();
            });
            }
            else {
            createEditor();
            }
            });

            function createEditor() {
            StackExchange.prepareEditor({
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader: {
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            },
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            });


            }
            });














            draft saved

            draft discarded


















            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f50373111%2fgoogle-chrome-webusb-api-requestdevices-doesnt-see-barcode-scanner-voyager-14%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown

























            2 Answers
            2






            active

            oldest

            votes








            2 Answers
            2






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            1














            My guess is that the virtual serial port driver (that mounts it as COM3) has captured the device. Maybe uninstall the driver and try again?






            share|improve this answer
























            • I did it several times. Unfortunately, it didn't help.

              – Alexander
              May 18 '18 at 12:33






            • 2





              Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

              – Reilly Grant
              May 21 '18 at 17:49
















            1














            My guess is that the virtual serial port driver (that mounts it as COM3) has captured the device. Maybe uninstall the driver and try again?






            share|improve this answer
























            • I did it several times. Unfortunately, it didn't help.

              – Alexander
              May 18 '18 at 12:33






            • 2





              Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

              – Reilly Grant
              May 21 '18 at 17:49














            1












            1








            1







            My guess is that the virtual serial port driver (that mounts it as COM3) has captured the device. Maybe uninstall the driver and try again?






            share|improve this answer













            My guess is that the virtual serial port driver (that mounts it as COM3) has captured the device. Maybe uninstall the driver and try again?







            share|improve this answer












            share|improve this answer



            share|improve this answer










            answered May 17 '18 at 10:18









            GerritGerrit

            550513




            550513













            • I did it several times. Unfortunately, it didn't help.

              – Alexander
              May 18 '18 at 12:33






            • 2





              Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

              – Reilly Grant
              May 21 '18 at 17:49



















            • I did it several times. Unfortunately, it didn't help.

              – Alexander
              May 18 '18 at 12:33






            • 2





              Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

              – Reilly Grant
              May 21 '18 at 17:49

















            I did it several times. Unfortunately, it didn't help.

            – Alexander
            May 18 '18 at 12:33





            I did it several times. Unfortunately, it didn't help.

            – Alexander
            May 18 '18 at 12:33




            2




            2





            Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

            – Reilly Grant
            May 21 '18 at 17:49





            Not only must you uninstall the virtual serial port driver, you also have to get Windows to load the WinUSB driver instead. The Zadig tool is designed to make this easy.

            – Reilly Grant
            May 21 '18 at 17:49













            0














            I have a Honeywell Voyagar 1202g barcode scanner that I managed to get working with Mac and Windows.



            First you will need to change the barcode scanners interface to CDC-ACM, either by using EZConfig (Honeywell software) or by scanning a barcode that you can find on their website.



            Steps to get it working on Windows:




            1. Install Zadig

            2. Install HSM USB Serial Driver Package

            3. Find your device in Windows settings and update USB Composite Device driver (Let me pick from a list of drivers, uncheck compitable drivers) to use Honeywell->WinFlash Intermec Device (without this step Zadig could not find the correct interface).

            4. Using Zadig you should now see your device, update driver to libusbk

            5. Restart PC (important)


            Code:



            const decoder = new TextDecoder();

            const startDevice = async () => {
            try {
            // you should be able to discover your PRODUCT_ID and VENDOR_ID from
            // chrome://device-log
            const device = await navigator.usb.requestDevice({
            filters: {
            productId: PRODUCT_ID,
            vendorId: VENDOR_ID
            }
            });

            // log device data to see available configurations and interfaces
            await device.open();
            // only 1 configuration was available for me
            await device.selectConfiguration(1);
            // interface 1 was bulk transfer
            await device.claimInterface(1);

            readLoop(device);
            } catch (error) {
            console.error(error);
            }
            }

            const readLoop = async (device) => {
            try {
            const result = await device.transferIn(1, 64);
            // this is your incoming data
            const data = decoder.decode(result.data).trim();

            readLoop(device);
            } catch (error) {
            console.error(error);
            }
            }





            share|improve this answer






























              0














              I have a Honeywell Voyagar 1202g barcode scanner that I managed to get working with Mac and Windows.



              First you will need to change the barcode scanners interface to CDC-ACM, either by using EZConfig (Honeywell software) or by scanning a barcode that you can find on their website.



              Steps to get it working on Windows:




              1. Install Zadig

              2. Install HSM USB Serial Driver Package

              3. Find your device in Windows settings and update USB Composite Device driver (Let me pick from a list of drivers, uncheck compitable drivers) to use Honeywell->WinFlash Intermec Device (without this step Zadig could not find the correct interface).

              4. Using Zadig you should now see your device, update driver to libusbk

              5. Restart PC (important)


              Code:



              const decoder = new TextDecoder();

              const startDevice = async () => {
              try {
              // you should be able to discover your PRODUCT_ID and VENDOR_ID from
              // chrome://device-log
              const device = await navigator.usb.requestDevice({
              filters: {
              productId: PRODUCT_ID,
              vendorId: VENDOR_ID
              }
              });

              // log device data to see available configurations and interfaces
              await device.open();
              // only 1 configuration was available for me
              await device.selectConfiguration(1);
              // interface 1 was bulk transfer
              await device.claimInterface(1);

              readLoop(device);
              } catch (error) {
              console.error(error);
              }
              }

              const readLoop = async (device) => {
              try {
              const result = await device.transferIn(1, 64);
              // this is your incoming data
              const data = decoder.decode(result.data).trim();

              readLoop(device);
              } catch (error) {
              console.error(error);
              }
              }





              share|improve this answer




























                0












                0








                0







                I have a Honeywell Voyagar 1202g barcode scanner that I managed to get working with Mac and Windows.



                First you will need to change the barcode scanners interface to CDC-ACM, either by using EZConfig (Honeywell software) or by scanning a barcode that you can find on their website.



                Steps to get it working on Windows:




                1. Install Zadig

                2. Install HSM USB Serial Driver Package

                3. Find your device in Windows settings and update USB Composite Device driver (Let me pick from a list of drivers, uncheck compitable drivers) to use Honeywell->WinFlash Intermec Device (without this step Zadig could not find the correct interface).

                4. Using Zadig you should now see your device, update driver to libusbk

                5. Restart PC (important)


                Code:



                const decoder = new TextDecoder();

                const startDevice = async () => {
                try {
                // you should be able to discover your PRODUCT_ID and VENDOR_ID from
                // chrome://device-log
                const device = await navigator.usb.requestDevice({
                filters: {
                productId: PRODUCT_ID,
                vendorId: VENDOR_ID
                }
                });

                // log device data to see available configurations and interfaces
                await device.open();
                // only 1 configuration was available for me
                await device.selectConfiguration(1);
                // interface 1 was bulk transfer
                await device.claimInterface(1);

                readLoop(device);
                } catch (error) {
                console.error(error);
                }
                }

                const readLoop = async (device) => {
                try {
                const result = await device.transferIn(1, 64);
                // this is your incoming data
                const data = decoder.decode(result.data).trim();

                readLoop(device);
                } catch (error) {
                console.error(error);
                }
                }





                share|improve this answer















                I have a Honeywell Voyagar 1202g barcode scanner that I managed to get working with Mac and Windows.



                First you will need to change the barcode scanners interface to CDC-ACM, either by using EZConfig (Honeywell software) or by scanning a barcode that you can find on their website.



                Steps to get it working on Windows:




                1. Install Zadig

                2. Install HSM USB Serial Driver Package

                3. Find your device in Windows settings and update USB Composite Device driver (Let me pick from a list of drivers, uncheck compitable drivers) to use Honeywell->WinFlash Intermec Device (without this step Zadig could not find the correct interface).

                4. Using Zadig you should now see your device, update driver to libusbk

                5. Restart PC (important)


                Code:



                const decoder = new TextDecoder();

                const startDevice = async () => {
                try {
                // you should be able to discover your PRODUCT_ID and VENDOR_ID from
                // chrome://device-log
                const device = await navigator.usb.requestDevice({
                filters: {
                productId: PRODUCT_ID,
                vendorId: VENDOR_ID
                }
                });

                // log device data to see available configurations and interfaces
                await device.open();
                // only 1 configuration was available for me
                await device.selectConfiguration(1);
                // interface 1 was bulk transfer
                await device.claimInterface(1);

                readLoop(device);
                } catch (error) {
                console.error(error);
                }
                }

                const readLoop = async (device) => {
                try {
                const result = await device.transferIn(1, 64);
                // this is your incoming data
                const data = decoder.decode(result.data).trim();

                readLoop(device);
                } catch (error) {
                console.error(error);
                }
                }






                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 21 '18 at 17:48

























                answered Nov 21 '18 at 17:09









                2Steaks2Steaks

                466




                466






























                    draft saved

                    draft discarded




















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid



                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.


                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function () {
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f50373111%2fgoogle-chrome-webusb-api-requestdevices-doesnt-see-barcode-scanner-voyager-14%23new-answer', 'question_page');
                    }
                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    MongoDB - Not Authorized To Execute Command

                    How to fix TextFormField cause rebuild widget in Flutter

                    Npm cannot find a required file even through it is in the searched directory