A Python client to control and data ports of the PandABlocks TCP server
Project description
A Python client to control and data ports of the PandABlocks TCP server.
PyPI |
pip install pandablocks |
Source code |
|
Documentation |
https://pandablocks.github.io/PandABlocks-client/master/index.html |
TODO - Test 0.1.4
Command line tool features an interactive console, load/save control, and HDF5 writing:
$ pip install pandablocks
$ pandablocks control <panda-hostname>
< PCAP. # Hit TAB key...
PCAP.ACTIVE PCAP.BITS1 PCAP.BITS3 PCAP.GATE PCAP.SAMPLES PCAP.TRIG PCAP.TS_END PCAP.TS_TRIG
PCAP.BITS0 PCAP.BITS2 PCAP.ENABLE PCAP.HEALTH PCAP.SHIFT_SUM PCAP.TRIG_EDGE PCAP.TS_START
< PCAP.ACTIVE?
OK =1
$ pandablocks hdf <panda-hostname> /tmp/panda-%d.h5
INFO:Opened '/tmp/panda-1.h5' with 60 byte samples stored in 11 datasets
INFO:Closed '/tmp/panda-1.h5' after writing 50000000 samples. End reason is 'Disarmed'
Library features a Sans-IO core with both asyncio and blocking wrappers:
from pandablocks.blocking import BlockingClient
from pandablocks.commands import Get
with BlockingClient("hostname-or-ip") as client:
# Commands sent to Control port
idn = client.send(Get("*IDN"))
print(f"Hello {idn}")
for data in client.data():
# Data captured from Data port
print(f"I got some PCAP data {data}")
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
pandablocks-0.1.5.tar.gz
(18.4 kB
view hashes)
Built Distribution
Close
Hashes for pandablocks-0.1.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | edfedcadb9f1f9da94e3108614aec6c2e62f5f77a72d4d8e80feddd0a727062c |
|
MD5 | ff78dc2f8ddb78c0062384a7bdb107dd |
|
BLAKE2b-256 | da5962fe6b7bec394df464655376f4573b832d5acfbedcf6f628ec1bfd7f0bc1 |