What subset of the ASCII/Unicode character set is supported by the VEX IQ Gen 1 LDC screen?

What text characters are supported on the character LCD screen of the VEX IQ gen 1 brain? In the testing I did, it seems it doesn’t support the full ASCII character set (which is fine, but it would be nice to have a character map chart of something).

  • More specifically, does it support all the printable basic ASCII character set (127 or less)? Or are some characters missing or rendered in a nonstandard way (and which ones)?

  • Are any of the extended ASCII characters supported? For example, the code page 852 characters that were once used on PCs to draw ASCII based GUIs in MS DOS.
    Code page 852 - Wikipedia

  • Are any of the ASCII control characters supported?

I tried something like the following, but the cursor did not go to the start of a new line as would be expected in most systems.


IQ generation 1 only has a very simple 6x8 bitmap font, ASCII 0x20-0x7F, although a few lesser used characters were replaced by some custom glyphs. We do not support cursor control characters for any of the VEX products on the screen, including V5, we don’t really consider them terminals in that sense.

IQ Generation 2 supports much more, the standard font we use contains 5349 glyphs and can be rendered at several sizes.


Slightly off topic but related.

VEXcode for V5 has a “console” class we don’t talk about much, this allows you to use the screen as output for printf or std::cout. You need to include another header and create one instance of the console class. For example,

#include "vex.h"
#include "vex_console.h"
#include <iostream>

using namespace vex;

// define console on V5 screen
vex::console     Console;

int main() {
    int count = 0;


    while(1) {
        std::cout << "Hello " << count++ << std::endl;
        // Allow other tasks to run

Output on the V5 screen for the above code would be as shown in the image below.
CR/LF cause a new line and scrolling, no other control characters (no VT100 or anything) are supported. But it’s useful for debug.

If you use it in another thread, call Console.init(); at the beginning to set correct text size.



Thanks for the detailed info. That is what I was looking for.