Skip to main content
Version: 1.1.1

Scanning the bus

Once your devices are wired up and powered on, scan lets you confirm that the master can see them. It is the quickest way to check your cabling and find out exactly which devices are on the segment.

Step 1 — Make sure the host is set up

scan uses the EtherCAT interface configured during host setup (LXMASTER_RT_IFACE). If you have not done that yet, follow Preparing your host first.

Step 2 — Scan the segment

sudo lxmaster scan

What you'll see: a summary of the discovered topology, then one block per device (in the order they are wired) showing its identity, sync managers, mailbox protocols, process-data size, and DC support. For example:

Scanning 'eth0' ...
Discovered 3 slave(s).
Process image: outputs=6 B, inputs=12 B, logical base=0x0 (indicative; ENI sizes from ESI)

[1] EK1100
PhysAddr=0x1001 VendorId=0x2 ProductCode=0x44c2c52 RevisionNo=0x110000
SM:
mailbox: out@0x0/0 in@0x0/0
process data: outputs=0 B, inputs=0 B (from SM category)
DC: no; CoE PDOs: rx=0 tx=0

[2] EL7031
PhysAddr=0x1002 VendorId=0x2 ProductCode=0x1b773052 RevisionNo=0x1a0000
SM: [0 start=0x1000 len=246 type=1] [1 start=0x1100 len=246 type=2] [2 start=0x1200 len=6 type=3] [3 start=0x1280 len=6 type=4]
mailbox: out@0x1000/246 in@0x1100/246 CoE
process data: outputs=6 B, inputs=6 B (from CoE)
DC: yes; CoE PDOs: rx=1 tx=1

Reading the output

Segment summary

The first few lines describe the whole bus:

FieldMeaning
Discovered N slave(s)How many devices answered, in wiring order.
Process imageTotal cyclic data across the bus — outputs are bytes the master sends to devices, inputs are bytes it reads back, and logical base is where that data starts in the address space. Indicative only; final sizes come from the ESI files at ENI generation.

Per-device blocks

Each [N] name block then describes one device:

FieldMeaning
[N] nameThe device's position on the bus (1-based, in wiring order) and its name.
PhysAddr, VendorId, ProductCode, RevisionNoThe device's address and identity. These identity values are what eni verify later checks the physical bus against.
SMThe device's sync managers (the hardware channels that move data), each shown as [index start=<addr> len=<bytes> type=<T>]. Simple devices may list none. See the type values below.
mailboxThe mailbox windows (out@<addr>/<size>, in@<addr>/<size>) and the mailbox protocols the device supports, such as CoE (CANopen over EtherCAT), FoE (file access), or EoE (Ethernet tunneling).
process dataThe cyclic outputs and inputs size for this device, and where the figure came from: CoE (read from the device's live PDO assignment) or SM category (derived from sync-manager sizes when the device has no CoE).
DCWhether the device supports distributed clocks (yes/no), plus the number of receive/transmit PDOs (rx/tx) found in its CoE configuration.

The type in each SM entry tells you what that sync manager carries:

TypeCarries
1Mailbox out (master to device)
2Mailbox in (device to master)
3Process-data outputs
4Process-data inputs

The exact numbers depend on your hardware. If the device count is lower than expected or the scan reports it is incomplete, check power and cabling and scan again.

note

scan only reads the bus — it does not write an ENI file or change anything on the devices. When the list looks right, move on to Generating an ENI file.