Python driver for Zebra FX series RAIN RFID readers via LLRP
Project description
zebra-llrp
Python driver for Zebra FX series RAIN RFID readers via LLRP protocol (sllurp).
Features
- Connect to Zebra FX9600 (and compatible) readers via LLRP (TCP 5084)
- Start/stop inventory with configurable antenna ports, TX power, RF mode, and session
- Real-time tag streaming with callback-based notifications
- Query reader capabilities (model, firmware, antenna count, TX power range, RF modes)
- EPC decoding with double-encoding detection (FX9600 quirk)
- TX power control by index or dBm
Installation
pip install zebra-llrp
Quick Start
from zebra_llrp import ZebraLlrp, ZebraLlrpTagReport
reader = ZebraLlrp()
def on_tag(report: ZebraLlrpTagReport):
print(f"EPC: {report.epc} RSSI: {report.peak_rssi_dbm} dBm")
reader.set_notification_callback(on_tag)
reader.connect("192.168.1.100")
reader.set_tx_power_dbm(25.0)
reader.set_rf_mode(1)
reader.start()
# ... tags arrive via callback ...
reader.stop()
reader.disconnect()
API Reference
ZebraLlrp
| Method | Description |
|---|---|
connect(ip, port) |
Connect to reader via LLRP |
disconnect() |
Stop inventory and disconnect |
is_connected() |
Check connection status |
set_notification_callback(fn) |
Register tag report callback |
get_reader_info() |
Get model, firmware, antenna count, power limits, RF modes |
start() |
Start inventory |
stop() |
Stop inventory |
get_tx_power() / set_tx_power(index) |
Get/set TX power by index |
get_tx_power_dbm() / set_tx_power_dbm(dbm) |
Get/set TX power in dBm |
get_antenna_config() / set_antenna_config(list) |
Get/set active antenna ports |
get_rf_mode() / set_rf_mode(mode) |
Get/set LLRP mode identifier |
get_session() / set_session(n) |
Get/set inventory session (0-3) |
ZebraLlrpTagReport
| Field | Type | Description |
|---|---|---|
epc |
str |
Tag EPC (hex string) |
antenna_port |
int |
Antenna port number |
peak_rssi_dbm |
int |
Peak RSSI in dBm |
last_seen_timestamp |
int |
Last seen timestamp (microseconds UTC) |
tag_seen_count |
int |
Number of times tag was seen |
ZebraLlrpReaderInfo
| Field | Type | Description |
|---|---|---|
manufacturer |
str |
Device manufacturer |
model |
str |
Reader model |
firmware_version |
str |
Firmware version |
antenna_count |
int |
Number of antenna ports |
min_tx_power_dbm |
float |
Minimum TX power |
max_tx_power_dbm |
float |
Maximum TX power |
rf_modes |
list[dict] |
Available RF modes with miller, bdr, tari, pie |
License
zebra-llrp is distributed under the terms of the MIT license.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
zebra_llrp-0.1.0.tar.gz
(10.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file zebra_llrp-0.1.0.tar.gz.
File metadata
- Download URL: zebra_llrp-0.1.0.tar.gz
- Upload date:
- Size: 10.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2b0884692c4c57693b99f44afa3358f1111946be99c232f18a21951a11d81d3
|
|
| MD5 |
4f90d56225005f6645a92309acf525bd
|
|
| BLAKE2b-256 |
e95638e9a9b144caac8a22abe404437adf7a1db364a2d3cc868354a3c11c86aa
|
File details
Details for the file zebra_llrp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: zebra_llrp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 9.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-httpx/0.28.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
775235c28a8722cc1115dc176929c306a115056da2b95474a8bcbf69d9ae5b05
|
|
| MD5 |
e5976afd2b48baed7398599d92208ce6
|
|
| BLAKE2b-256 |
04f4543dd26def8ad8f5f58abf1bbe4dd608c4a529dcd7eba8ee5403f6950356
|