Control the sound of an NFC reader












3















I am using pynfc to read in NFC tags. I have an ACR 122U USB NFC reader/writes unit. This unit is capable to make a sound when it reads in a tag, however i was unable to find anything in the pynfc docs about controlling it. Is there a way with either pynfc, or some other python, or linux OS to invoke the sound of an NFC reader?










share|improve this question























  • The API documentation for that device lists a couple of commands to control the "buzzer" (sections 6.2 and 6.7 of said docs). Have you tried sending those commands?

    – Jonah Bishop
    Nov 22 '18 at 15:49











  • @JonahBishop Thanks, it seems like a good start, but i dont know how can i control the reader this way.

    – Gábor Erdős
    Nov 22 '18 at 16:25
















3















I am using pynfc to read in NFC tags. I have an ACR 122U USB NFC reader/writes unit. This unit is capable to make a sound when it reads in a tag, however i was unable to find anything in the pynfc docs about controlling it. Is there a way with either pynfc, or some other python, or linux OS to invoke the sound of an NFC reader?










share|improve this question























  • The API documentation for that device lists a couple of commands to control the "buzzer" (sections 6.2 and 6.7 of said docs). Have you tried sending those commands?

    – Jonah Bishop
    Nov 22 '18 at 15:49











  • @JonahBishop Thanks, it seems like a good start, but i dont know how can i control the reader this way.

    – Gábor Erdős
    Nov 22 '18 at 16:25














3












3








3








I am using pynfc to read in NFC tags. I have an ACR 122U USB NFC reader/writes unit. This unit is capable to make a sound when it reads in a tag, however i was unable to find anything in the pynfc docs about controlling it. Is there a way with either pynfc, or some other python, or linux OS to invoke the sound of an NFC reader?










share|improve this question














I am using pynfc to read in NFC tags. I have an ACR 122U USB NFC reader/writes unit. This unit is capable to make a sound when it reads in a tag, however i was unable to find anything in the pynfc docs about controlling it. Is there a way with either pynfc, or some other python, or linux OS to invoke the sound of an NFC reader?







python nfc






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 19 '18 at 17:33









Gábor ErdősGábor Erdős

2,2461930




2,2461930













  • The API documentation for that device lists a couple of commands to control the "buzzer" (sections 6.2 and 6.7 of said docs). Have you tried sending those commands?

    – Jonah Bishop
    Nov 22 '18 at 15:49











  • @JonahBishop Thanks, it seems like a good start, but i dont know how can i control the reader this way.

    – Gábor Erdős
    Nov 22 '18 at 16:25



















  • The API documentation for that device lists a couple of commands to control the "buzzer" (sections 6.2 and 6.7 of said docs). Have you tried sending those commands?

    – Jonah Bishop
    Nov 22 '18 at 15:49











  • @JonahBishop Thanks, it seems like a good start, but i dont know how can i control the reader this way.

    – Gábor Erdős
    Nov 22 '18 at 16:25

















The API documentation for that device lists a couple of commands to control the "buzzer" (sections 6.2 and 6.7 of said docs). Have you tried sending those commands?

– Jonah Bishop
Nov 22 '18 at 15:49





The API documentation for that device lists a couple of commands to control the "buzzer" (sections 6.2 and 6.7 of said docs). Have you tried sending those commands?

– Jonah Bishop
Nov 22 '18 at 15:49













@JonahBishop Thanks, it seems like a good start, but i dont know how can i control the reader this way.

– Gábor Erdős
Nov 22 '18 at 16:25





@JonahBishop Thanks, it seems like a good start, but i dont know how can i control the reader this way.

– Gábor Erdős
Nov 22 '18 at 16:25












2 Answers
2






active

oldest

votes


















1





+100









Here is an example to buzz the buzzer:
Add the following code to pynfc/__init__.py at line 75.(above def poll at same indent)



def buzz(self):
ba = (c_ubyte * 9)(*[0xFF,0x00,0x40,0x00,0x4C,0x10,0x00,0x01,0x01])
result = nfc.nfc_initiator_transceive_bytes.argtypes[3]._type_()
nfc.nfc_initiator_transceive_bytes(self.pdevice, ctypes.byref(ba), len(ba), ctypre.byref(result),2,1000)


Call nfc.buzz() from your script.



I do not have a device to test the code. Also note that you cannot poll and buzz at the same time.






