oep-client-python 0.0.40__py3-none-any.whl → 0.0.42__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- oep_client/__init__.py +1 -1
- oep_client/__main__.py +8 -8
- oep_client/acquire.py +1866 -0
- oep_client/{conformance.py → conformance/__init__.py} +40 -37
- oep_client/{conformance_allocator.py → conformance/allocator.py} +2 -2
- oep_client/{virtual_allocator_model.py → conformance/allocator_model.py} +2 -2
- oep_client/{conformance_allocator_sample.py → conformance/allocator_sample.py} +2 -2
- oep_client/{conformance_analog.py → conformance/analog.py} +4 -4
- oep_client/{virtual_analog_model.py → conformance/analog_model.py} +6 -6
- oep_client/{conformance_analog_payload.py → conformance/analog_payload.py} +1 -1
- oep_client/{conformance_analog_sample.py → conformance/analog_sample.py} +1 -1
- oep_client/{conformance_arm_adi.py → conformance/arm_adi.py} +2 -2
- oep_client/{conformance_arm_adi_blocks.py → conformance/arm_adi_blocks.py} +2 -2
- oep_client/{virtual_arm_adi_model.py → conformance/arm_adi_model.py} +2 -2
- oep_client/{conformance_arm_adi_sample.py → conformance/arm_adi_sample.py} +1 -1
- oep_client/{conformance_attach.py → conformance/attach.py} +5 -6
- oep_client/{virtual_attach_model.py → conformance/attach_model.py} +7 -7
- oep_client/{conformance_attach_sample.py → conformance/attach_sample.py} +1 -1
- oep_client/{virtual_block_model.py → conformance/block_model.py} +2 -2
- oep_client/{conformance_block_sample.py → conformance/block_sample.py} +1 -1
- oep_client/{conformance_blocks.py → conformance/blocks.py} +3 -3
- oep_client/{conformance_capture_group.py → conformance/capture_group.py} +3 -3
- oep_client/{conformance_capture_group_geometry.py → conformance/capture_group_geometry.py} +1 -1
- oep_client/{virtual_capture_group_geometry_model.py → conformance/capture_group_geometry_model.py} +1 -1
- oep_client/{virtual_capture_group_model.py → conformance/capture_group_model.py} +7 -7
- oep_client/{conformance_capture_group_sample.py → conformance/capture_group_sample.py} +1 -1
- oep_client/{conformance_capture_metadata.py → conformance/capture_metadata.py} +2 -2
- oep_client/{virtual_capture_metadata_model.py → conformance/capture_metadata_model.py} +2 -2
- oep_client/{conformance_capture_serial.py → conformance/capture_serial.py} +3 -3
- oep_client/{conformance_capture_serial_sample.py → conformance/capture_serial_sample.py} +5 -5
- oep_client/{conformance_capture_timeline.py → conformance/capture_timeline.py} +2 -2
- oep_client/{conformance_capture_timeline_lifecycle.py → conformance/capture_timeline_lifecycle.py} +2 -2
- oep_client/{virtual_capture_timeline_model.py → conformance/capture_timeline_model.py} +7 -7
- oep_client/{conformance_capture_timeline_sample.py → conformance/capture_timeline_sample.py} +1 -1
- oep_client/{conformance_clock.py → conformance/clock.py} +1 -1
- oep_client/{virtual_clock_model.py → conformance/clock_model.py} +2 -2
- oep_client/{conformance_clock_sample.py → conformance/clock_sample.py} +1 -1
- oep_client/{conformance_core_fixed_fields.py → conformance/core_fixed_fields.py} +2 -2
- oep_client/{conformance_core_smoke.py → conformance/core_smoke.py} +2 -2
- oep_client/{conformance_corr.py → conformance/corr.py} +2 -2
- oep_client/{conformance_cut.py → conformance/cut.py} +2 -2
- oep_client/{virtual_cut_model.py → conformance/cut_model.py} +3 -3
- oep_client/{conformance_cut_sample.py → conformance/cut_sample.py} +1 -1
- oep_client/{conformance_data.py → conformance/data.py} +2 -2
- oep_client/{virtual_data_model.py → conformance/data_model.py} +4 -4
- oep_client/{conformance_data_sample.py → conformance/data_sample.py} +1 -1
- oep_client/{conformance_debug.py → conformance/debug.py} +2 -2
- oep_client/{virtual_debug_model.py → conformance/debug_model.py} +2 -2
- oep_client/{conformance_debug_sample.py → conformance/debug_sample.py} +1 -1
- oep_client/{virtual_declaration_model.py → conformance/declaration_model.py} +2 -2
- oep_client/{conformance_dependencies.py → conformance/dependencies.py} +1 -1
- oep_client/{virtual_dependency_model.py → conformance/dependency_model.py} +3 -3
- oep_client/{conformance_dependency_sample.py → conformance/dependency_sample.py} +1 -1
- oep_client/{conformance_discovery.py → conformance/discovery.py} +1 -1
- oep_client/{conformance_dmseq.py → conformance/dmseq.py} +2 -2
- oep_client/{virtual_dmseq_model.py → conformance/dmseq_model.py} +3 -3
- oep_client/{conformance_dmseq_sample.py → conformance/dmseq_sample.py} +1 -1
- oep_client/{conformance_dmseq_target.py → conformance/dmseq_target.py} +2 -2
- oep_client/{virtual_dmseq_target_model.py → conformance/dmseq_target_model.py} +1 -1
- oep_client/{conformance_dmseq_target_sample.py → conformance/dmseq_target_sample.py} +2 -2
- oep_client/{conformance_execution_order.py → conformance/execution_order.py} +2 -2
- oep_client/{conformance_execution_order_sample.py → conformance/execution_order_sample.py} +1 -1
- oep_client/{conformance_exhausted.py → conformance/exhausted.py} +5 -5
- oep_client/{conformance_exhausted_sample.py → conformance/exhausted_sample.py} +2 -2
- oep_client/{conformance_fixture_metadata.py → conformance/fixture_metadata.py} +2 -2
- oep_client/{virtual_fixture_metadata_model.py → conformance/fixture_metadata_model.py} +2 -2
- oep_client/{conformance_gpio.py → conformance/gpio.py} +2 -2
- oep_client/{conformance_gpio_lifecycle.py → conformance/gpio_lifecycle.py} +2 -2
- oep_client/{virtual_gpio_lifecycle_model.py → conformance/gpio_lifecycle_model.py} +1 -1
- oep_client/{conformance_gpio_lifecycle_sample.py → conformance/gpio_lifecycle_sample.py} +1 -1
- oep_client/{virtual_gpio_model.py → conformance/gpio_model.py} +2 -2
- oep_client/{conformance_gpio_sample.py → conformance/gpio_sample.py} +1 -1
- oep_client/{conformance_host_core.py → conformance/host_core.py} +2 -2
- oep_client/{conformance_host_deadline.py → conformance/host_deadline.py} +1 -1
- oep_client/{conformance_host_deadline_sample.py → conformance/host_deadline_sample.py} +2 -2
- oep_client/{conformance_host_notifications.py → conformance/host_notifications.py} +3 -3
- oep_client/{conformance_host_notifications_sample.py → conformance/host_notifications_sample.py} +1 -1
- oep_client/{conformance_host_request_sample.py → conformance/host_request_sample.py} +1 -1
- oep_client/{conformance_host_requests.py → conformance/host_requests.py} +4 -4
- oep_client/{conformance_host_resend.py → conformance/host_resend.py} +3 -3
- oep_client/{conformance_host_resend_sample.py → conformance/host_resend_sample.py} +4 -4
- oep_client/{conformance_host_tlv.py → conformance/host_tlv.py} +3 -3
- oep_client/{conformance_host_tlv_sample.py → conformance/host_tlv_sample.py} +1 -1
- oep_client/{conformance_host_values.py → conformance/host_values.py} +3 -3
- oep_client/{conformance_host_values_sample.py → conformance/host_values_sample.py} +1 -1
- oep_client/{conformance_host_wait.py → conformance/host_wait.py} +2 -2
- oep_client/{conformance_host_wait_sample.py → conformance/host_wait_sample.py} +2 -2
- oep_client/{conformance_i2c.py → conformance/i2c.py} +2 -2
- oep_client/{virtual_i2c_model.py → conformance/i2c_model.py} +5 -5
- oep_client/{conformance_i2c_sample.py → conformance/i2c_sample.py} +1 -1
- oep_client/{conformance_interface_smoke.py → conformance/interface_smoke.py} +5 -5
- oep_client/{conformance_interfaces.py → conformance/interfaces.py} +1 -1
- oep_client/{conformance_lease.py → conformance/lease.py} +2 -2
- oep_client/{conformance_lease_sample.py → conformance/lease_sample.py} +2 -2
- oep_client/{conformance_link_routes.py → conformance/link_routes.py} +3 -3
- oep_client/{virtual_link_routes_model.py → conformance/link_routes_model.py} +2 -2
- oep_client/{conformance_link_routes_sample.py → conformance/link_routes_sample.py} +1 -1
- oep_client/{virtual_link_transfer_model.py → conformance/link_transfer_model.py} +3 -3
- oep_client/{conformance_link_transfer_sample.py → conformance/link_transfer_sample.py} +1 -1
- oep_client/{conformance_link_transfers.py → conformance/link_transfers.py} +2 -2
- oep_client/{conformance_logic.py → conformance/logic.py} +5 -9
- oep_client/{virtual_logic_model.py → conformance/logic_model.py} +6 -6
- oep_client/{conformance_logic_sample.py → conformance/logic_sample.py} +1 -1
- oep_client/{conformance_mailbox.py → conformance/mailbox.py} +2 -2
- oep_client/{virtual_mailbox_model.py → conformance/mailbox_model.py} +2 -2
- oep_client/{conformance_mailbox_sample.py → conformance/mailbox_sample.py} +1 -1
- oep_client/{virtual_notification_model.py → conformance/notification_model.py} +5 -5
- oep_client/{conformance_notification_retention.py → conformance/notification_retention.py} +2 -2
- oep_client/{conformance_notification_retention_sample.py → conformance/notification_retention_sample.py} +3 -3
- oep_client/{conformance_notification_sequence.py → conformance/notification_sequence.py} +2 -2
- oep_client/{conformance_notification_sequence_sample.py → conformance/notification_sequence_sample.py} +1 -1
- oep_client/{virtual_oep_declaration_model.py → conformance/oep_declaration_model.py} +5 -5
- oep_client/{conformance_oep_declarations.py → conformance/oep_declarations.py} +1 -1
- oep_client/{conformance_oep_smoke.py → conformance/oep_smoke.py} +3 -3
- oep_client/{virtual_outcome_model.py → conformance/outcome_model.py} +2 -2
- oep_client/{conformance_outcome_sample.py → conformance/outcome_sample.py} +1 -1
- oep_client/{conformance_outcomes.py → conformance/outcomes.py} +1 -1
- oep_client/{conformance_pipeline.py → conformance/pipeline.py} +1 -1
- oep_client/{virtual_pipeline_model.py → conformance/pipeline_model.py} +1 -1
- oep_client/{conformance_pipeline_sample.py → conformance/pipeline_sample.py} +1 -1
- oep_client/{conformance_port_speed.py → conformance/port_speed.py} +2 -2
- oep_client/{conformance_port_speed_execution.py → conformance/port_speed_execution.py} +2 -2
- oep_client/{virtual_port_speed_execution_model.py → conformance/port_speed_execution_model.py} +2 -2
- oep_client/{conformance_port_speed_execution_sample.py → conformance/port_speed_execution_sample.py} +1 -1
- oep_client/{conformance_port_speed_lifecycle.py → conformance/port_speed_lifecycle.py} +2 -2
- oep_client/{virtual_port_speed_model.py → conformance/port_speed_model.py} +2 -2
- oep_client/{conformance_port_speed_sample.py → conformance/port_speed_sample.py} +1 -1
- oep_client/{conformance_probe_input.py → conformance/probe_input.py} +3 -3
- oep_client/{conformance_probe_input_sample.py → conformance/probe_input_sample.py} +4 -4
- oep_client/{conformance_recovery.py → conformance/recovery.py} +4 -4
- oep_client/{conformance_recovery_race_sample.py → conformance/recovery_race_sample.py} +2 -2
- oep_client/{conformance_recovery_races.py → conformance/recovery_races.py} +5 -5
- oep_client/{conformance_recovery_sample.py → conformance/recovery_sample.py} +2 -2
- oep_client/{conformance_refusal_order.py → conformance/refusal_order.py} +3 -3
- oep_client/{conformance_refusal_order_sample.py → conformance/refusal_order_sample.py} +4 -4
- oep_client/{conformance_registered_ops.py → conformance/registered_ops.py} +1 -1
- oep_client/{virtual_registered_ops_model.py → conformance/registered_ops_model.py} +3 -3
- oep_client/{conformance_replay_pressure.py → conformance/replay_pressure.py} +2 -2
- oep_client/{conformance_reset.py → conformance/reset.py} +4 -4
- oep_client/{virtual_reset_model.py → conformance/reset_model.py} +6 -6
- oep_client/{conformance_reset_sample.py → conformance/reset_sample.py} +1 -1
- oep_client/{virtual_resource_model.py → conformance/resource_model.py} +3 -3
- oep_client/{conformance_resource_sample.py → conformance/resource_sample.py} +1 -1
- oep_client/{conformance_resources.py → conformance/resources.py} +1 -1
- oep_client/{conformance_response_race.py → conformance/response_race.py} +3 -3
- oep_client/{conformance_response_race_sample.py → conformance/response_race_sample.py} +3 -3
- oep_client/{conformance_restart.py → conformance/restart.py} +2 -2
- oep_client/{virtual_restart_model.py → conformance/restart_model.py} +2 -2
- oep_client/{conformance_restart_sample.py → conformance/restart_sample.py} +2 -2
- oep_client/{conformance_retention.py → conformance/retention.py} +7 -14
- oep_client/{conformance_retention_lifecycle.py → conformance/retention_lifecycle.py} +2 -2
- oep_client/{conformance_retention_lifecycle_sample.py → conformance/retention_lifecycle_sample.py} +1 -1
- oep_client/{virtual_retention_model.py → conformance/retention_model.py} +3 -3
- oep_client/{conformance_retention_sample.py → conformance/retention_sample.py} +1 -1
- oep_client/{conformance_retry.py → conformance/retry.py} +2 -2
- oep_client/{virtual_retry_model.py → conformance/retry_model.py} +2 -2
- oep_client/{conformance_retry_sample.py → conformance/retry_sample.py} +1 -1
- oep_client/{virtual_route_model.py → conformance/route_model.py} +5 -5
- oep_client/{conformance_route_sample.py → conformance/route_sample.py} +1 -1
- oep_client/{conformance_routes.py → conformance/routes.py} +1 -1
- oep_client/{conformance_run.py → conformance/run.py} +4 -4
- oep_client/{virtual_run_model.py → conformance/run_model.py} +4 -4
- oep_client/{conformance_run_sample.py → conformance/run_sample.py} +1 -1
- oep_client/{conformance_scan.py → conformance/scan.py} +5 -8
- oep_client/{virtual_scan_model.py → conformance/scan_model.py} +4 -5
- oep_client/{conformance_scan_options.py → conformance/scan_options.py} +6 -6
- oep_client/{virtual_scan_options_model.py → conformance/scan_options_model.py} +8 -10
- oep_client/{conformance_scan_options_sample.py → conformance/scan_options_sample.py} +1 -1
- oep_client/{conformance_scan_sample.py → conformance/scan_sample.py} +1 -1
- oep_client/{conformance_selected_metadata.py → conformance/selected_metadata.py} +2 -2
- oep_client/{virtual_selected_metadata_model.py → conformance/selected_metadata_model.py} +2 -2
- oep_client/{conformance_session_loss.py → conformance/session_loss.py} +4 -4
- oep_client/{conformance_session_loss_sample.py → conformance/session_loss_sample.py} +2 -2
- oep_client/{conformance_session_smoke.py → conformance/session_smoke.py} +2 -2
- oep_client/{conformance_spi.py → conformance/spi.py} +2 -2
- oep_client/{virtual_spi_model.py → conformance/spi_model.py} +2 -2
- oep_client/{conformance_spi_sample.py → conformance/spi_sample.py} +1 -1
- oep_client/{conformance_step.py → conformance/step.py} +3 -3
- oep_client/{virtual_step_model.py → conformance/step_model.py} +3 -3
- oep_client/{conformance_step_sample.py → conformance/step_sample.py} +1 -1
- oep_client/{conformance_stream.py → conformance/stream.py} +1 -1
- oep_client/{virtual_stream_model.py → conformance/stream_model.py} +5 -5
- oep_client/{conformance_stream_sample.py → conformance/stream_sample.py} +1 -1
- oep_client/{conformance_subscription_sample.py → conformance/subscription_sample.py} +1 -1
- oep_client/{conformance_subscriptions.py → conformance/subscriptions.py} +1 -1
- oep_client/{conformance_tcp.py → conformance/tcp.py} +1 -1
- oep_client/{conformance_tcp_peers.py → conformance/tcp_peers.py} +3 -3
- oep_client/{conformance_tcp_recovery.py → conformance/tcp_recovery.py} +3 -3
- oep_client/{conformance_tcp_recovery_sample.py → conformance/tcp_recovery_sample.py} +6 -6
- oep_client/{virtual_tlv_request_model.py → conformance/tlv_request_model.py} +5 -4
- oep_client/{conformance_tlv_requests.py → conformance/tlv_requests.py} +4 -8
- oep_client/{conformance_uart.py → conformance/uart.py} +5 -6
- oep_client/{virtual_uart_model.py → conformance/uart_model.py} +5 -6
- oep_client/{conformance_uart_sample.py → conformance/uart_sample.py} +1 -1
- oep_client/{conformance_uart_stream.py → conformance/uart_stream.py} +2 -2
- oep_client/{conformance_uart_stream_sample.py → conformance/uart_stream_sample.py} +1 -1
- oep_client/{conformance_usb.py → conformance/usb.py} +4 -4
- oep_client/{conformance_usb_cases.py → conformance/usb_cases.py} +3 -3
- oep_client/{conformance_usb_model.py → conformance/usb_model.py} +4 -4
- oep_client/{conformance_wire_options.py → conformance/wire_options.py} +7 -4
- oep_client/{virtual_wire_options_model.py → conformance/wire_options_model.py} +5 -10
- oep_client/{conformance_wire_options_sample.py → conformance/wire_options_sample.py} +1 -1
- oep_client/{conformance_writer_lease.py → conformance/writer_lease.py} +2 -2
- oep_client/{virtual_writer_lease_model.py → conformance/writer_lease_model.py} +2 -2
- oep_client/{conformance_writer_lease_sample.py → conformance/writer_lease_sample.py} +1 -1
- oep_client/discovery.py +1 -1
- oep_client/endpoint.py +7 -7
- oep_client/host.py +1 -1
- oep_client/link.py +122 -42
- oep_client/pins.py +16 -2
- oep_client/registry.py +4 -4
- oep_client/virtual_bench.py +2 -2
- oep_client/virtual_bench_serve.py +3 -0
- oep_client/virtual_core.py +2 -2
- {oep_client_python-0.0.40.dist-info → oep_client_python-0.0.42.dist-info}/METADATA +14 -11
- oep_client_python-0.0.42.dist-info/RECORD +257 -0
- oep_client_python-0.0.40.dist-info/RECORD +0 -256
- /oep_client/{conformance_host_core_sample.py → conformance/host_core_sample.py} +0 -0
- /oep_client/{conformance_serial.py → conformance/serial.py} +0 -0
- {oep_client_python-0.0.40.dist-info → oep_client_python-0.0.42.dist-info}/WHEEL +0 -0
- {oep_client_python-0.0.40.dist-info → oep_client_python-0.0.42.dist-info}/entry_points.txt +0 -0
- {oep_client_python-0.0.40.dist-info → oep_client_python-0.0.42.dist-info}/licenses/LICENSE +0 -0
oep_client/__init__.py
CHANGED
oep_client/__main__.py
CHANGED
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
host's time - the reading with the shortest round trip of n)
|
|
21
21
|
oep restart <probe> [--reopen-s S] (oep.probe.restart: the probe restarts; waits until it is back, its new boot_id)
|
|
22
22
|
|
|
23
|
-
<probe>:
|
|
24
|
-
|
|
23
|
+
<probe>: an OEP address, oep://UNIT_ID[?via=usb|bulk|hid|cdc|net|tcp:HOST:PORT|tty:PATH] (host guide §5.3), or, for a
|
|
24
|
+
probe whose unit_id is not known, a serial port, tcp://HOST[:PORT] (no port: the one DNS-SD finds) or usb (the only one). A change takes the lock (owner "oep settings") and
|
|
25
25
|
ends the session after it; it takes effect at once, and stays over a restart only after `save` (or --save).
|
|
26
26
|
"""
|
|
27
27
|
|
|
@@ -47,7 +47,7 @@ def _open_host(target: str, **kw):
|
|
|
47
47
|
return link.open_host(target, **kw)
|
|
48
48
|
except (OSError, ValueError, ImportError, host.OepError) as e:
|
|
49
49
|
why = " ".join(str(e).split()).rstrip(".") or type(e).__name__
|
|
50
|
-
hint = f" Hint: {USB_HINT}." if isinstance(e, FileNotFoundError) and (target == "usb" or target.startswith("
|
|
50
|
+
hint = f" Hint: {USB_HINT}." if isinstance(e, FileNotFoundError) and (target == "usb" or target.lower().startswith("oep://")) \
|
|
51
51
|
else ""
|
|
52
52
|
raise SystemExit(f"oep: cannot open {target}: {why}.{hint}") from None
|
|
53
53
|
|
|
@@ -81,7 +81,7 @@ def main(argv=None) -> int:
|
|
|
81
81
|
sp.add_argument("--baud", type=int, default=link.BASE_BAUD, help="the boot speed (default 115200)")
|
|
82
82
|
sp.add_argument("--json", action="store_true")
|
|
83
83
|
lt = sub.add_parser("linktest", help="measure the link: traffic patterns at rates the host asks for, what breaks")
|
|
84
|
-
lt.add_argument("probe", help="a probe: a serial port, tcp://HOST:PORT or usb
|
|
84
|
+
lt.add_argument("probe", help="a probe: oep://UNIT_ID[?via=...], a serial port, tcp://HOST:PORT or usb")
|
|
85
85
|
lt.add_argument("--rates", default="", help="comma-separated rates to switch to with port_speed and measure at "
|
|
86
86
|
"(each on its own; 0 or 'now' = the speed in force). Default: only the speed in force")
|
|
87
87
|
lt.add_argument("--patterns", default="in,out,duplex", help="in (probe->host), out (host->probe), duplex")
|
|
@@ -96,7 +96,7 @@ def main(argv=None) -> int:
|
|
|
96
96
|
lt.add_argument("--json", action="store_true", help="one JSON object per cell")
|
|
97
97
|
pn = sub.add_parser("pins", help="find where a target is wired: classify the channels, scan the wire, find the "
|
|
98
98
|
"reset line, suggest labels (writes nothing without --save)")
|
|
99
|
-
pn.add_argument("probe", help="a probe: a serial port, tcp://HOST:PORT or usb
|
|
99
|
+
pn.add_argument("probe", help="a probe: oep://UNIT_ID[?via=...], a serial port, tcp://HOST:PORT or usb")
|
|
100
100
|
pn.add_argument("--power", type=int, help="the gpio channel that powers the target: switched off, then on, to "
|
|
101
101
|
"see which channels follow it (never touched without this)")
|
|
102
102
|
pn.add_argument("--exclude", default="", help="channels never to read, scan or hold, comma-separated")
|
|
@@ -116,11 +116,11 @@ def main(argv=None) -> int:
|
|
|
116
116
|
"<name>.swio), <name>.nrst, <name>.power_hi; the probe is then opened as oep://<unit_id>/<name>")
|
|
117
117
|
pn.add_argument("--json", action="store_true", help="the report as JSON (the steps' lines go to stderr)")
|
|
118
118
|
ck = sub.add_parser("clock", help="the probe's clock (fn 0 clock, core §7.6) against this host's: lock-free")
|
|
119
|
-
ck.add_argument("probe", help="a probe: a serial port, tcp://HOST:PORT or usb
|
|
119
|
+
ck.add_argument("probe", help="a probe: oep://UNIT_ID[?via=...], a serial port, tcp://HOST:PORT or usb")
|
|
120
120
|
ck.add_argument("-n", type=int, default=8, help="readings; the one with the shortest round trip is kept (default 8)")
|
|
121
121
|
ck.add_argument("--json", action="store_true")
|
|
122
122
|
rs = sub.add_parser("restart", help="restart the probe (oep.probe.restart, optional) and wait until it is back")
|
|
123
|
-
rs.add_argument("probe", help="a probe: a serial port, tcp://HOST:PORT or usb
|
|
123
|
+
rs.add_argument("probe", help="a probe: oep://UNIT_ID[?via=...], a serial port, tcp://HOST:PORT or usb")
|
|
124
124
|
rs.add_argument("--force", action="store_true", help="take the lock from its holder")
|
|
125
125
|
rs.add_argument("--reopen-s", type=float, default=0.0, metavar="S",
|
|
126
126
|
help="when the probe is not back within its restart_max_ms, open it again for up to S more seconds "
|
|
@@ -138,7 +138,7 @@ def main(argv=None) -> int:
|
|
|
138
138
|
d = sub.add_parser("dump", help="list and describe every interface a probe offers")
|
|
139
139
|
src = d.add_mutually_exclusive_group(required=True)
|
|
140
140
|
src.add_argument("--virtual", choices=sorted(virtual_bench.PROFILES), help="an in-process virtual bench (no hardware)")
|
|
141
|
-
src.add_argument("--port", help="a probe: a serial port, tcp://HOST:PORT or usb
|
|
141
|
+
src.add_argument("--port", help="a probe: oep://UNIT_ID[?via=...], a serial port, tcp://HOST:PORT or usb (lock-free reads only)")
|
|
142
142
|
d.add_argument("--prefix", default="", help="only names under this namespace (label boundaries)")
|
|
143
143
|
d.add_argument("--exact", action="store_true", help="the prefix is a whole name")
|
|
144
144
|
d.add_argument("--json", action="store_true", help="machine-readable output")
|