Skip to Content
PRIZM CloudBlueprintsPeripheral settings

Peripheral settings

A handful of prefabs — the Serial/Ethernet Reader and Writer, I2C Reader and Writer, the CAN prefabs, and SPI-based sensors — talk to a physical bus instead of pure data. Each one exposes a channel constant (for example serial_channel) that says which bus instance it uses, but the bus’s own parameters (baud rate, IP address, CAN bit timing, and so on) are not set on the node. They live in the Global Peripheral Configuration panel, one place for the whole blueprint, because several nodes often share the same physical bus and must agree on how it’s configured.

This is a separate, dedicated panel in the Blueprint Editor — it is not part of the Ship deploy dialog. The deploy dialog only asks which bundle to deploy to; whatever is currently set in this panel travels with it automatically. See Deploying a blueprint.

At a glance, here is every peripheral type and how many channels it has — the sections below cover each one’s settings in full:

PeripheralCard in the panelChannelsWhy
UART / SerialSerial: Channel N0, 1Two independent UART controllers on the ESP32-S3.
I2CI2C: Channel N0, 1Two independent I2C controllers on the ESP32-S3.
SPISPI: Channel N0, 1Two independent SPI controllers on the ESP32-S3 — channel 1’s pin mapping is still rolling out on the device side, see below.
CANCAN: Channel N0 onlyThe ESP32-S3 has a single CAN (TWAI) controller — there is no second one to add a channel 1 for.
EthernetEthernet: Channel N0 onlyA single onboard W5500 module.

Open the panel

Click the sliders icon (Global Peripheral Configuration) in the canvas toolbar, next to Undo / Redo / Copy / Paste. It’s disabled until the canvas contains at least one peripheral-aware prefab with a channel assigned — placing one and giving it a channel number is what makes a settings card appear.

The panel lists one card per active channel, not per node: drop three I2C sensors that all use i2c_channel: 0, and you still get a single I2C: Channel 0 card, because they physically share the same bus and must run at the same speed. Cards are grouped by type (Serial, I2C, SPI, Ethernet, CAN) and sorted by channel number. Deleting the last node that uses a channel removes its card and forgets its settings.

Values you set here are saved with the blueprint on Save, and are read back the next time you open it — they are not re-entered on every visit.

UART / Serial

Shown in the panel as Serial: Channel N. Used by prefabs whose channel constant starts with uart — for example the Serial / Ethernet Reader prefab when reading Serial rather than Ethernet, and the Serial Writer prefab.

Channels: 0, 1 — matching UART Channel 0 / UART Channel 1 in the device’s Hardware settings.

SettingOptionsDefault
Baudrate1200 to 921600 bps (14 standard steps)115200
Data Bits5, 6, 7, 88
ParityNone, Even, OddNone
Stop Bits1, 21
Flow ControlNone, RTS, CTS, RTS/CTSNone
ModeFull Duplex, Half DuplexFull Duplex

Switching Mode to Half Duplex (RS-485) forces Flow Control to None and hides the field — half-duplex mode drives the bus through a single DE (driver-enable) pin instead. That DE pin is assigned per channel in the device’s Hardware settings; without it, the UART bus fails to start.

I2C

Shown in the panel as I2C: Channel N. Used by the I2C Reader / Writer prefabs and any sensor prefab whose peripheral is i2c (for example onboard/Qwiic sensors).

Channels: 0, 1 — matching I2C Channel 0 / I2C Channel 1 in the device’s Hardware settings. PRIZM Core Neo wires its onboard accelerometer and RTC to I2C Channel 1 by default — see I2C Bus.

SettingOptionsDefault
Baudrate100 000 Hz, 400 000 Hz100 000 Hz

The per-node address constant (the I2C device address) stays on the node — only the bus speed is global.

SPI

Shown in the panel as SPI: Channel N. Used by SPI-based sensor prefabs (for example the BMA400 accelerometer’s SPI variant).

Channels: 0, 1 — the device has two independent SPI controllers, so both channels can be used at once (for example two different SPI sensors on spi:0 and spi:1).

SettingOptionsDefault
Clock rate1 MHz, 2 MHz, 4 MHz, 8 MHz1 MHz

On the device side, Soft AP hardware settings today only expose pin mapping for SPI channel 0 — support for assigning SPI channel 1’s pins there is rolling out. Until it appears on your device, wire SPI-based prefabs to channel 0.

CAN

Shown in the panel as CAN: Channel N. Used by the CAN Reader/Monitor and CAN Writer prefabs. This sets the bus’s bit rate — CAN requires every node on the bus to run at the same speed, so it can’t be a per-node setting.

Channels: 0 only — the device has a single CAN controller today.

SettingOptionsDefault
Timing25, 50, 100, 125, 250, 500, 800 kbps, 1 Mbps250 kbps

Per-frame details (the arbitration ID to send or filter on) stay on the individual CAN node.

Ethernet

Shown in the panel as Ethernet: Channel N. Used by the Serial / Ethernet Reader prefab when reading Ethernet. Unlike the other buses, Ethernet doesn’t run over GPIO pins you assign yourself — it’s a fixed onboard W5500 module wired internally over SPI — so there’s nothing for it in Hardware settings.

Channels: 0 only — the device has a single onboard Ethernet module.

The device acts as a TCP client: it brings up its own network interface, then opens one TCP connection to a remote host and talks to it.

SettingOptionsDefaultNotes
Init typeDHCP, STATICDHCPHow the device gets its own IP address.
IP AddresstextStatic IP for the device. Shown only when Init type is STATIC.
Subnet MasktextShown only when Init type is STATIC.
GatewaytextShown only when Init type is STATIC.
Connect IPtextAlways shown. The remote host (server) the device connects out to.
Connect PorttextAlways shown. The port on the remote host.

If the TCP connection drops, the device retries automatically — no blueprint change needed — but at most once every 15 seconds, so a flapping link shows gaps rather than a tight reconnect loop.

Last updated on