The serial console ui is a simple graphical endpoint for serial traffic that you can connect a device’s UART to. It forks of a separate process which display a new window with the serial port output. This window also handles interactive input, meaning that you can for example type commands to a command line interface provided by the software running in the emulated environment.

The console window supports limited VT100 emulation.


The ConsoleUI class is defined in The constructor takes no parameters.




Interface property that should be connected to a UART or serial model.


Connect to the EventInterface that will drive the console’s time. Normally the CPU or machine object.



Connect your UART to this interface.


As with all other models, problems not listed here should be reported to Terma as they may indicate bugs in the software.

  • The Console UI requires QT 4 to be installed (e.g. with your package manager) and any needed support libraries for QT. Thus the console in particular has a lot of extra dependencies over the rest of the emulator. If you are running this on specific systems and the console does not work, please report this to Terma.

  • The console always do VT100 emulation, the emulation cannot be disabled.

  • Only partial VT100 support exists. The supported CSIs include colors and cursor movements. Some CSIs may be missing.

  • The console does not echo input back automatically, this is typically done by the remote serial end. Consequently, you will not see any characters if you type them in the console and the remote does not echo back.

  • The console model will in normal mode poll the input at 100 Hz as the emulator at the moment of writing does not support the injection of asynchronous events. The 100 Hz polling is good enough for interactive use.