# Omron FINS Driver String Byte Order

**URL:** <https://forum.inductiveautomation.com/t/omron-fins-driver-string-byte-order/101882>\
**Category:** Ignition\
**Created:** [February 5, 2025, 3:50am UTC](https://forum.inductiveautomation.com/t/omron-fins-driver-string-byte-order/101882 "2025-02-05T03:50:32Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![bill.liu](https://avatars.discourse-cdn.com/v4/letter/b/9fc348/32.png) [@bill.liu](https://forum.inductiveautomation.com/u/bill.liu)\
**Post date:** [February 5, 2025, 3:50am UTC](https://forum.inductiveautomation.com/t/omron-fins-driver-string-byte-order/101882/1 "2025-02-05T03:50:32Z")

</div>

I am using an Omron NX CPU. The pair of characters in each 16 bit word are swapped when the String type is used in the OPC path - "ABCD" becomes "BADC". I tried all the Data Type Modifiers (@BE, @LE, @HL, @LH) but they don't have any effect. Is this behaviour expected?

As a workaround, I am using a derived tag to swap the byte order on reading and writing but ideally I wish the Omron FINS driver can handle this. In comparison, Kepware supports HiLo byte order, LoHi byte order,Only High byte and Only Low byte for their String data type.

---

<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 5, 2025, 4:10am UTC](https://forum.inductiveautomation.com/t/omron-fins-driver-string-byte-order/101882/2 "2025-02-05T04:10:07Z")

</div>

> [@String Format byte order](https://forum.inductiveautomation.com/t/string-format-byte-order/55276/4):
>
> Just so you don’t scratch your head for too long on this: s = "eRicep1 32" s = ''.join(c for pair in zip(s[1::2], s[::2]) for c in pair) s[1::2] and s[::2] will produce strings with even or odd characters ([1::2] = start from 1, stop at the end, step 2), zip will take one character from each, then it’s simply a matter of putting things in the right order. So, with "eRicep1 32", s[1::2] will be "Rcp 2" and s[::2] "eie13" zip("Rcp 2", "eie13") produces the pairs [('R', 'e'), ('c', 'i'), ('p'…

Related Thread.

---

<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 5, 2025, 1:08pm UTC](https://forum.inductiveautomation.com/t/omron-fins-driver-string-byte-order/101882/3 "2025-02-05T13:08:22Z")

</div>

The byte/word order modifies do not currently apply to String values - you'll have to look at workarounds like the one @David_Stone suggested.
