Resolving LOGO! 8 OBA6 'Data Transfer is Busy' RS232 Download Error
1. Problem Summary
The Siemens LOGO! 8 OBA6 230RC logic module (typical MLFB 6ED1 052-1CC08-0BA6 for the 230RC variant with display, and 6ED1 052-2CC08-0BA0 for the 230RCE variant with Ethernet) communicates with a PC using either the legacy LOGO! PC cable (RS232, MLFB 6ED1 057-1AA00-0BA0) or the current LOGO! USB PC cable (MLFB 6ED1 057-1DA00-0BA1). When LOGO! Soft Comfort (LSC) is asked to transfer a circuit program and the dialog "Data transfer is busy" is displayed, the LSC communication thread has failed to acquire exclusive control of the COM port that has been bound to the cable. The message originates in LscCom.dll after the call to CreateFileW("\\.\COMx", GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL) succeeds but the subsequent SetCommState/WriteFile pair times out or returns ERROR_ACCESS_DENIED (Win32 error 5).
The condition is recoverable on the host. It does not require a factory reset of the LOGO! module and does not indicate a corrupted circuit program in the controller's flash. The fault lies entirely on the Windows-side communications stack: the COM port is held by another application, the cable hardware is partially degraded, the LOGO! is in the wrong front-panel mode, or the COM port number has shifted after a USB-to-serial enumerator reset.
2. Affected Hardware and Software
| Item | Article / Version | Notes |
|---|---|---|
| LOGO! 230RC OBA6 with display | 6ED1 052-1CC08-0BA6 | 115/230 V AC supply, 8 DI / 4 DO relay, no Ethernet |
| LOGO! 230RCE OBA6 with display | 6ED1 052-2CC08-0BA0 | 115/230 V AC supply, 8 DI / 4 DO relay, integrated Ethernet |
| LOGO! 230RCE OBA8 (current) | 6ED1 052-2MD08-0BA0 | LOGO! 8.3; compatible with LSC V8.3 |
| LOGO! Soft Comfort V8.0 | 6ED1 058-0BA08-0YA1 | Targets LOGO! 8 / 8.1 only |
| LOGO! Soft Comfort V8.2 | 6ED1 058-0BA28-0YA1 | Adds LOGO! 8.2 BM and CM support |
| LOGO! Soft Comfort V8.3 | 6ED1 058-0BA38-0YA1 | Adds LOGO! 8.3, TDE text display, web server import |
| LOGO! PC cable (RS232) | 6ED1 057-1AA00-0BA0 | DB9 male to 8-pin mini-DIN, galvanically isolated; obsolete |
| LOGO! USB PC cable | 6ED1 057-1DA00-0BA1 | USB-A to 8-pin mini-DIN, integrated SiLabs CP210x |
| Windows host | Windows 10 1909 / Windows 11 22H2 | Required for signed CP210x v6.7+ or FTDI v2.12.36+ |
Refer to the LOGO! 8 System Manual (Siemens ID 109743670) for the full pin map of the front programming socket and the cable shield grounding requirements for cabinet installation in noisy industrial environments.
3. Root Cause Analysis
The "Data transfer is busy" string is reported by LSC's communication handler when the target COM port is non-responsive at the application layer. The dominant root causes, in order of field frequency, are:
- COM port held by another process. Windows opens COM ports in non-sharing mode for serial communications. If a previous LSC instance crashed, a HyperTerminal, PuTTY or Tera Term session was left open, or a USB-serial hot-plug event orphaned a handle, the COM port stays locked until the owning process is killed or the device is unplugged and re-enumerated.
- LOGO! in PARAMETER mode. In PARAM mode the LOGO! front keypad has precedence over the serial port for write operations. LSC sees the controller as perpetually busy and aborts the transfer after the 30-second negotiation timeout.
- Defective RS232 cable. The original LOGO! RS232 cable uses a stranded DB9 connector that is sensitive to kinking at the strain relief. Internal conductor breaks yield a port that opens without error but never completes a handshake, which LSC interprets as a busy target.
- USB-to-RS232 adapter enumeration shift. When a USB-to-serial dongle resets after sleep/hibernate, Windows may renumber it to a different COM port. The COM number LSC was configured against no longer exists, so the autodetect sequence opens an unrelated or non-existent port and stalls.
-
Wrong baud rate or flow control. LSC's "Autodetection" negotiates 19 200 bps, 8-N-1 with hardware flow control (RTS/CTS). If the LOGO! has been previously configured to a non-default baud (rare, only with custom function blocks) or the cable's RTS/CTS loop is open, negotiation stalls at the
SetCommStatecall. - Driver signature mismatch. On Windows 11 22H2 and later, unsigned or outdated CP210x or FTDI drivers are blocked by Secure Boot, leaving the cable as an unknown device with a phantom COM port that cannot transmit.
- LOGO! in bootloader mode. A failed firmware upgrade leaves the LOGO! in the ROM-resident bootloader, which only accepts the binary firmware stream over the same port. LSC's high-level protocol sees no FBD response and reports "busy".
4. Pre-Diagnostic Checklist
Before opening LSC, capture the following baseline from Device Manager and the LOGO! front panel:
- Confirm the cable is seated firmly in the LOGO! front 8-pin mini-DIN socket. The connector keyway must face up; the locking tab must click. A 180° rotated plug powers the cable but cannot handshake.
- Verify that the LOGO! front display reads either
LOGO! → RUN(green status) orLOGO! → STOP. RejectPARAM,EDITand the firmware-update menu. - Open Device Manager → Ports (COM & LPT) and note the COM number assigned to the cable. For the USB cable the entry reads "Siemens LOGO! USB Cable (COMx)" or "Silicon Labs CP210x USB to UART Bridge (COMx)". For the RS232 cable it reads "Communications Port (COMx)".
- In LSC, choose Tools → Options → Interface and confirm the COM port shown matches Device Manager. Toggle Autodetect off and back on if the values disagree.
- Check the LOGO! LED row: a solid green
RUNLED with a blinking redERRORLED indicates a corrupted program; download is still possible, but the program must be replaced before commissioning. - Open Event Viewer → Windows Logs → System and filter for Source = "Serial" or "usbser" within the last hour; entries with Event ID 1 or 32 indicate a USB-reset storm that has renumbered the COM port.
5. Solution 1: Release the Held COM Port
The most common fix is to force Windows to release the locked COM handle. The classic field procedure uses HyperTerminal (still present on Windows 10 IoT and legacy installations) or, on Windows 11 23H2 and later, the PowerShell Disable-PnpDevice/Enable-PnpDevice pair.
Method A — mode command (Windows 10 and earlier):
- Open an elevated Command Prompt (
cmd.exe→ Run as administrator). - Type
mode COM3:9600,8,N,1, replacingCOM3with the actual port, and press Enter. A response ofStatus for device COM3: ...confirms the port is free. A response ofInvalid handleorStatus: ERRORmeans the port is still locked; continue to step 3. - Open Task Manager → Details and add the
PIDcolumn. Runresmon.exe(Resource Monitor), switch to the CPU tab, expand Associated Handles, search for\Device\SerialorCOMx, and identify the owning PID. - Right-click the offending process → End task. If the process is
LSC.exeorLscSrv.exe, also check%LOCALAPPDATA%\Siemens\LOGO!\SoftComfortfor stale*.lockfiles and delete them. - Unplug the USB cable (or unplug and replug the RS232 DB9), wait five seconds, and reconnect. The COM number should reappear in Device Manager.
Method B — PowerShell (Windows 11 23H2+):
# Enumerate serial ports and detect handles
Get-CimInstance -Class Win32_SerialPort |
Select-Object DeviceID, Name, Status
# Find the PID holding COM3
Get-Process | Where-Object {
$_.Modules.ModuleName -match 'serialui|COM'
} | Select-Object Id, ProcessName
# Cycle the COM port to release the handle
$port = (Get-PnpDevice -Class Ports |
Where-Object {$_.FriendlyName -match 'COM3'}).InstanceId
Disable-PnpDevice -InstanceId $port -Confirm:$false
Start-Sleep -Seconds 2
Enable-PnpDevice -InstanceId $port -Confirm:$false
6. Solution 2: Switch the LOGO! Out of PARAMETER Mode
The LOGO! OBA6 keypad cycles through RUN → STOP → PARAM with successive presses of ESC. LSC cannot begin a write transfer while the front panel is in PARAM mode because the operating-system flag (bit 0 of the mode register inside LSC's view of the LOGO! firmware) is held at "user input active".
- Press ESC on the LOGO! until the display reads
LOGO! → RUNor shows the I/O status line. - If the program currently in the LOGO! is password-locked, the password prompt must be cleared first. Use the cursor keys to enter the password; if it is forgotten, a factory reset is required and the existing program is lost.
- Re-attempt the transfer from LSC: Tools → Transfer → PC → LOGO! or the keyboard shortcut F5.
7. Solution 3: Inspect and Replace the Programming Cable
The original RS232 cable (MLFB 6ED1 057-1AA00-0BA0) is unshielded at the DB9 strain relief and the cable jacket becomes brittle after two to three years of flexing in control cabinets. Field reports consistently link this fault mode to intermittent "busy" responses: the cable is electrically open on one or two lines, but the COM port is still acquired by Windows without error.
Continuity test procedure:
- Disconnect the cable from both ends.
- Use a multimeter on continuity between the DB9 pins and the 8-pin mini-DIN pins per the Siemens wiring diagram in the LOGO! 8 System Manual (109743670), section 6.2. The required signal pairs are:
| Signal | DB9 pin | Mini-DIN pin (LOGO! end) |
|---|---|---|
| TXD (PC → LOGO!) | 3 | 5 (RxD) |
| RXD (LOGO! → PC) | 2 | 2 (TxD) |
| RTS | 7 | 4 |
| CTS | 8 | 3 |
| GND | 5 | 7 |
| +5 V (USB cable only) | — | 8 |
Any reading above 5 Ω on a data line indicates a fatigued conductor; replace the cable. If the test passes but the fault persists, swap the cable with a known-good spare to isolate the LOGO! front socket from the cable.
8. Solution 4: Configure LOGO! Soft Comfort Communication Settings
The default LSC settings suffice for the OBA6 firmware, but a manual override is required when a third-party USB-to-serial adapter is in use or when the COM port has been re-enumerated:
- In LSC, open Tools → Options → Interface.
- Set the Interface drop-down to Serial (or USB if using the USB cable).
- Set the COM port manually to the value shown in Device Manager. Pin the value below COM10 to avoid Windows' reserved-name collision on systems with aggressive name mangling.
- Set the baud rate to 19200, parity None, data bits 8, stop bits 1, flow control Hardware (RTS/CTS). These values match the LOGO! 8 OBA6 firmware default documented in the LOGO! Soft Comfort V8.3 Operating Manual (109811612), section "Communication parameters".
- Tick Autodetect to allow LSC to negotiate against the LOGO! once the link parameters are confirmed.
- Click Test connection. A successful test returns "LOGO! found, firmware x.xx.xx".
9. Solution 5: Migrate to the LOGO! USB Cable
Switching to the USB cable (MLFB 6ED1 057-1DA00-0BA1) eliminates three of the seven root causes listed above: the COM-port lock, the DB9 connector damage, and the baud-rate negotiation drift. The migration is one-way; the RS232 cable is obsolete and no longer orderable through Siemens regional stocking.
- Connect the USB cable to the PC. Windows Update retrieves the CP210x driver automatically on Windows 10 1909 and newer. On isolated networks, pre-stage the driver from the Silicon Labs website (v6.7.10 or later for Windows 11 24H2).
- Verify that Device Manager shows "Silicon Labs CP210x USB to UART Bridge (COMx)".
- In LSC, change the interface to USB and run Autodetect.
- If the autodetect returns "No LOGO! found", swap the cable's orientation at the LOGO! end; the 8-pin mini-DIN has a keyway that is easily inserted 180° off, in which case the LOGO! powers the cable but cannot handshake.
- Pin the COM number through Device Manager → Port → Properties → Advanced → COM Port Number to a value below 10 to prevent renumbering after sleep/wake.
10. Verification Procedure
After applying any of the fixes above, validate the link end-to-end:
- Power-cycle the LOGO! (remove the 230 V AC supply for 5 seconds, restore).
- Open LSC and load the existing circuit program (File → Open).
- Press F5 (PC → LOGO! transfer). The status bar must read
Transfer in progressfollowed byTransfer successful. The dialog must not read "Data transfer is busy" at any point. - On the LOGO! display, confirm that the program version banner appears (e.g.
Prog: V1.0.0). - Toggle one digital input and verify the corresponding output on the LOGO! status screen. This confirms that the program is actually executing in the module, not just transferred to RAM.
- Close and re-open LSC, then repeat the transfer. A persistent success across two consecutive sessions proves the COM port lock has been cleared, not merely masked for the first session.
- Save the LSC project with a versioned filename (e.g.
MyMachine_V1.1.lsc) and back up the project to a network share — losing the only copy of the FBD on the LOGO! is the most common follow-on fault after a download failure.
11. Troubleshooting Matrix
| Symptom | Likely Root Cause | Primary Fix | Fallback |
|---|---|---|---|
| "Data transfer is busy" on every attempt | COM port held by another process | Run mode COMx:9600,8,N,1, kill owning PID |
Unplug and replug the cable |
| "Data transfer is busy" only on second attempt | Previous LSC instance still running | Task Manager → End LSC.exe and LscSrv.exe
|
Delete *.lock files in LSC temp folder |
| "Data transfer is busy" + "Communication error" | Defective RS232 cable | Continuity test, replace cable | Migrate to USB cable 6ED1 057-1DA00-0BA1 |
| LOGO! in PARAM mode, "Data transfer is busy" | Front keypad has precedence | Press ESC until RUN/STOP | Clear password if locked |
| "No LOGO! found" after Autodetect | Cable inserted 180° rotated | Rotate connector, check keyway | Replace cable |
| "Data transfer is busy" intermittent, COM number changes | USB enumerator renumbering | Pin COM number in Device Manager → Advanced | Disable USB selective suspend for hub |
| "Access denied" then "Data transfer is busy" | Unsigned driver on Windows 11 | Install signed CP210x v6.7+ driver | Disable driver signature enforcement in test mode |
| "Data transfer is busy" after firmware update | LOGO! in bootloader mode | Power-cycle, re-attempt transfer | Run Tools → Firmware Update to exit bootloader |
| Error appears only on Ethernet-attached 230RCE | S7-compatible port 102 listening, no LOGO! protocol handler | Use the LOGO! webserver port (port 80/443) or transfer via USB | Disable any active OPC UA client temporarily |
12. Frequently Asked Questions
What does the "Data transfer is busy" message in LOGO! Soft Comfort mean?
It means LSC's communication thread could not acquire exclusive control of the COM port bound to your programming cable. The error originates on the PC side (port lock, driver, or cable) rather than inside the LOGO! module, and does not indicate a corrupted program. Free the port with mode COMx:9600,8,N,1 or restart the LSC service, then retry the download.
Why does the error appear even when I use the original Siemens RS232 cable?
The original LOGO! RS232 PC cable (MLFB 6ED1 057-1AA00-0BA0) is mechanically fragile at the DB9 strain relief and is now obsolete. Internal conductor breaks allow the COM port to open without error but stall the handshake, which LSC reports as a busy target. Test continuity between the DB9 and the 8-pin mini-DIN pins, or migrate to the USB cable (MLFB 6ED1 057-1DA00-0BA1).
Does the LOGO! need to be in RUN mode to receive a download?
The LOGO! must not be in PARAMETER mode; RUN or STOP are both accepted. LSC performs a clean halt of the LOGO! scan during the transfer window and resumes execution afterwards. If the LOGO! is password-locked, enter the password before pressing F5 in LSC.
Can I use a USB-to-RS232 adapter instead of the original cable?
Yes, but use only adapters with a signed Windows 11 driver (CP210x v6.7+ or FTDI v2.12.36+). Pin the COM number in Device Manager → Advanced to a value below 10 to prevent renumbering after sleep, and configure LSC's interface settings to 19200, 8-N-1 with hardware flow control. Adapters without a working RTS/CTS loop will produce "Communication error" instead of a clean transfer.
How do I find out which process is holding my COM port?
Open Resource Monitor (resmon.exe) → CPU tab → expand Associated Handles, search for \Device\Serial or the COM number. The owning PID is shown on the right; kill it in Task Manager. On Windows 11 23H2 the mode command has been deprecated, so use the PowerShell snippet in section 5 to enumerate ports and cycle the device.
Will migrating to the LOGO! USB cable prevent this error in the future?
In most cases, yes. The USB cable (6ED1 057-1DA00-0BA1) uses a dedicated CP210x chipset that integrates the USB stack, eliminating the legacy DB9 connector and most driver enumeration issues. Pin the COM number below COM10 in Device Manager → Advanced to prevent Windows from renumbering it after sleep/wake cycles, which is the residual failure mode specific to the USB cable on Windows 11.