Pre-release
This release is a pre-release and may not be stable for production use.
AmfiTrack extensions for the Amfiprot package.
Installation
Install (or update) with pip:
pip install -U amfiprot-amfitrack
Usage example
Instead of creating a generic amfiprot.Device, create an amfitrack.Device to get access to AmfiTrack specific functionality and payload interpretation:
import amfiprot
import amfiprot_amfitrack as amfitrack
VENDOR_ID = 0xC17
PRODUCT_ID_SENSOR = 0xD12
PRODUCT_ID_SOURCE = 0xD01
if __name__ == "__main__":
conn = None
try:
conn = amfiprot.USBConnection(VENDOR_ID, PRODUCT_ID_SENSOR)
except:
try:
conn = amfiprot.USBConnection(VENDOR_ID, PRODUCT_ID_SOURCE)
except:
print("No Amfitrack device found")
exit()
nodes = conn.find_nodes()
Devs = []
print(f"Found {len(nodes)} node(s).")
for node in nodes:
print(f"[{node.tx_id}] {node.name}")
Devs.append(amfitrack.Device(node))
conn.start()
while True:
for idx, Dev in enumerate(Devs):
if Dev.packet_available():
packet = Dev.get_packet()
if type(packet.payload) == amfitrack.payload.EmfImuFrameIdPayload:
# Sensor measurement package
payload: amfitrack.payload.EmfImuFrameIdPayload = packet.payload
print(payload.emf) # emf contains position and orientation
elif type(packet.payload) == amfitrack.payload.SourceMeasurementPayload:
# Source measurement package
payload: amfitrack.payload.SourceMeasurementPayload = packet.payload
print("Source current:" + str(payload.current))
elif type(packet.payload) == amfitrack.payload.SourceCalibrationPayload:
# Source calibration package (sent at 5Hz)
payload: amfitrack.payload.SourceCalibrationPayload = packet.payload
print("Source frequency:" + str(payload.frequency))
else:
print(packet)
Metadata
Release files for amfiprot-amfitrack 0.0.1a15
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| amfiprot_amfitrack-0.0.1a15.tar.gz | 7.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| amfiprot_amfitrack-0.0.1a15-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.7 kB
Release files / amfiprot_amfitrack-0.0.1a15.tar.gz
| Download URL | amfiprot_amfitrack-0.0.1a15.tar.gz |
|---|---|
| Size | 7.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bc006373646e4f56fe6356f9decda8d4cbad6e5f6bdf809ada949ee62267d4ed
|
|
BLAKE2b-256 checksum How to use checksums |
f76487ada58ffdc95c6cb5e5a2b8a45bda7f7f22a5d9d2f70786f2747b19bb84
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.1
|
Release files / amfiprot_amfitrack-0.0.1a15-py3-none-any.whl
| Download URL | amfiprot_amfitrack-0.0.1a15-py3-none-any.whl |
|---|---|
| Size | 7.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1fb125526f8ed9acfd22f6ce3daa66e313c353c9ae699526eb133ac91af9d627
|
|
BLAKE2b-256 checksum How to use checksums |
16745a8115993da073aaf7e49ee65bf1a65c66774974691266bc16b6a807bc1e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.13.1
|