# PLC redundancy TCP IP and COM (radio)

**URL:** <https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [February 11, 2026, 9:19am UTC](https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897 "2026-02-11T09:19:49Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jesus\_Mariano\_Moreno](https://avatars.discourse-cdn.com/v4/letter/j/57b2e6/32.png) [@Jesus\_Mariano\_Moreno](https://forum.inductiveautomation.com/u/Jesus_Mariano_Moreno)\
**Post date:** [February 11, 2026, 9:19am UTC](https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897/1 "2026-02-11T09:19:49Z")

</div>

Hello,

In Ignition 8.1, I need to create redundant communication for a PLC, alternating between a TCP/IP connection and a COM port via Radio.

I've considered implementing this redundancy with a script that modifies the OPCItemPath of the tags to be made redundant, but I was wondering if there is a way to achieve communication redundancy natively in Ignition without needing to script.

I have also read about the `system.device.setDeviceHostname(deviceName, hostname)` function to change the IP via scripting, but this method doesn't work for me since the communication media are not the same.

Does anyone know if there is another way?

---

<div class="post-metadata">

**Author:** ![David\_Stone](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/david_stone/32/79749_2.png) [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Post date:** [February 11, 2026, 9:21am UTC](https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897/2 "2026-02-11T09:21:40Z")

</div>

Chuck a serial to TCP gateway on the COM device and use the `system.device.setDeviceHostname()`

---

<div class="post-metadata">

**Author:** ![Jesus\_Mariano\_Moreno](https://avatars.discourse-cdn.com/v4/letter/j/57b2e6/32.png) [@Jesus\_Mariano\_Moreno](https://forum.inductiveautomation.com/u/Jesus_Mariano_Moreno)\
**Post date:** [February 11, 2026, 9:34am UTC](https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897/3 "2026-02-11T09:34:04Z")

</div>

thanks, but I'm looking for a solution that doesn't involve scripting.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [February 11, 2026, 12:54pm UTC](https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897/4 "2026-02-11T12:54:07Z")

</div>

There's no native support for this in Ignition, any solution you come up with will likely involve scripting.

You could look at Kepware, but I'm not sure if their media level redundancy works across different media types or not.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [February 11, 2026, 1:23pm UTC](https://forum.inductiveautomation.com/t/plc-redundancy-tcp-ip-and-com-radio/113897/5 "2026-02-11T13:23:57Z")

</div>

If you make both connections Modbus RTU over TCP, my alternate Modbus module may suit your needs. It can maintain dual connections (alternating paths), then fall back to one path when the other fails.

> [@Automation Professionals' Advanced Modbus Driver](https://forum.inductiveautomation.com/t/automation-professionals-advanced-modbus-driver/41312/68):
>
> Automation Professionals is pleased to announce a new production release of the Advanced Modbus Module. For Ignition v8.1.x: v1.1.7.242701819 This includes a bugfix for the driver status problem mentioned in [comment #63](https://forum.inductiveautomation.com/t/automation-professionals-advanced-modbus-driver/41312/63) above. This includes the constrained Transaction ID feature requested in this topic:
