Connecting AutomationDirect CLICK PLC to Ethernet via Modbus

Brian Holt10 min read
AutomationDirectSerial CommunicationTutorial / How-to
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Overview

The AutomationDirect CLICK series PLC C0-00DD1-D is a compact, low-cost micro-PLC with 8 DC inputs and 6 relay outputs. The unit ships with an RS-232 Modbus RTU communications port (RJ12 jack) and does not include a native Ethernet port. Engineers who need to integrate this controller into an Ethernet-based SCADA, HMI, or IIoT network must add a Modbus TCP / Modbus RTU gateway (also called a serial-to-Ethernet bridge or protocol converter).

This reference walks through the exact port specification, the wiring pinout, the limitations of "transparent" RS-232-to-Ethernet converters, the correct gateway feature set, and the commissioning sequence for both the PLC side and the PC/SCADA side. The procedure is field-proven for the C0-00DD1-D but applies to any CLICK CPU that exposes only an RJ12 RS-232 port.

Port clarification. The CLICK C0-00DD1-D exposes RS-232, not RS-485. Some sibling CLICK models (e.g., C0-00DR-D, C0-08SIM) use RS-485; verify the port type stamped on the front of the unit or in the C0-00DD1-D specification sheet before selecting wiring or gateway hardware.

CLICK C0-00DD1-D Hardware Specifications

The data below comes from the official AutomationDirect C0-00DD1-D spec sheet and the CLICK user manual. Pin numbering follows the CLICK hardware manual convention (port 2 RJ12 jack).

Parameter Value
Discrete inputs 8 × 24 VDC sinking/sourcing selectable
Relay outputs 6 × Form A, 2 A @ 250 VAC / 30 VDC
Power supply 24 VDC external
Communications port 1 RS-232, RJ12, Modbus RTU slave (default)
Communications port 2 Not present on C0-00DD1-D (basic CPU)
Baud rates 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200
Default baud / parity 19200 baud, even parity, 8 data bits, 1 stop bit
Programming port Same RS-232 port (uses CLICK software)
Ethernet port None (requires external gateway)

Understanding the Communication Problem

A common field issue is buying a generic "RS-232 to Ethernet" device and expecting the CLICK to suddenly speak Modbus TCP. This does not work because:

  1. Modbus RTU and Modbus TCP use different framing. Modbus RTU is a serial protocol with 3.5-character silence delimiters and a 16-bit CRC; Modbus TCP embeds the same PDU inside a 7-byte MBAP header on TCP port 502.
  2. A transparent serial tunnel (such as a generic terminal server) simply forwards raw bytes. The CLICK responds with Modbus RTU frames, but a generic tunnel has no way to present those frames as Modbus TCP to a SCADA client.
  3. The PC-side client usually polls Modbus TCP registers. Without a gateway that terminates Modbus TCP, builds a Modbus RTU request, forwards it to the CLICK, and converts the reply back, the polling master sees only "no response" or "illegal function" errors.

The required device is a Modbus TCP/RTU gateway (sometimes marketed as a "protocol converter" or "Modbus bridge"). It owns the TCP socket on one side and the RTU master/slave role on the other.

Prerequisites

  • PLC: AutomationDirect CLICK C0-00DD1-D (or any CLICK CPU with an RJ12 RS-232 port).
  • Programming software: CLICK programming software (free download from AutomationDirect). Used to confirm Modbus RTU settings and registers.
  • Gateway: A Modbus TCP <-> Modbus RTU gateway with an RS-232 (RJ12 or DB9) serial port. Tested/validated families: Moxa MGate MB3170, MB3270, MB3180; Digi One IAP; ICP DAS MGE-712D / tGW-700 series; Red Lion CR3000 with custom protocol script; AutomationDirect Stride SE-SL3010/SE-MD3010 industrial gateways.
  • Cables: CLICK RJ12-to-DB9 or RJ12-to-RJ12 (depends on gateway serial connector). Use shielded cable with the shield grounded at the gateway end only.
  • Network: Managed Ethernet switch or direct crossover link, static IPv4 addresses for both the gateway and the PC/SCADA client on the same subnet.
  • SCADA / client tool: Any Modbus TCP master (Modbus Poll, WinTech, Ignition, FactoryTalk View SE client, Kepware, etc.) for verification.

