libusb, pyusb and python-escpos on a windows machine










1














I am trying to work with Epson POS TM-82 printer on windows 7 (64 bit). I have installed the printer's driver. I have python 2.7.15 (64 bit) installed. To work with python I am using this package, python-escpos.



After I have installed python-escpos, and try to run as documented, I am getting an error:



from escpos.printer import Usb
Usb(0x04b8, 0x0e11)



usb.core.NoBackendError: No backend available





  1. After some more digging, I found this wiki, according to this I need to Use the most recent version of Zadig, an Automated Driver Installer GUI application for WinUSB, libusb-win32 and libusbK.



    So, I downloaded Zadig; from the drop-down menu selected TM-82, and chose WinUSB to replace the driver and installed the driver succesfully.



    After that again I ran the same python-escpos documented command from above, and got the same error:




    usb.core.NoBackendError: No backend available





  2. After some more research I found this answer on stackoverflow. So following the answer, I downloaded the libusb zip file, and copied libusb-1.0.20_2MS64dlllibusb-1.0.lib to my C:WindowsSystem32. And finally copied libusb-1.0.20_2MS64staticlibusb-1.0.lib to C:Python27libs



    After that again I ran the same python-escpos documented command from above, and this time I got a different error:




    NotImplementedError: Operation not supported or unimplemented on this platform




What am I missing here? Could you please help me. Thank you.










