• We recently switched our forum platform. If you experience any issues please email support@crystalfontz.com

635 - any plans for international charset?


New member
Hi. I stumbled upon this problem once before. The question comes first: are there any plans to support other language alphabets in the future? For example, support of Russian character set. Perhaps maybe a firmware upgrade?

I own an Epson VFD module that was pulled from a POS terminal and it uses CP-866 for that capability. But unfortunately, 635 is only limited to ASCII. I even have to pull apart and display any special characters manually:

switch (Char) {
                case '►':
                    SendCGRAMChar(0, 16);
                case '◄':
                    SendCGRAMChar(1, 16);
                case '«':
                    SendCGRAMChar(4, 16);
                case '»':
                    SendCGRAMChar(5, 16);
                case '█':
                case '▌':
                    SendCGRAMChar(8, 208);

Looking for additional LCD resources? Check out our LCD blog for the latest developments in LCD technology.


New member
Yes, I understand. But I was wondering if it were possible to improve the LCD firmware where it would decode the actual extended ASCII symbols automatically.

Currently, if you were to directly send '[' (91d in ASCII table) to the LCD, it would display 'Ä' (91d in the CGRAM table). Which is quite odd and which is why for these characters you would have to manually pull apart character-by-character and check if you need to manually send it to the display. I think my question was not clear. But this is what I am hoping to get answer for.

For example, the current code I use to send characters is:
// data array to send, 3 bytes
byte[] data = new byte[3];
            data[0] = (byte)col; // column
            data[1] = (byte)row; // row
            try {
                // getbytes function accepts array of characters. Char is the character we are outputting
                byte[] b = Encoding.ASCII.GetBytes(new char[] { Char });
                // ASCII int value
                data[2] = b[0];
            } catch { data[2] = 0; }
// send resulting packet
            SendPacket(0x1f, 3, data);

CF Tech

Unless the quantities were ~1000 per month, we would not be able to modify the firmware for you.

We do have a program where a company can put their own firmware into the processor on the CFA-635. Be forewarned that the processor is not very big (16KB Flask + 256B RAM).

You can write support@crystalfontz.com to inquire.