share|improve this answer































    0














    For nfcpy i found out that if the on-connect function returns True the buzzer and the light will go off if the reader is capable.



    #!/usr/bin/python
    import nfc
    import time
    import datetime

    def on_connect(tag):
    print('Last read: {}'.format(datetime.datetime.now()))
    return True

    while True:
    with nfc.ContactlessFrontend('usb') as clf:
    clf.connect(rdwr={'on-connect': on_connect, 'beep-on-connect': True})
    time.sleep(1)





    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%2f53379897%2fcontrol-the-sound-of-an-nfc-reader%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





      +100









      Here is an example to buzz the buzzer:
      Add the following code to pynfc/__init__.py at line 75.(above def poll at same indent)



      def buzz(self):
      ba = (c_ubyte * 9)(*[0xFF,0x00,0x40,0x00,0x4C,0x10,0x00,0x01,0x01])
      result = nfc.nfc_initiator_transceive_bytes.argtypes[3]._type_()
      nfc.nfc_initiator_transceive_bytes(self.pdevice, ctypes.byref(ba), len(ba), ctypre.byref(result),2,1000)


      Call nfc.buzz() from your script.



      I do not have a device to test the code. Also note that you cannot poll and buzz at the same time.






      share|improve this answer




























        1





        +100









        Here is an example to buzz the buzzer:
        Add the following code to pynfc/__init__.py at line 75.(above def poll at same indent)



        def buzz(self):
        ba = (c_ubyte * 9)(*[0xFF,0x00,0x40,0x00,0x4C,0x10,0x00,0x01,0x01])
        result = nfc.nfc_initiator_transceive_bytes.argtypes[3]._type_()
        nfc.nfc_initiator_transceive_bytes(self.pdevice, ctypes.byref(ba), len(ba), ctypre.byref(result),2,1000)


        Call nfc.buzz() from your script.



        I do not have a device to test the code. Also note that you cannot poll and buzz at the same time.






        share|improve this answer


























          1





          +100







          1





          +100



          1




          +100





          Here is an example to buzz the buzzer:
          Add the following code to pynfc/__init__.py at line 75.(above def poll at same indent)



          def buzz(self):
          ba = (c_ubyte * 9)(*[0xFF,0x00,0x40,0x00,0x4C,0x10,0x00,0x01,0x01])
          result = nfc.nfc_initiator_transceive_bytes.argtypes[3]._type_()
          nfc.nfc_initiator_transceive_bytes(self.pdevice, ctypes.byref(ba), len(ba), ctypre.byref(result),2,1000)


          Call nfc.buzz() from your script.



          I do not have a device to test the code. Also note that you cannot poll and buzz at the same time.






          share|improve this answer













          Here is an example to buzz the buzzer:
          Add the following code to pynfc/__init__.py at line 75.(above def poll at same indent)



          def buzz(self):
          ba = (c_ubyte * 9)(*[0xFF,0x00,0x40,0x00,0x4C,0x10,0x00,0x01,0x01])
          result = nfc.nfc_initiator_transceive_bytes.argtypes[3]._type_()
          nfc.nfc_initiator_transceive_bytes(self.pdevice, ctypes.byref(ba), len(ba), ctypre.byref(result),2,1000)


          Call nfc.buzz() from your script.



          I do not have a device to test the code. Also note that you cannot poll and buzz at the same time.







          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Nov 27 '18 at 2:15









          StromStrom

          2,018119




          2,018119

























              0














              For nfcpy i found out that if the on-connect function returns True the buzzer and the light will go off if the reader is capable.



              #!/usr/bin/python
              import nfc
              import time
              import datetime

              def on_connect(tag):
              print('Last read: {}'.format(datetime.datetime.now()))
              return True

              while True:
              with nfc.ContactlessFrontend('usb') as clf:
              clf.connect(rdwr={'on-connect': on_connect, 'beep-on-connect': True})
              time.sleep(1)





              share|improve this answer




























                0














                For nfcpy i found out that if the on-connect function returns True the buzzer and the light will go off if the reader is capable.



                #!/usr/bin/python
                import nfc
                import time
                import datetime

                def on_connect(tag):
                print('Last read: {}'.format(datetime.datetime.now()))
                return True

                while True:
                with nfc.ContactlessFrontend('usb') as clf:
                clf.connect(rdwr={'on-connect': on_connect, 'beep-on-connect': True})
                time.sleep(1)





                share|improve this answer


























                  0












                  0








                  0







                  For nfcpy i found out that if the on-connect function returns True the buzzer and the light will go off if the reader is capable.



                  #!/usr/bin/python
                  import nfc
                  import time
                  import datetime

                  def on_connect(tag):
                  print('Last read: {}'.format(datetime.datetime.now()))
                  return True

                  while True:
                  with nfc.ContactlessFrontend('usb') as clf:
                  clf.connect(rdwr={'on-connect': on_connect, 'beep-on-connect': True})
                  time.sleep(1)





                  share|improve this answer













                  For nfcpy i found out that if the on-connect function returns True the buzzer and the light will go off if the reader is capable.



                  #!/usr/bin/python
                  import nfc
                  import time
                  import datetime

                  def on_connect(tag):
                  print('Last read: {}'.format(datetime.datetime.now()))
                  return True

                  while True:
                  with nfc.ContactlessFrontend('usb') as clf:
                  clf.connect(rdwr={'on-connect': on_connect, 'beep-on-connect': True})
                  time.sleep(1)






                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered Nov 27 '18 at 13:32









                  Gábor ErdősGábor Erdős

                  2,2461930




                  2,2461930






























                      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%2f53379897%2fcontrol-the-sound-of-an-nfc-reader%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

                      Biblatex bibliography style without URLs when DOI exists (in Overleaf with Zotero bibliography)

                      ComboBox Display Member on multiple fields

                      Is it possible to collect Nectar points via Trainline?