Skip to main content

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

ArgWire 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

ArgWire 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

ArgWire 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

ArgWire 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

ArgWire 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

ArgWire 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

ArgWire 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

ArgWire 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//_NNNN.* instead of /logs/logI_NNNN.*

Wire command: r\a

ArgWire 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: armed, triggered, complete records, or error

Payload fieldWire type
infostring