Step-by-Step: PLC-Side Configuration

  1. Wire the RJ12 jack on the CLICK to the gateway's RS-232 port. The CLICK RJ12 pinout (port 2) is:
    • Pin 1 = +5 V (do not connect)
    • Pin 2 = GND
    • Pin 3 = RXD (data into PLC)
    • Pin 4 = TXD (data out of PLC)
    • Pin 5 = CTS / RTS (varies by CLICK version; tie to pin 2 for simple 3-wire use if gateway has no hardware flow control)
    • Pin 6 = +5 V (do not connect)
  2. Use 3-wire RS-232 (TX, RX, GND). Connect CLICK pin 2 to gateway GND, CLICK pin 3 to gateway RXD, CLICK pin 4 to gateway TXD. Tie any RTS/CTS lines on the gateway back to its own side or disable hardware flow control on the gateway.
  3. Set the CLICK Modbus parameters using CLICK programming software. Under Setup > Com Port 1:
    • Baud: 19200 (or match the gateway's serial setting)
    • Parity: Even
    • Data bits: 8
    • Stop bits: 1
    • Modbus Station Address: 1 (must be unique on the RTU link)
    • Mode: RTU Slave (default)
  4. Download the project to the PLC. Disconnect the programming cable before testing the gateway link to rule out COM port contention.
  5. Power cycle the CLICK so the new serial parameters take effect.

Step-by-Step: Gateway Configuration

  1. Assign a static IP address to the gateway (e.g., 192.168.1.50/24) outside the DHCP pool. Most gateways ship with a default IP in the 10.x or 192.168.x range; consult the manufacturer's datasheet.
  2. Configure the serial side:
    • Baud rate / parity / data bits / stop bits: must match the CLICK exactly (19200 / E / 8 / 1 typical).
    • Serial mode: RS-232 (not RS-485).
    • Flow control: None.
  3. Configure the Modbus role:
    • On most gateways, the Ethernet side is Modbus TCP Server / Slave and the serial side is Modbus RTU Master. The gateway polls the CLICK at the configured station address on behalf of remote TCP clients.
    • Some gateways default to transparent TCP pass-through; explicitly select the "Modbus gateway" or "RTU master" mode.
    • TCP port: 502 (default for Modbus TCP).
    • Mapping: most gateways automatically translate function codes 01/02/03/04/05/06/15/16. If the CLICK exposes only function 03/06/16 in slave mode, restrict the gateway's allowed function codes accordingly.
  4. Set the polling timeout (typically 1000-3000 ms) and inter-character timeout (3.5 character times ≈ ~2 ms at 19200 baud). These settings govern how long the gateway waits for an RTU response.
  5. Save and reboot the gateway.

Step-by-Step: PC-Side Configuration

  1. Connect the PC to the same subnet as the gateway (e.g., 192.168.1.100/24).
  2. Open a Modbus TCP client (Modbus Poll is convenient for testing):
    • IP Address: 192.168.1.50 (gateway)
    • Port: 502
    • Connection: TCP/IP
    • Slave / Unit ID: 1 (must match CLICK Modbus station address)
  3. Issue a function 03 read against the holding registers exposed by the CLICK program. The CLICK Modbus address map is defined under Setup > Modbus Addresses in the CLICK software; for example, DS1-DS16 occupy holding registers 40001-40016 by default.
  4. Verify reads return valid data without "illegal data address" or "illegal function" exceptions. If reads return zeros, check station address, baud, and parity first.

Verification

Use the following checklist to confirm the link is healthy before handing off to production SCADA:

  • LEDs: Gateway serial activity LED toggles when the master polls. Ethernet link/activity LEDs steady green.
  • Wireshark capture: Filter on tcp.port == 502. You should see MBAP-framed queries from the SCADA host and replies from the gateway's MAC.
  • Latency: Typical round-trip at 19200 baud for one register is 25-40 ms. Polling 100 registers should complete under 1 second.
  • Stress test: Poll continuously for 30 minutes. Watch the gateway's serial-error counter (CRC errors, timeouts). Any non-zero count indicates wiring or parity mismatch.
  • Failure modes: Power-cycle the CLICK and confirm the gateway auto-reconnects within its configured timeout (usually < 5 seconds).

Troubleshooting Matrix

Symptom Likely cause Action
No response from Modbus TCP client Wrong gateway IP, gateway on different VLAN, TCP port 502 blocked Ping gateway from PC; verify firewall; check switch VLAN.
Gateway reports CRC errors Baud rate or parity mismatch between gateway and CLICK Re-read CLICK Setup > Com Port 1; match every parameter exactly.
"Illegal function (01)" exception CLICK slave does not support the requested function code Use only function 03/06/16 (the CLICK exposes 01/02/03/04/05/06/15/16 in slave mode; some CLICK firmware revisions restrict further).
"Illegal data address (02)" exception Modbus address not defined in CLICK project Open CLICK software, map DS/CT/C/Y registers under Modbus addresses, redownload.
Intermittent timeouts during long polls Inter-character timeout too short; RX/TX swap; missing GND Increase RTU timeout to 1000 ms; verify TX/RX are crossed (PLC TX -> gateway RX); ensure shield ground is bonded at gateway end.
PLC goes offline when gateway powers up RJ12 pin 1 or 6 shorted to data line; gateway driving +5 V into CLICK data line Use only pins 2, 3, 4. Insulate or trim pins 1 and 6 if they contact the jack.
Generic RS-232-to-Ethernet converter does not work Transparent tunnel does not speak Modbus TCP Replace with a true Modbus TCP/RTU gateway (see list above).

Selecting the Right Gateway

Field experience favors industrial gateways with metal enclosures, screw-terminal or DB9 serial ports, and explicit Modbus RTU master mode. The following families are commonly deployed with the CLICK series:

Gateway Serial side Ethernet Notes
Moxa MGate MB3170 1 × RS-232/422/485 (DB9) 1 × 10/100 Mbps Wide-temp model available; auto-routing between TCP masters.
Moxa MGate MB3270 2 × RS-232/422/485 2 × 10/100 Mbps (switch) Allows daisy-chain of multiple CLICK PLCs on one gateway.
Digi One IAP 1 × RS-232/422/485 1 × 10/100 Mbps Compact, well-documented Modbus routing.
ICP DAS MGE-712D 1 × RS-232 (RJ12 friendly) 1 × 10/100 Mbps Direct RJ12 option reduces wiring.
AutomationDirect Stride SE-SL3010 1 × RS-232/485 1 × 10/100 Mbps AutomationDirect support; same vendor as the PLC.
AutomationDirect Stride SE-MD3010 Modbus RTU to MQTT/Modbus TCP 1 × 10/100 Mbps Useful when sending CLICK data to cloud brokers.
Don't use transparent serial servers for Modbus. A device such as a generic USConverters RS232-to-Ethernet bridge forwards bytes without interpreting the Modbus RTU framing. The SCADA master polls with Modbus TCP and never sees a reply because the CLICK is responding in RTU, not TCP. Always select a gateway whose datasheet explicitly states "Modbus TCP to Modbus RTU conversion" or "Modbus routing."

Alternatives to a Gateway

If the application is greenfield rather than a retrofit, evaluate a CLICK-class CPU with native Ethernet before adding a gateway:

  • CLICK PLUS (C2 series): Adds a 10/100 Mbps Ethernet port, Modbus TCP client/server, and an HTTP/web-server block. Drop-in replacement footprint for many CLICK installations. See the CLICK PLUS product page.
  • BRX Do-more series: Native Ethernet, serial, and HSIO ports; supports Modbus TCP, EtherNet/IP, and HTTP. Refer to the BRX user manual and the AutomationDirect Ethernet configuration video.
  • Productivity series: Native Ethernet and Modbus TCP server; recommended for larger I/O counts.

Replacing the CPU eliminates the gateway, removes one failure mode, and gives direct access to the PLC's web configuration page from any LAN client.

Security Notes

  • Place the gateway behind a managed switch or firewall. Modbus TCP has no authentication by design; any host on the subnet can poll or write coils.
  • Disable unused services on the gateway (Telnet, HTTP, SNMP v1/v2) and change the default admin password before deployment.
  • If the PLC drives safety-relevant outputs, do not expose the gateway directly to an enterprise network. Use a DMZ or VPN.
  • Enable Modbus write protection on the CLICK CPU if the application should be read-only from the SCADA side.

Frequently Asked Questions

Does the AutomationDirect CLICK C0-00DD1-D have RS-485 or Ethernet?

The C0-00DD1-D has an RS-232 Modbus RTU port on an RJ12 jack. It does not have RS-485 or built-in Ethernet. Other CLICK CPUs may differ; always check the model-specific specification sheet before wiring.

Can I use a generic RS-232-to-Ethernet converter with the CLICK PLC?

No. Generic transparent serial tunnels only forward bytes and do not translate Modbus RTU framing to Modbus TCP. Use a true Modbus TCP/RTU gateway such as a Moxa MGate MB3170, ICP DAS MGE-712D, or AutomationDirect Stride SE-SL3010.

What serial settings does the CLICK PLC use by default?

The default is 19200 baud, even parity, 8 data bits, 1 stop bit, Modbus RTU slave, station address 1. Reconfigure under Setup > Com Port 1 in the CLICK programming software if needed.

What Modbus TCP port should I use when polling the gateway?

Use the standard Modbus TCP port 502. Set the unit/slave ID in the SCADA client to match the CLICK station address (default 1). Multiple SCADA clients can poll the same gateway as long as the gateway supports concurrent TCP masters.

Can I read and write CLICK data from a PC over Ethernet?

Yes. The gateway converts Modbus TCP requests into Modbus RTU function codes 01/02/03/04/05/06/15/16 against the CLICK slave. Map your CLICK variables under Setup > Modbus Addresses before attempting reads or writes.

Back to blog