ca07c02e02
Model the ESP32-C3 I2C fingerprint path for stock firmware detection. Add a blank X4 panel stub, live GPIO inputs, and pin the exact QEMU revision.
31 lines
880 B
Python
Executable File
31 lines
880 B
Python
Executable File
#!/usr/bin/env python3
|
|
# Exercise the button/ADC QOM interface: qmp-qom.py <sock> get|set <path> <prop> [value]
|
|
import json
|
|
import socket
|
|
import sys
|
|
|
|
sock = socket.socket(socket.AF_UNIX)
|
|
sock.connect(sys.argv[1])
|
|
f = sock.makefile("rw")
|
|
json.loads(f.readline())
|
|
|
|
|
|
def cmd(command):
|
|
f.write(json.dumps(command) + "\n")
|
|
f.flush()
|
|
return json.loads(f.readline())
|
|
|
|
|
|
cmd({"execute": "qmp_capabilities"})
|
|
op, path, prop = sys.argv[2], sys.argv[3], sys.argv[4]
|
|
if op == "set":
|
|
raw_value = sys.argv[5]
|
|
value = raw_value.lower() == "true" if raw_value.lower() in ("true", "false") else int(raw_value)
|
|
response = cmd({"execute": "qom-set", "arguments": {
|
|
"path": path, "property": prop, "value": value}})
|
|
if "error" in response:
|
|
print(response)
|
|
else:
|
|
print(cmd({"execute": "qom-get", "arguments": {
|
|
"path": path, "property": prop}}))
|