Looping Impinj R420 RFID measurements using sllurp library

264 views Asked by At

I'm using an Impinj Speedway reader R420 that is connected to a S8656PL antenna and to my computer via a switch. I'm trying to make a pyhton program that allows communication with my reader and display tags. To do that, I'm using the following llrp library : https://github.com/sllurp/sllurp/tree/fviard-develop-v2 ; which is not the main branch btw.

But I've got two problems :

  • How to change device settings during runtime?
  • How manually trigger a single measurement that I then can loop?

Because my goal is to make a "sweep" function that can increase a setting step by step automatically during runtime. I've tried the following first example but the connect() function makes a loop of measurements.

# Minimal example; see sllurp/verb/inventory.py for more.
from sllurp import llrp
from sllurp.llrp import LLRPReaderConfig, LLRPReaderClient, LLRP_DEFAULT_PORT
import logging
logging.getLogger().setLevel(logging.INFO)

def tag_report_cb (reader, tag_reports):
    for tag in tag_reports:
        print('tag: %r' % tag)

config = LLRPReaderConfig()
reader = LLRPReaderClient(host, LLRP_DEFAULT_PORT, config)
reader.add_tag_report_callback(tag_report_cb)

reader.connect()
# We are now connected to the reader and inventory is running.

try:
    # Block forever or until a disconnection of the reader
    reader.join(None)
except (KeyboardInterrupt, SystemExit):
    # catch ctrl-C and stop inventory before disconnecting
    reader.disconnect()
0

There are 0 answers