USB seven segment display module

This project is about an open source, USB based, 10 digit seven segment display unit. This unit is specifically designed to work with POS systems and banking applications. Initially, this system is developed to work with PC based systems, and later it was modified to work with other platforms and applications.

Final view of the USB seven segment display module

To simplify the communication interface this unit is designed to emulate a COM port in the host terminal. Because of this feature, this module can work with many systems without having any additional device driver(s).

To extend the scope of this unit, it also comes with an option to switch between "direct mode" and "API mode". In "direct mode" application or host device can directly send characters to the display unit over the emulated serial communication channel.

The "API mode" is intended to provide more extensive features with this unit. All the "API mode" functionalities of this display module are described in the API documentation at

The back side of the display module

This USB external display unit is designed around STM32F103CB MCU. The firmware of this display unit operates with most of the STM32F103 series MCUs, which including STM32 Blue Pill board.

The dimensions of the PCB is 149.6mm × 44mm and designed as two layer board. To overcome the PCB manufacturing cost, we employ many surface-mounted components into the design.

All the source code and design files related to this project are available at