Logger
dev.logger - wire path r - generated from fwMenuLogger.
start
Start. Arms the logger with the current settings; Immediate trigger mode starts capturing at once. Emits logger events (armed/triggered/complete/error) as it runs.
Allocates the PSRAM capture arena and arms the trigger state machine. Immediate mode begins logging right away; Button/Expression modes wait for their trigger. Files are written under /logs on the SD card as logNNNN.csv / logNNNN.rtix.
Wire command: r\s
Returns: none (Ok/Err only)
dev.logger.start() -> Result
ow_status ow_logger_start(ow_device* dev);
dev.logger().start() -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.start() # check dev.ok
stop
Stop. Stops the logger: an armed capture is discarded, a running capture drains its remaining events to the files and closes them.
Wire command: r\e
Returns: none (Ok/Err only)
dev.logger.stop() -> Result
ow_status ow_logger_stop(ow_device* dev);
dev.logger().stop() -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.stop() # check dev.ok
trigger
Trigger. Software trigger: fires an armed capture regardless of the configured trigger mode.
Wire command: r\t
Returns: none (Ok/Err only)
dev.logger.trigger() -> Result
ow_status ow_logger_trigger(ow_device* dev);
dev.logger().trigger() -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.trigger() # check dev.ok
status
Status. Prints the logger state, file format, trigger mode, output file names and event counters.
Wire command: r\i
Returns: none (Ok/Err only)
dev.logger.status() -> Result
ow_status ow_logger_status(ow_device* dev);
dev.logger().status() -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.status() # check dev.ok
file_format
File Format. Output file format for the next capture: CSV text, RTIX binary, or both
Wire command: r\f
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.file_format(value: int) -> Result
ow_status ow_logger_file_format(ow_device* dev, int32_t value);
dev.logger().file_format(value: i32) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.file_format(value) # check dev.ok
trigger_mode
Trigger Mode. How an armed capture is triggered: Immediate (on start), Button (a device button press), or Expression (a device expression becoming nonzero)
Wire command: r\m
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.trigger_mode(value: int) -> Result
ow_status ow_logger_trigger_mode(ow_device* dev, int32_t value);
dev.logger().trigger_mode(value: i32) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.trigger_mode(value) # check dev.ok
trigger_button
Trigger Button. Device button that fires the trigger in Button mode
Wire command: r\b
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.trigger_button(value: int) -> Result
ow_status ow_logger_trigger_button(ow_device* dev, int32_t value);
dev.logger().trigger_button(value: i32) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.trigger_button(value) # check dev.ok
trigger_expression
Trigger Expression. Expression evaluated every 50 ms in Expression mode; the trigger fires when it evaluates nonzero
Wire command: r\x
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.trigger_expression(value: str) -> Result
ow_status ow_logger_trigger_expression(ow_device* dev, const char* value);
dev.logger().trigger_expression(value: &str) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.trigger_expression(value) # check dev.ok
pre_trigger_ms
Pre Trigger Ms. Milliseconds of events kept from before the trigger (0-60000)
Wire command: r\p
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.pre_trigger_ms(value: int) -> Result
ow_status ow_logger_pre_trigger_ms(ow_device* dev, int32_t value);
dev.logger().pre_trigger_ms(value: i32) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.pre_trigger_ms(value) # check dev.ok
post_trigger_ms
Post Trigger Ms. Milliseconds captured after the trigger before the files close (0 = until stop, max 600000)
Wire command: r\o
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.post_trigger_ms(value: int) -> Result
ow_status ow_logger_post_trigger_ms(ow_device* dev, int32_t value);
dev.logger().post_trigger_ms(value: i32) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.post_trigger_ms(value) # check dev.ok
events
Events. Selects which events this instance captures: "all", "none", a comma-separated event-name list, or +name/-name to add/remove one event from the current selection
Wire command: r\v
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.events(value: str) -> Result
ow_status ow_logger_events(ow_device* dev, const char* value);
dev.logger().events(value: &str) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.events(value) # check dev.ok
active_instance
Active Instance. Selects which of the four logger instances (0-3) the settings rows show and the start, stop and trigger commands act on; every instance keeps its own saved configuration
Wire command: r\n
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.active_instance(value: int) -> Result
ow_status ow_logger_active_instance(ow_device* dev, int32_t value);
dev.logger().active_instance(value: i32) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.active_instance(value) # check dev.ok
name
Name. Optional name for this instance; captures are written to /logs/
Wire command: r\a
| Arg | Wire type |
|---|---|
| value |
Returns: none (Ok/Err only)
dev.logger.name(value: str) -> Result
ow_status ow_logger_name(ow_device* dev, const char* value);
dev.logger().name(value: &str) -> Result<(), OwError>
The C and Rust signatures above are also the WASM guest signatures - the device API surface is identical; only the transport differs (ow_open_wasm(&dev) in C, OneWili::open() in Rust).
dev.logger.name(value) # check dev.ok
Events
Spontaneous frames this menu emits (not command responses). Text events arrive as [*<id> ...] frames (Python: Transport.events; C: ow_poll_text_event; Rust: poll_event -> Event::Text); binary events use the binary API below. The on-device rthon binding does not receive event streams in v1.
logger (text)
Logger state change, prefixed with the instance number 0-3:
| Payload field | Wire type |
|---|---|
| info | string |