share|improve this question




























    1














    I am trying to work with Epson POS TM-82 printer on windows 7 (64 bit). I have installed the printer's driver. I have python 2.7.15 (64 bit) installed. To work with python I am using this package, python-escpos.



    After I have installed python-escpos, and try to run as documented, I am getting an error:



    from escpos.printer import Usb
    Usb(0x04b8, 0x0e11)



    usb.core.NoBackendError: No backend available





    1. After some more digging, I found this wiki, according to this I need to Use the most recent version of Zadig, an Automated Driver Installer GUI application for WinUSB, libusb-win32 and libusbK.



      So, I downloaded Zadig; from the drop-down menu selected TM-82, and chose WinUSB to replace the driver and installed the driver succesfully.



      After that again I ran the same python-escpos documented command from above, and got the same error:




      usb.core.NoBackendError: No backend available





    2. After some more research I found this answer on stackoverflow. So following the answer, I downloaded the libusb zip file, and copied libusb-1.0.20_2MS64dlllibusb-1.0.lib to my C:WindowsSystem32. And finally copied libusb-1.0.20_2MS64staticlibusb-1.0.lib to C:Python27libs



      After that again I ran the same python-escpos documented command from above, and this time I got a different error:




      NotImplementedError: Operation not supported or unimplemented on this platform




    What am I missing here? Could you please help me. Thank you.










    share|improve this question


























      1












      1








      1







      I am trying to work with Epson POS TM-82 printer on windows 7 (64 bit). I have installed the printer's driver. I have python 2.7.15 (64 bit) installed. To work with python I am using this package, python-escpos.



      After I have installed python-escpos, and try to run as documented, I am getting an error:



      from escpos.printer import Usb
      Usb(0x04b8, 0x0e11)



      usb.core.NoBackendError: No backend available





      1. After some more digging, I found this wiki, according to this I need to Use the most recent version of Zadig, an Automated Driver Installer GUI application for WinUSB, libusb-win32 and libusbK.



        So, I downloaded Zadig; from the drop-down menu selected TM-82, and chose WinUSB to replace the driver and installed the driver succesfully.



        After that again I ran the same python-escpos documented command from above, and got the same error:




        usb.core.NoBackendError: No backend available





      2. After some more research I found this answer on stackoverflow. So following the answer, I downloaded the libusb zip file, and copied libusb-1.0.20_2MS64dlllibusb-1.0.lib to my C:WindowsSystem32. And finally copied libusb-1.0.20_2MS64staticlibusb-1.0.lib to C:Python27libs



        After that again I ran the same python-escpos documented command from above, and this time I got a different error:




        NotImplementedError: Operation not supported or unimplemented on this platform




      What am I missing here? Could you please help me. Thank you.










      share|improve this question















      I am trying to work with Epson POS TM-82 printer on windows 7 (64 bit). I have installed the printer's driver. I have python 2.7.15 (64 bit) installed. To work with python I am using this package, python-escpos.



      After I have installed python-escpos, and try to run as documented, I am getting an error:



      from escpos.printer import Usb
      Usb(0x04b8, 0x0e11)



      usb.core.NoBackendError: No backend available





      1. After some more digging, I found this wiki, according to this I need to Use the most recent version of Zadig, an Automated Driver Installer GUI application for WinUSB, libusb-win32 and libusbK.



        So, I downloaded Zadig; from the drop-down menu selected TM-82, and chose WinUSB to replace the driver and installed the driver succesfully.



        After that again I ran the same python-escpos documented command from above, and got the same error:




        usb.core.NoBackendError: No backend available





      2. After some more research I found this answer on stackoverflow. So following the answer, I downloaded the libusb zip file, and copied libusb-1.0.20_2MS64dlllibusb-1.0.lib to my C:WindowsSystem32. And finally copied libusb-1.0.20_2MS64staticlibusb-1.0.lib to C:Python27libs



        After that again I ran the same python-escpos documented command from above, and this time I got a different error:




        NotImplementedError: Operation not supported or unimplemented on this platform




      What am I missing here? Could you please help me. Thank you.







      python libusb pyusb escpos escp






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 12 at 17:45

























      asked Nov 12 at 11:44









      Kakar

      1,64422948




      1,64422948






















          1 Answer
          1






          active

          oldest

          votes


















          0














          Answering my own question here. So, it turns out, the problem was with python-escpos library. I had to remove the following from the printer.py (python module of that library):



          try:
          check_driver = self.device.is_kernel_driver_active(0)
          except NotImplementedError:
          pass
          if check_driver is None or check_driver:
          try:
          self.device.detach_kernel_driver(0)
          except usb.core.USBError as e:
          if check_driver is not None:
          print("Could not detatch kernel driver: 0".format(str(e)))


          The details can be found on my blog on Medium.






          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%2f53261467%2flibusb-pyusb-and-python-escpos-on-a-windows-machine%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            Answering my own question here. So, it turns out, the problem was with python-escpos library. I had to remove the following from the printer.py (python module of that library):



            try:
            check_driver = self.device.is_kernel_driver_active(0)
            except NotImplementedError:
            pass
            if check_driver is None or check_driver:
            try:
            self.device.detach_kernel_driver(0)
            except usb.core.USBError as e:
            if check_driver is not None:
            print("Could not detatch kernel driver: 0".format(str(e)))


            The details can be found on my blog on Medium.






            share|improve this answer



























              0














              Answering my own question here. So, it turns out, the problem was with python-escpos library. I had to remove the following from the printer.py (python module of that library):



              try:
              check_driver = self.device.is_kernel_driver_active(0)
              except NotImplementedError:
              pass
              if check_driver is None or check_driver:
              try:
              self.device.detach_kernel_driver(0)
              except usb.core.USBError as e:
              if check_driver is not None:
              print("Could not detatch kernel driver: 0".format(str(e)))


              The details can be found on my blog on Medium.






              share|improve this answer

























                0












                0








                0






                Answering my own question here. So, it turns out, the problem was with python-escpos library. I had to remove the following from the printer.py (python module of that library):



                try:
                check_driver = self.device.is_kernel_driver_active(0)
                except NotImplementedError:
                pass
                if check_driver is None or check_driver:
                try:
                self.device.detach_kernel_driver(0)
                except usb.core.USBError as e:
                if check_driver is not None:
                print("Could not detatch kernel driver: 0".format(str(e)))


                The details can be found on my blog on Medium.






                share|improve this answer














                Answering my own question here. So, it turns out, the problem was with python-escpos library. I had to remove the following from the printer.py (python module of that library):



                try:
                check_driver = self.device.is_kernel_driver_active(0)
                except NotImplementedError:
                pass
                if check_driver is None or check_driver:
                try:
                self.device.detach_kernel_driver(0)
                except usb.core.USBError as e:
                if check_driver is not None:
                print("Could not detatch kernel driver: 0".format(str(e)))


                The details can be found on my blog on Medium.







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Nov 21 at 5:28

























                answered Nov 21 at 5:20









                Kakar

                1,64422948




                1,64422948



























                    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.





                    Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


                    Please pay close attention to the following guidance:


                    • 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%2f53261467%2flibusb-pyusb-and-python-escpos-on-a-windows-machine%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







                    這個網誌中的熱門文章

                    How to read a connectionString WITH PROVIDER in .NET Core?

                    In R, how to develop a multiplot heatmap.2 figure showing key labels successfully

                    Museum of Modern and Contemporary Art of Trento and Rovereto