Affected hardware: Yaskawa Sigma-7 SGD7S series SERVOPACKs with the F0 EtherCAT designator, including SGD7S-R90F0A0A (90 W class, 200 V input). Applies to engineers who attempt to connect a Sigma-7 EtherCAT drive directly to a Windows PC, NI CompactRIO, or NI PXI controller running LabVIEW 2016/2019/2021 without first installing an EtherCAT master stack.
Symptom summary: The Cat5e cable lights both link LEDs. The drive's front panel reads A.000 (no communication) or one of the A.E2x error codes. NI MAX, the LabVIEW Real-Time project, and any external EtherCAT scanner report zero slaves. The drive does not respond to ARP, ICMP, or Modbus/TCP poll requests because it is an EtherCAT slave only.
Root cause in one sentence: EtherCAT is a strictly master-slave deterministic fieldbus; the SGD7S-F0 is a slave device and cannot establish a session without a master on the wire, and desktop LabVIEW on a Windows PC is not an EtherCAT master.
1. Architecture Background: Why a Direct PC Connection Cannot Work
EtherCAT (Ethernet for Control Automation Technology) is a deterministic real-time fieldbus developed by Beckhoff Automation and maintained by the EtherCAT Technology Group (ETG). Unlike TCP/IP Ethernet, EtherCAT does not use IP addresses, ARP, or standard packet exchange. Instead, the master node sends a single Ethernet frame that passes through each slave in a daisy chain. Each slave reads its data on the fly and writes its response into the same frame as the frame continues downstream. The master receives the returning frame and updates the process image in a single bus cycle.
Three architectural constraints follow from this design:
-
Master requirement. A slave cannot initiate communication. If no master is transmitting the EtherCAT datagram, every slave on the segment remains in the EtherCAT State Machine
Initstate and presents zero process data. -
Slave-only SERVOPACK. The Yaskawa SGD7S-R90F0A0A is a slave. The trailing
F0designator in the Yaskawa catalog code indicates EtherCAT communication. Other Sigma-7 variants useA0(analog/pulse),E0(MECHATROLINK-III), andM0(Modbus/TCP). Each variant is a different hardware build with a different network interface ASIC and firmware, and theF0variant has no IP stack at all. - No native master in desktop LabVIEW. LabVIEW on a Windows PC includes NI-VISA, NI-DAQmx, and various Ethernet/IP and Modbus I/O servers, but it does not include an EtherCAT master stack. You must add a third-party or NI EtherCAT master to the host (TwinCAT 3, SOEM, acontis) or move the master into a real-time target (NI CompactRIO with NI-IC for EtherCAT, NI PXI with NI-IC for EtherCAT, Beckhoff CX controller).
2. Confirming the Diagnosis
Before buying hardware, validate the failure mode with these checks.
| Check | Expected on a healthy master-attached segment | Result on the failing direct-to-PC link |
|---|---|---|
| Front panel of the SGD7S |
A.020 (Pre-Op transition starting) or A.021 (communication established) |
A.000 (power on, no communication) |
| NI MAX — Devices and Interfaces | Real-Time target shows EtherCAT Master with one or more slaves listed | No EtherCAT Master; no Sigma-7 listed |
| LabVIEW Project — RT target scan | EtherCAT Master item appears under the target with sub-items per slave | Empty under target; only Ethernet and serial ports shown |
Wireshark on host Ethernet port (display filter eth.type == 0x88A4) |
EtherCAT datagrams visible at the configured cycle rate (e.g. every 1 ms) | No 0x88A4 traffic; only stray broadcast or TCP traffic if a switch is in the path |
| Yaskawa SigmaWin+ tool | SigmaWin+ cannot scan the drive over EtherCAT — it requires a Yaskawa USB or MECHATROLINK path. Not a master. | SigmaWin+ does not see the drive. This is normal and unrelated to the master question. |
The Wireshark check is the most decisive. If EtherType 0x88A4 traffic is absent, the segment has no master. If traffic is present but no slave is detected, the issue is downstream (ESI, topology, node address, or wiring).
3. Solution Matrix
Four engineering paths resolve the issue, ranked by field deployment likelihood.
| Path | Hardware | Master software | LabVIEW integration | Best for |
|---|---|---|---|---|
| A — NI CompactRIO as EtherCAT master | Existing cRIO-9056 with NI Linux Real-Time | NI-Industrial Communications for EtherCAT (NI part 781002-01) | Native — appears as RT target item | Engineers who already own a CompactRIO and want to keep everything in LabVIEW Real-Time |
| B — NI PXI as EtherCAT master | PXI chassis with PXI controller or MXI link | NI-Industrial Communications for EtherCAT | Native | High-channel deterministic test stands |
| C — Third-party master on Windows | Existing PC with compatible Ethernet port (Intel NIC recommended) | Beckhoff TwinCAT 3, SOEM, acontis EC-Master, Koenig-Pa Port | External — ADS (TwinCAT) or DLL calls | Engineers who need a quick PC-based motion test without NI RT hardware |
| D — Replace the drive variant | Order SGD7S-R90A0A (analog/pulse), SGD7S-R90M0A0A (Modbus/TCP), or SGD7S-R90E0A0A (MECHATROLINK-III) | No EtherCAT master needed | Direct from LabVIEW using NI-VISA or Modbus I/O server | Engineers who only need simple setpoint streaming and can use Sigma-7 on a non-EtherCAT network |
4. Path A — NI CompactRIO 9056 as EtherCAT Master
The CompactRIO 9056 is a supported EtherCAT master target. Follow this commissioning sequence.
4.1 Prerequisites
- LabVIEW 2018 SP1 or later (2021 recommended for the 9056 Linux RT image).
- LabVIEW Real-Time Module licensed for the cRIO target.
- NI-Industrial Communications for EtherCAT driver installed on the host PC. The driver package is NI part number
781002-01(English). Confirm driver/target compatibility on the NI-IC for EtherCAT documentation hub. - NI Linux Real-Time image installed on the cRIO-9056 (the default factory-shipped image).
- Yaskawa ESI file for the SGD7S. Yaskawa publishes the
Yaskawa_SGD7S_EtherCAT.xmlESI on the Sigma-7 download portal at yaskawa.com/products/motion/sigma-7. Copy it into the EtherCAT master ESI directory on the host before opening the LabVIEW project.
4.2 Wiring Topology
EtherCAT requires a daisy chain. Do not use an Ethernet switch between master and slave. The cRIO-9056 has dedicated EtherCAT ports on the controller; on most cRIO-905x models the left Ethernet port is reserved for EtherCAT when the EtherCAT master is enabled in the project. Consult the controller's CompactRIO model documentation for the exact port assignment on the 9056 variant you have.
- Patch from the cRIO EtherCAT port (typically port 0) to the SGD7S port CN6A (EtherCAT IN).
- If you have a second slave, patch CN6B (EtherCAT OUT) of the first slave to CN6A of the next slave.
- If the SGD7S is the last (or only) slave, leave CN6B unconnected. EtherCAT slaves auto-terminate internally.
4.3 Project Configuration
- In LabVIEW, create a new project and add the cRIO-9056 target as a Real-Time target.
- Right-click the target and select New > EtherCAT Master. The master item appears under the target.
- Right-click the EtherCAT Master item and select Scan for Slaves. The SGD7S should appear with its configured Node ID (station alias).
- If the SGD7S does not appear, verify the ESI file is in the correct directory:
C:\\Program Files (x86)\\National Instruments\\Shared\\EtherCAT\\ESI\\on the host. Restart the master scan after copying. - Drag the SGD7S from the scan results into the project under the master. The default PDO mapping is loaded.
- Set the master's cycle time. A 1 ms cycle time is a robust default for Sigma-7. 250 µs is achievable for high-dynamics axes, but the cRIO-9056 CPU budget must accommodate the full scan.
4.4 Default PDO Mapping on the SGD7S
Yaskawa's default ESI configures the following PDO groups. The PDO contents follow the CiA 402 (IEC 61800-7-201) drive profile.
| PDO name | Direction | Mapping entries (object index / size) | Meaning |
|---|---|---|---|
| RPDO1 (Master → Drive) | Rx |
0x6040/0 Controlword (U16), 0x607A/0 Target Position (I32), 0x60B0/0 Position Offset (I32), 0x6060/0 Modes of Operation (I8) |
Setpoint stream and mode select |
| TPDO1 (Drive → Master) | Tx |
0x6041/0 Statusword (U16), 0x6064/0 Position Actual Value (I32), 0x60B2/0 Torque Actual Value (I16), 0x6061/0 Modes of Operation Display (I8) |
Feedback stream |
You can remap PDOs in the master's PDO editor. Adding objects such as 0x6077 (Torque Actual Value, I16) and 0x60F4 (Following Error Actual Value, I32) is common for monitoring and protection.
5. Path B — NI PXI as EtherCAT Master
The same NI-Industrial Communications for EtherCAT driver supports PXI controllers. The PXI platform is preferred for high-channel deterministic test stands where a CompactRIO CPU budget is exceeded. The commissioning steps mirror Path A, with the differences below.
- Install the NI-IC for EtherCAT driver on the PXI controller and confirm the controller is on the supported list.
- Use the controller's dedicated EtherCAT port (PXIe controllers since 2017 typically have one). On older controllers, add a PXI Ethernet card such as the NI PXIe-8238 and designate it as the EtherCAT port in NI Measurement & Automation Explorer (MAX).
- The PXI controller's CPU budget is much larger than the cRIO-9056; you can typically run 8–32 Sigma-7 axes on a PXIe-8861 with a 250 µs cycle time.
6. Path C — Third-Party EtherCAT Masters
When no NI RT hardware is available, several options run on a Windows PC.
6.1 Beckhoff TwinCAT 3
TwinCAT 3 runs as a real-time extension on a Windows PC and provides a complete EtherCAT master. The free-of-charge TC3 PLC HMI Engineering download from beckhoff.com/twincat includes the EtherCAT master and the TwinCAT NC PTP motion controller, valid for development use. Production runtime requires a TC3 license.
From LabVIEW, drive TwinCAT via the TwinCAT ADS protocol over TCP. Use the Beckhoff TcAdsDll.dll or the open-source pyads library if your LabVIEW code is allowed to shell out to a helper process. Typical ADS settings: NetId 127.0.0.1.1.1 for local, Port 851 for the PLC instance, and one read/write per axis per cycle.
6.2 SOEM — Simple Open EtherCAT Master
SOEM is an open-source C library hosted at github.com/OpenEtherCATsociety/SOEM. Bind it to a real-time capable Intel NIC port on the host. SOEM is suitable for lab tests and embedded masters; the library can be wrapped as a DLL and called from LabVIEW through a Call Library Node.
6.3 acontis EC-Master and Koenig-Pa Port
acontis technologies and Koenig-Pa (Port) sell commercial EtherCAT master stacks for Windows and embedded targets with formal ETG conformance certification. They are the standard choice for OEM equipment that must pass EtherCAT PICS compliance testing.
7. Path D — Replace the SERVOPACK Variant
If the application can accept a non-EtherCAT network, ordering a different Sigma-7 variant avoids the entire EtherCAT master problem. Yaskawa's Sigma-7 catalog exposes several communication options on the same motor platform.
| Catalog code suffix | Network | Master requirement | LabVIEW integration | Notes |
|---|---|---|---|---|
A0 (e.g. SGD7S-R90A0A) |
Analog reference + pulse train | None — driven directly by a DAC and step/dir outputs | Use an NI analog output card (e.g. NI-9263) and a counter card (e.g. NI-9401) on a cDAQ or cRIO | Simplest hardware, but loses absolute position feedback over the network |
M0 (e.g. SGD7S-R90M0A0A) |
Modbus/TCP | None — standard TCP socket from any host | Use NI-VISA TCP/IP session or the LabVIEW Modbus I/O server | Cycle times ≥ 10 ms; not for high-dynamics motion |
E0 (e.g. SGD7S-R90E0A0A) |
MECHATROLINK-III | MECHATROLINK master required (NI does not sell one directly; Yaskawa MP3300iec or third-party) | Indirect, through the MECHATROLINK master | Common in Yaskawa-centric cells; out of scope for this article |
F0 (e.g. SGD7S-R90F0A0A — current unit) |
EtherCAT | EtherCAT master required | As described in this article | Best for multi-axis synchronized motion |
For a single-axis application where LabVIEW sends a position setpoint every 10–100 ms and reads back actual position, the Modbus/TCP variant is the lowest-friction option and requires no extra hardware beyond the drive and a Cat5e cable.
8. SGD7S EtherCAT Object Dictionary Highlights
Sigma-7 EtherCAT drives expose a CoE (CANopen-over-EtherCAT) object dictionary aligned with CiA 402. The subset below is what you will read or write most often when commissioning.
| Index (hex) | Name | Size | Access | Notes |
|---|---|---|---|---|
| 0x603F | Error Code | U16 | RO | Latest CiA 402 error word, mirrored to drive alarm number |
| 0x6040 | Controlword | U16 | RW | Shutdown, Switch On, Enable Operation, Fault Reset, Halt |
| 0x6041 | Statusword | U16 | RO | Bit 0 Ready, bit 1 Switched On, bit 2 Operation Enabled, bit 3 Fault, bit 10 Target Reached |
| 0x6060 | Modes of Operation | I8 | RW | 1 PP, 3 PV, 4 PT, 6 HM, 8 CSP, 7 IP (vendor-specific mix) |
| 0x6064 | Position Actual Value | I32 | RO | Counts (incremental units); use gear ratio object for user units |
| 0x607A | Target Position | I32 | RW | Counts; active in PP and CSP modes |
| 0x60B0 | Position Offset | I32 | RW | Added to target in CSP; used for camming and gearing |
| 0x60C2 | Interpolation Time Period | REC | RW | Cycle time in CSP; set sub-index 1 to 0x01 (seconds) or 0x06 (ms), sub-index 2 to period |
| 0x60F4 | Following Error Actual Value | I32 | RO | Position error in counts; compare against 0x6065 window |
| 0x60FF | Target Velocity | I32 | RW | Counts/s; active in PV and CSV modes |
| 0x10F1 | Error Settings | REC | RW | Configures which faults are reported via the CoE emergency channel |
| 0x1018 | Identity Object | REC | RO | Vendor ID 0x00000539 (Yaskawa), product code, revision, serial |
| 0x1C32 / 0x1C33 | Sync Manager 2/3 Synchronization | REC | RW | DC mode, cycle time, start time, shift time |
Yaskawa-specific objects live in the 0x2000–0x2FFF range and provide SDO access to drive parameters that mirror the front-panel Pn-parameters. Reading 0x2000 + Pn-number returns the current value; writing stores to non-volatile memory after a 0x1010 store cycle.
9. EtherCAT State Machine and Commissioning Sequence
Once a master is on the wire, the SGD7S progresses through the EtherCAT State Machine (ESM) before any process data is exchanged.
| State | Sub-protocols active | Drive behavior | Front panel display |
|---|---|---|---|
| Init | None | No communication, mailbox not configured | A.000 |
| Pre-Operational (Pre-Op) | CoE mailbox (SDO, SDO Info) | Configuration exchange: PDO mapping, sync manager, DC settings | A.020 |
| Safe-Operational (Safe-Op) | CoE mailbox + TPDO (input data from slave) | Drive echoes status and actuals; commands are ignored | A.021 |
| Operational (Op) | Full process data (TPDO + RPDO) | Drive follows commands, motor energised after enable |
A.021 with the RUN LED on solid |
| Bootstrap | FoE only | Firmware update channel; do not run motion in this state | Display cycles through FoE messages |
To transition from Op to a motion-enabled state, the CiA 402 controlword sequence is required.
Shutdown: 0x6040 = 0x0006 → Switch On: 0x6040 = 0x0007 → Enable Operation: 0x6040 = 0x000F (rising edge bit 3)
Once the drive is in Operation Enabled, write to 0x607A (Target Position) in Profile Position mode, or stream setpoints in Cyclic Synchronous Position mode (object 0x6060 = 8). The statusword bit 10 (Target Reached) signals the move complete in PP mode; in CSP mode the move is continuous and bit 10 is reserved.
10. Verification Procedure
- Power the SGD7S from a 200 V or 400 V three-phase bus (the R90 90 W class accepts single-phase 200 V input in most regions — confirm against the drive nameplate before applying power).
- Patch the cRIO EtherCAT port to CN6A on the drive.
- Run the LabVIEW project. Right-click the EtherCAT Master and confirm the slave reads
Opin the runtime monitor. - Open the drive's front panel and confirm the display shows
A.021. - From the LabVIEW front panel, write a non-zero Target Position (
0x607A) in Profile Position mode, set the start bit (0x6040bit 4), and confirm the motor moves one revolution (or whatever test distance was configured). - Read back
0x6064Position Actual Value and confirm the value tracks the target within the configured following-error window. - Command a controlled stop by writing
0x6040 = 0x0007(disable operation, motor remains energised), then0x0006(shutdown), then0x0000(disable voltage, motor de-energised).
11. Troubleshooting Matrix
| Symptom | Probable cause | Resolution |
|---|---|---|
Drive not seen, no 0x88A4 traffic on Wireshark |
No master on the wire, or master disabled in the project | Enable EtherCAT master on the RT target; verify with Wireshark |
| Drive not seen, master transmits but scan returns zero slaves | Wrong ESI file, wrong topology (switch in line), wrong port, or CN6A/CN6B reversed | Remove any switch; patch direct; reverse ports if daisy-chained; refresh ESI list and re-scan |
| Drive seen but stuck in Pre-Op | SDO configuration error, mismatch in sync manager assignment, or vendor-specific init object missing | Use the master's SDO diagnostics; check Yaskawa object 0x10F1 (Error Settings) and 0x10F8 (Timestamp) |
| Drive transitions to Op but does not move | Controlword sequence not run, motor not enabled, HWBB input open, or safe stop engaged | Run Shutdown → Switch On → Enable Operation sequence; close HWBB1/HWBB2 inputs; clear A.C90 if shown |
Drive trips A.E02 or A.F00 on enable |
Overcurrent, encoder fault, regen overload, or wrong motor parameter set | Check wiring (U/V/W and encoder cable); run SigmaWin+ auto-tune; confirm motor parameter Pn000 matches the connected motor |
| Following error grows over time | Loop gains too low, cycle time too long, or mechanical binding | Run one-parameter tuning (Fn020) on the drive front panel or in SigmaWin+; increase stiffness with caution |
| LabVIEW sees drive intermittently | EMI, ground loop, or daisy chain over 100 m | Use shielded cable, bond shield at drive end only, fit ferrite on encoder cable |
| Drive seen on one PC, not on another | Intel NIC driver bug, virtualization, or firewall blocking TwinCAT/NI-IC | Disable Windows firewall, switch to an Intel I210/I211/I350 NIC, disable VM tools |
Drive shows A.E20 or A.E21
|
EtherCAT communication error / timeout | Check cable integrity, replace patch cable, verify cycle time is supported by all slaves, inspect AL status code in master diagnostics |
Drive shows A.Eb1 or A.Eb2
|
HWBB1 or HWBB2 safety input is open | Wire both HWBB inputs to a 24 V safety circuit or to a non-safety jumper for bench commissioning; clear with controlword bit 7 (fault reset) after closing the input |
12. Safety, EMC, and Error Code Reference
The Sigma-7 SERVOPACK includes two hardware-base-block inputs (HWBB1 and HWBB2) that remove drive output to the motor independent of software. Wire both inputs to safety-rated contacts for any application where unintended motion could cause harm. The drive will refuse to enter Operation Enabled state with either HWBB input open and will display A.Eb1 (HWBB1 open) or A.Eb2 (HWBB2 open).
EtherCAT cable shielding must be bonded to the drive's D-sub shell at both ends with 360° clamp-on ferrules, not pigtails. The CN6A and CN6B connectors on the SGD7S are metal-shelled D-codes; do not use plastic-shelled RJ45 plugs in industrial installations.
Common Sigma-7 front-panel alarm codes that affect EtherCAT commissioning:
| Alarm code | Meaning | EtherCAT-related fix |
|---|---|---|
A.020 |
EtherCAT Pre-Op in progress | Wait for transition; if persistent, check Sync Manager config in 0x1C00
|
A.021 |
EtherCAT Op state | Healthy |
A.020 → A.000 |
Master dropped communication | Check master scan list and cable |
A.E20 |
EtherCAT communication error | Inspect AL status code in master, replace cable, check shielding |
A.E21 |
EtherCAT communication timeout | Increase master watchdog multiplier; verify cycle time |
A.E22 |
EtherCAT initialization error | Invalid ESI; reload Yaskawa ESI for the specific firmware version |
A.E23 |
EtherCAT data error | PDO mapping conflict; remove duplicate mappings |
A.E25 |
EtherCAT address error | Station alias mismatch between drive rotary switch and ESI configuration |
A.Eb1 / A.Eb2 |
HWBB1 / HWBB2 open | Close both safety inputs; cycle 24 V |
A.C90 |
Encoder communication error | Replace encoder cable, check motor-side connector |
A.d00 |
Position error excessive | Increase following-error window Pn520; tune gains |
Why does my Windows PC not see the Yaskawa SGD7S-R90F0A0A in LabVIEW?
The SGD7S-R90F0A0A is an EtherCAT slave. A Windows PC running desktop LabVIEW has no EtherCAT master stack, so the slave remains in the Init state with no process data. Add a real-time master such as NI CompactRIO with NI-Industrial Communications for EtherCAT, or a Windows-resident master like Beckhoff TwinCAT 3, and re-scan.
Can I use a Cat5e crossover cable to connect the SGD7S to a PC?
No special crossover is required. All modern Ethernet PHYs auto-negotiate MDI/MDIX. Use a standard straight-through Cat5e or Cat6 patch cable. The issue is not the cable — it is the absence of a master on the wire.
Does Yaskawa's SigmaWin+ software work as a master for the SGD7S EtherCAT variant?
No. SigmaWin+ connects to the SERVOPACK through a USB-miniB cable using Yaskawa's proprietary protocol, not EtherCAT. SigmaWin+ cannot see EtherCAT traffic and cannot be used as an EtherCAT master. Use NI-IC for EtherCAT, TwinCAT 3, or another ETG-conformant master.
My cRIO-9056 is wired to the SGD7S but the slave is still not detected. What is wrong?
Check three items in order. First, confirm the EtherCAT master is enabled in the LabVIEW project and the master is on the correct port (port 0 on most cRIO-905x models). Second, copy the Yaskawa SGD7S ESI XML file into the host's EtherCAT ESI directory and re-scan. Third, remove any Ethernet switch between cRIO and drive — EtherCAT requires a daisy chain.
What is the fastest cycle time I can run between the cRIO-9056 and a Sigma-7 servo?
250 µs is the practical lower limit for a single-axis cRIO-9056 + NI-IC for EtherCAT configuration. 500 µs and 1 ms are common production values that leave CPU headroom for safety, I/O, and other axes. The SGD7S supports distributed clocks, so multi-axis synchronization at 250 µs is achievable as long as the master's CPU budget is not saturated.