Connect
s32 can talk to a real S32 (--usb) or to an in-process simulator (--loopback). Choose the backend that matches the job.
USB
--usb claims the S32 Editor interface. Only one host can hold that interface at a time. Close the web editor before connecting. Firmware applies the same command limits to s32 and to the web editor.
Claiming the interface is full device control: read and overwrite projects, change live mappings, and capture the OLED. There is no password. Trust is physical USB plus local permission to that device node. This is not a network service.
Before you connect:
- Close the web editor (any browser tab using WebUSB).
- Prefer a project you can restore.
pulla copy first. - Destructive commands prompt unless you pass
--yes.
| Command | Effect |
|---|---|
push --activate | Replaces the live project |
project delete | Removes a stored project |
project load | Replaces the live editing session |
rack clear | Removes every device in the rack |
globals set | Writes device-wide settings |
--script skips prompts so a script cannot hang on stdin. Pass --yes for one-shot destructive commands in CI or pipes. --script does not unlock panel-only actions; firmware still rejects them. view nav only jumps to hub screens (Perform, Main, Racks, …) and does not push the panel Back stack.
Simulator
--loopback does not touch hardware. Use it for examples, CI, and trying commands before you run them on a device.
--loopback | --usb | |
|---|---|---|
| Target | In-process simulator | Attached S32 |
| Persistence | This process only | On-device storage |
| Device types | Small fixture set | Live firmware tables |
| Safe for experiments | Yes | Back up first |
Default: --usb when a board is present; --loopback when it is not. Pass either flag when you want to be explicit.
Scripts
Save a file of command args… lines. # starts a comment. The run exits non-zero if a line fails.
s32 --loopback --script session.script
s32 --usb --script session.script