# Non ASCII characters

**URL:** <https://community.br-automation.com/t/non-ascii-characters/12019>\
**Category:** Programming\
**Tags:** mapp-view, automation-runtime, plc\
**Created:** [July 20, 2026, 6:43am UTC](https://community.br-automation.com/t/non-ascii-characters/12019 "2026-07-20T06:43:08Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![NovotnyJ](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/novotnyj/32/3521_2.png) [@NovotnyJ](https://community.br-automation.com/u/NovotnyJ)\
**Post date:** [July 20, 2026, 6:43am UTC](https://community.br-automation.com/t/non-ascii-characters/12019/1 "2026-07-20T06:43:08Z")

</div>

Hello,

I have a Question about using WSTRING. How I can operate with WSTRING? I need to use Czech characters like “ěščřžýáíé”. I am not able to write any of these characters to watch (it’s just no typing).

AS 6.7:

- Var def: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/8/86eaa9e6cfa2b9eb1561a6821cb41b01d79d44d7.png)
- Watch: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/a/adae835571d0f50118f5eb9b77bd05118dcaa47b.png)
- MappView: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/f/f1cd13915ea72b7efd0560697ebb0fb10c75b028.png)
- Var def in AS Code: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/6/618b01aa7fb0250f47dcb32c659adbfde0b359b8.png)

AS Code: Always bad

- AS Code: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/f/f7789bc080ebd58b2517d9097fbba5e31602bc60.png)
- AS Code after reopen: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/5/54c0e17510f9de0f855afd6ea0f08ebda8a5c13c.png)
- Var def in AS6.7: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/7/75aa42d5eaa966b3baaaba4b17499ff705f74217.png) or ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/c/cf68f5d12cd544a7a761731902bb556cd84e78c4.png)
- Watch: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/7/7fcee860124f61f1af49e339eaa361c1ff87dc93.png)
- MappView: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/7/762d7fa4529c2a21eb857aa66a4c7eb23c2fb5d2.png)

MappView: It’s for now only way, how to write it.

