# What am I missing about reading ASCII from Modbus TCP in Ignition?

**URL:** <https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302>\
**Category:** Ignition\
**Tags:** perspective, scripting\
**Created:** [March 3, 2026, 8:47pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302 "2026-03-03T20:47:15Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![bryan.boone](https://avatars.discourse-cdn.com/v4/letter/b/ba8739/32.png) [@bryan.boone](https://forum.inductiveautomation.com/u/bryan.boone)\
**Post date:** [March 3, 2026, 8:47pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/1 "2026-03-03T20:47:15Z")

</div>

I have a modbus tcp device which outputs two ascii characters as a 16-bit unsigned int at one of its addresses. The rest of the address in this block are ordinary int16s. For the life of me I cannot find a way to cleanly treat the value of that tag associated with that HR or any derived tag as ascii characters. The closest I’ve come is using a transform script on a bound component in Perspective, but that does not feel ideal when, say, I might want to access that tag’s value in multiple places. What am I missing? Is there just no clean way to turn “01101000 01101001“ into “hi”? Do I need to write a somewhat complex expression to do this? What if I had 8 characters, or 16? What if I have to read a dozen different ascii values?

---

<div class="post-metadata">

**Author:** ![ryan.white](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/ryan.white/32/73193_2.png) [@ryan.white](https://forum.inductiveautomation.com/u/ryan.white)\
**Post date:** [March 3, 2026, 8:55pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/2 "2026-03-03T20:55:11Z")

</div>

Try [device]1.HRSxxxx:2 maybe?

> **[Modbus Specific Addressing​ - Modbus Addressing | Ignition User Manual](https://www.docs.inductiveautomation.com/docs/8.1/ignition-modules/opc-ua/opc-ua-drivers/modbus/modbus-addressing#modbus-specific-addressing)**
>
> Modbus doesn't support tag browsing, this means you cannot view the Tags in the Connected Devices window in the Designer or from the OPC Connections \> Quick Client in the Config section of the Gateway. | Manually Addressing a Modbus Device

---

<div class="post-metadata">

**Author:** ![dkhayes117](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dkhayes117/32/68344_2.png) [@dkhayes117](https://forum.inductiveautomation.com/u/dkhayes117)\
**Post date:** [March 3, 2026, 8:55pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/3 "2026-03-03T20:55:37Z")

</div>

Check your OPC Item Path to make sure it is [addressed](https://docs.inductiveautomation.com/docs/8.1/ignition-modules/opc-ua/opc-ua-drivers/modbus/modbus-addressing) properly for a string.

Next check the appropriate advanced device settings on the gateway

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/a/8/a8a73dbd90bb0080c4d08487b07dbded6a96ee04.png)

---

<div class="post-metadata">

**Author:** ![bryan.boone](https://avatars.discourse-cdn.com/v4/letter/b/ba8739/32.png) [@bryan.boone](https://forum.inductiveautomation.com/u/bryan.boone)\
**Post date:** [March 3, 2026, 8:56pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/4 "2026-03-03T20:56:14Z")

</div>

`toString(char({[.]modbusregister} >> 8)) + toString(char({[.]modbusregister} & 255))`

this “worked” in an expression tag for whatever value of “worked” you assign to this only covering the two-character case.

---

<div class="post-metadata">

**Author:** ![dkhayes117](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/dkhayes117/32/68344_2.png) [@dkhayes117](https://forum.inductiveautomation.com/u/dkhayes117)\
**Post date:** [March 3, 2026, 8:56pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/5 "2026-03-03T20:56:40Z")

</div>

Show us the OPC Item Path, you shouldn't need to do this.

---

<div class="post-metadata">

**Author:** ![bryan.boone](https://avatars.discourse-cdn.com/v4/letter/b/ba8739/32.png) [@bryan.boone](https://forum.inductiveautomation.com/u/bryan.boone)\
**Post date:** [March 3, 2026, 9:02pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/6 "2026-03-03T21:02:37Z")

</div>

![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/8/8/882ba7f9fdb686062d167fdb39ae1473f8784845.png)  
I understand how stupid integer→binary→ascii is, which is why I’m annoyed I’m doing it. Binary data got me nowhere because I can’t slice inside of expressions and I figured bitwise access was not the correct path.

This OPC Item path is derived from the block of Device Addresses I defined.

---

<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:** [March 3, 2026, 9:05pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/7 "2026-03-03T21:05:46Z")

</div>

> [@bryan.boone](#):
>
> This OPC Item path is derived from the block of Device Addresses I defined.

Don't use modbus address mapping in Ignition, only use direct modbus addressing.  
This will give you much more control to define addresses easily and correctly for your tags.

Using the `1.HRSxxx:2` notation will automatically read ascii from the register as characters.

---

<div class="post-metadata">

**Author:** ![bryan.boone](https://avatars.discourse-cdn.com/v4/letter/b/ba8739/32.png) [@bryan.boone](https://forum.inductiveautomation.com/u/bryan.boone)\
**Post date:** [March 3, 2026, 9:11pm UTC](https://forum.inductiveautomation.com/t/what-am-i-missing-about-reading-ascii-from-modbus-tcp-in-ignition/114302/8 "2026-03-03T21:11:21Z")

</div>

Awesome 😃
