Category: Device Lab
Writes a line of text over USB serial. Simulated on the canvas; the backend writes to the real port when a Device Lab monitor session has it open; on-device it becomes Serial.println().
| ID | Label | Type | Unwired default |
|---|---|---|---|
inTrigger |
Send | trigger | undefined |
text |
Text | string | "" |
| ID | Label | Type | Default |
|---|---|---|---|
outTrigger |
Sent | trigger | undefined |
sent |
Sent OK | boolean | undefined |
{
"port": "",
"baud": 115200,
"newline": true,
"sent": false
}This calls the production passive computation with the declared input/config defaults. Cached state, trigger execution and project wiring are separate.
{
"kind": "passive-default-probe",
"outputs": {
"sent": false
}
}Offline production passive computation with the same declared defaults; no device or model service is invoked.
{
"kind": "passive-default-probe",
"outputs": {
"sent": false
}
}Extracted production branches; helper calls and project execution context are defined in the referenced modules.
src/lib/device-node-compute.ts:67
usbSerialSend: (_inputs, config) => ({ sent: Boolean(config.sent) })src/lib/device-node-compute.ts:99
usbSerialSend: (inputs, config) => ({
nextTriggerPort: "outTrigger",
// The canvas simulation always "sends"; the backend replaces this with
// a real write when the configured port has an open monitor session.
updatedConfig: { ...config, sent: true, lastText: String(inputs.text ?? "") },
})- Default passive probe is an observation, not proof of all configurations, trigger behavior, or correctness. See ../NODE_RUNTIME_AUDIT.md and ../AUDIT_VALIDATION.md for test evidence.
- Trigger inputs schedule actions; passive evaluation alone does not execute those actions. Wire a trigger source and test the full chain.
- Software simulation does not establish physical device, firmware, camera or transport correctness.
Source fingerprint: 7e9d192bd3a559a7c50253919867601ef02c311d61e859f7afb4cadcfa508430. Rebuild with npm run docs:index.