Resources
Resources represent readable/writable hardware values such as voltages, temperatures, and firmware revisions. They are identified by a dotted name string (e.g. "TempRegulator.CPU_TEMP").
Alias support: Both the NetName (e.g.
"0.23.ESH10000517.READ_TEMPERATURE") and the channel Alias (e.g."FRONT_AIR READ TEMPERATURE") are accepted interchangeably by all read, write, and transact methods.
Methods
| Method | Returns | Description |
|---|---|---|
get_names() |
list[str] |
List all available resource names. |
get_value(name) |
str |
Read the current value of a single resource. |
set_value(name, value) |
— | Write a value to a single resource. |
get_values(names) |
dict[str, str] |
Read multiple resources in one call. |
set_values(resources) |
— | Write multiple resources in one call. |
transact(name, value) |
str |
Write then read (command/response pattern). |
Examples
Single Read/Write
# Read a single value
voltage = client.resources.get_value("0.1.ESH10000158.MON_3V3")
print(f"Voltage: {voltage} V")
# Write a value
client.resources.set_value("MyOutput", "2.5")
Batch Operations
# Batch read
values = client.resources.get_values([
"TempRegulator.CPU_TEMP",
"Engine.Uptime",
])
for name, val in values.items():
print(f"{name} = {val}")
# Batch write
client.resources.set_values({
"Output1": "1.0",
"Output2": "2.0",
})
Write-then-Read Transaction
Useful for command/response patterns such as EEPROM or register access:
response = client.resources.transact("Eeprom.Read", "0x0010")
print(f"Register value: {response}")