- MappView: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/optimized/2X/6/6601aa1bbee34fab7c051e1d54af92229d08d673_2_690x58.png)
- Watch: ![obrazek](https://europe1.discourse-cdn.com/brcommunity/original/2X/2/26736a0cbc4bba977e77711736dffad530db9c9c.png) - It’s showing correct!!!

Some tips, how to do it correctly? Using \*.tmx files? I need it to use it also in ladder program.

---

<div class="post-metadata">

**Author:** ![corne.geerts](https://avatars.discourse-cdn.com/v4/letter/c/FF8800/32.png) [@corne.geerts](https://community.br-automation.com/u/corne.geerts)\
**Post date:** [July 20, 2026, 6:55am UTC](https://community.br-automation.com/t/non-ascii-characters/12019/2 "2026-07-20T06:55:22Z")

</div>

If you use mappView, you should use tmx files.  
tmx files are utf8 and you can watch the strings in mappView.  
In the AS-watch the string is only visible after converting it to c null terminated string with functions from the AsHttp library (httpUtf8ToString()).

---

<div class="post-metadata">

**Author:** ![NovotnyJ](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/novotnyj/32/3521_2.png) [@NovotnyJ](https://community.br-automation.com/u/NovotnyJ)\
**Post date:** [July 20, 2026, 1:11pm UTC](https://community.br-automation.com/t/non-ascii-characters/12019/3 "2026-07-20T13:11:32Z")

</div>

Ok. I solve MappView to use tmx files, so use string and ‘$$IAT/…’ and it’s PLC language independent 🙂

But it’s not solving using it in PLC program without MappView. I try “ArTextSysGetText”, but’s it’s not user friendly. I want some way, how to write in program/watch “ěščřžýáíé” without tmx and converting utf-8 to wstring in program.

---

<div class="post-metadata">

**Author:** ![christoph.hilchenbac](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/christoph.hilchenbac/32/423_2.png) [@christoph.hilchenbac](https://community.br-automation.com/u/christoph.hilchenbac)\
**Post date:** [July 21, 2026, 2:28pm UTC](https://community.br-automation.com/t/non-ascii-characters/12019/4 "2026-07-21T14:28:35Z")

</div>

Hi @NovotnyJ ,

i am not sure if i fully understand your question …

WSTRING is just a container for two-byte characters and doesn’t say anything about the character encoding inside.

So it’s up to the corresponding HMI, Browser, Client etc. what characters are shown.  
Typicall today’s Software expects [Unicode – Wikipedia](https://de.wikipedia.org/wiki/Unicode) or [UTF-8 – Wikipedia](https://de.wikipedia.org/wiki/UTF-8).

You can see what’s inside a WSTRING by overlaying it by an UINT - array:

```  
`VAR`  
` unicode : REFERENCE TO ARRAY[0..19] OF UINT;`  
` MyWstring : WSTRING[80];`  
` MyString : STRING[80];`  
`END_VAR`  
```

 ![image](https://europe1.discourse-cdn.com/brcommunity/original/2X/0/0f4c068b3d0955e209adb62e774666259cc75320.png)

The AS editors are not capable to handle two-character text files.  
To my knowledge AS uses [Windows-1250 – Wikipedia](https://de.wikipedia.org/wiki/Windows-1250) (some editors call that ‘ANSI’):

Since also the watch window can only interprete 1-byte strings it shows the hex digit instead, e.g. ‘š’ is $9a = 154 dec in Windows-1250 codepage.

→ you have to use the ‘$xxxx’ method in watch window

---

<div class="post-metadata">

**Author:** ![NovotnyJ](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/novotnyj/32/3521_2.png) [@NovotnyJ](https://community.br-automation.com/u/NovotnyJ)\
**Post date:** [July 22, 2026, 4:46am UTC](https://community.br-automation.com/t/non-ascii-characters/12019/5 "2026-07-22T04:46:46Z")

</div>

Hi @christoph.hilchenbac ,

I understand unicode, but I know the way, how to write it in code like `var := "ěščřžýáíé"` or in watch without `$xxxx`.

I try to copy string from watch and paste after and it’s break whole string. I have hope, that there is some way, how to do it, because the monitor show it correctly, but how do it in reverse.

---

<div class="post-metadata">

**Author:** ![christoph.hilchenbac](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/christoph.hilchenbac/32/423_2.png) [@christoph.hilchenbac](https://community.br-automation.com/u/christoph.hilchenbac)\
**Post date:** [July 22, 2026, 7:46am UTC](https://community.br-automation.com/t/non-ascii-characters/12019/6 "2026-07-22T07:46:41Z")

</div>

I tried experimenting a little more. The Watch window obviously uses [ISO 8859-1 – Wikipedia](https://de.wikipedia.org/wiki/ISO_8859-1) for WSTRING.

Some of the Czech characters are in there but not all.

There is a range of values that is not defined and AS uses the hex representation here.

The right codepage for Czech is [ISO 8859-2 – Wikipedia](https://de.wikipedia.org/wiki/ISO_8859-2).

**But** : when using STRING all characters can be seen. So it seem to use [Windows-1252 – Wikipedia](https://de.wikipedia.org/wiki/Windows-1252) - that’s weird.

I’m a little at a loss here. This seems like something you should take up with your local B&R support team.

(Edit: tests were done with AS 6.7.0.187 in German Windows 11)

---

<div class="post-metadata">

**Author:** ![kovarj](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/kovarj/32/537_2.png) [@kovarj](https://community.br-automation.com/u/kovarj)\
**Post date:** [September 14, 2026, 6:45am UTC](https://community.br-automation.com/t/non-ascii-characters/12019/7 "2026-09-14T06:45:13Z")

</div>

HI @NovotnyJ , is your issue answered? can you update us with final conlusion and maybe mark it as a solution?

---

<div class="post-metadata">

**Author:** ![NovotnyJ](https://dub1.discourse-cdn.com/brcommunity/user_avatar/community.br-automation.com/novotnyj/32/3521_2.png) [@NovotnyJ](https://community.br-automation.com/u/NovotnyJ)\
**Post date:** [September 19, 2026, 5:55am UTC](https://community.br-automation.com/t/non-ascii-characters/12019/8 "2026-09-19T05:55:15Z")

</div>

If I remember good, I skip using Wstring like this and instead of this I am using text system ‘$$IAT/..’ for all.
