A Python library for ThingSet functionality
Project description
Python ThingSet
To use from Python
To install
pip install python-thingset
To get a value
from python_thingset import ThingSet
with ThingSet(backend="can", can_bus="vcan0") as ts:
response = ts.get(0xF03, 0x01)
print(response) # 0x85 (CONTENT): native_posix
print(f"0x{response.status_code:02X}") # 0x85
print(response.status_string) # CONTENT
print(response.data) # native_posix
for v in response.values:
print(v) # Build/rBoard (0xF03): native_posix
print(v.name, f"0x{v.id:02X}", v.value) # Build/rBoard 0xF03 native_posix
To fetch multiple values
from python_thingset import ThingSet
with ThingSet(backend="can", can_bus="vcan0") as ts:
response = ts.fetch(0xF, [0xF03, 0xF01], 0x01)
print(response) # 0x85 (CONTENT): ['native_posix', '947c30f8']
print(f"0x{response.status_code:02X}") # 0x85
print(response.status_string) # CONTENT
print(response.data) # ['native_posix', '947c30f8']
To fetch all child IDs of a parent
from python_thingset import ThingSet
with ThingSet(backend="can", can_bus="vcan0") as ts:
response = ts.fetch(0xF, [], 0x01)
print(response) # 0x85 (CONTENT): [3841, 3842, 3843, 3845, 3849]
print(f"0x{response.status_code:02X}") # 0x85
print(response.status_string) # CONTENT
print(response.data) # [3841, 3842, 3843, 3845, 3849]
To execute a function
from python_thingset import ThingSet
with ThingSet(backend="can", can_bus="vcan0") as ts:
response = ts.exec(0x20, ["some-text"], 0x1)
print(response) # 0x84 (CHANGED): 0
print(f"0x{response.status_code:02X}") # 0x84
print(response.status_string) # CHANGED
print(response.data) # 0
To update a value
from python_thingset import ThingSet
with ThingSet(backend="can", can_bus="vcan0") as ts:
response = ts.update(0x4F, 1, 0x1, 0x0)
print(response) # 0x84 (CHANGED): 0
print(f"0x{response.status_code:02X}") # 0x84
print(response.status_string) # CHANGED
print(response.data) # 0
To use from terminal
Serial examples
thingset get SomeGroup -p /dev/pts/5
thingset get SomeGroup/rOneValue -p /dev/pts/5
thingset fetch SomeGroup -p /dev/pts/5
thingset fetch SomeGroup rOneValue rAnotherValue -p /dev/pts/5
thingset update sSomePersistedValue 3 -p /dev/pts/5
thingset update AnotherGroup/sPersistedValue 3 -p /dev/pts/5
thingset exec xSomeFunction aFunctionArgument -p /dev/pts/5
thingset exec AnotherGroup/xAnotherFunction -p /dev/pts/5
thingset exec AnotherGroup/xYetAnotherFunction 1.2 3.4 5.6 -p /dev/pts/5
thingset schema -p /dev/pts/5
thingset schema SomeGroup -p /dev/pts/5
thingset schema "" -p /dev/pts/5
CAN examples
thingset get f -c vcan0 -t 2f
thingset get f03 -c vcan0 -t 2f
thingset fetch f -c vcan0 -t 2f
thingset fetch f f01 f02 -c vcan0 -t 2f
thingset update 0 6f 3 -c vcan0 -t 2f
thingset exec 44 aFunctionArgument -c vcan0 -t 2f
thingset exec 55 -c vcan0 -t 2f
thingset exec 66 1.2 2.3 3.55 -c vcan0 -t 2f
thingset schema -c vcan0 -t 2f
thingset schema f -c vcan0 -t 2f
Socket examples
thingset get f -i 127.0.0.1
thingset get f03 -i 127.0.0.1
thingset fetch f -i 127.0.0.1
thingset fetch f f01 f02 -i 127.0.0.1
thingset update 0 6f 3 -i 127.0.0.1
thingset exec 44 aFunctionArgument -i 127.0.0.1
thingset exec 55 -i 127.0.0.1
thingset exec 66 1.2 2.3 3.55 -i 127.0.0.1
thingset schema -i 127.0.0.1
thingset schema f -i 127.0.0.1
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
python_thingset-0.2.3.tar.gz
(20.1 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 python_thingset-0.2.3.tar.gz.
File metadata
- Download URL: python_thingset-0.2.3.tar.gz
- Upload date:
- Size: 20.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
23f534c94b00810dc61058e62122a3e481bfaf8078b35a53f65c986350e91680
|
|
| MD5 |
34eb59a48d1ed6971b2ad462de060464
|
|
| BLAKE2b-256 |
c5e488df6a234236368effeae91a8a8fd053a2ac101fb2cd1217263c2eb9b80a
|
File details
Details for the file python_thingset-0.2.3-py3-none-any.whl.
File metadata
- Download URL: python_thingset-0.2.3-py3-none-any.whl
- Upload date:
- Size: 23.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
18abf33b8f0c6b743f25cec3ef2c58c92ecd35568afa4011a398d7451f9ad94a
|
|
| MD5 |
90d79be6fad8a8ceae174d721aa3fcee
|
|
| BLAKE2b-256 |
bbb53f32ff60defe73c7b16e16dc9abf69e8474ad4f49f0bb6a7664a60362443
|