Various info - Read First

DISCLAIMER: This is educational only, so if you decide to do the same yourself then you are on your own, I can't be held responsible for any problems/issues/damage/injury that may occur if you decide to follow this and try it yourself.


CalRAM protection I have converted various test instruments to TFT LCD using the same design philosophy throughout.

At the heart of each conversion is the inexpensive STM32 "Blue Pill" development board, acting as a bridge between the instrument and a modern TFT LCD.
The firmware monitors the instrument's original display interface, decodes the incoming data stream, and reproduces the display on a high-resolution colour TFT.

By using the same hardware and software architecture across multiple instruments, new conversions can be developed quickly while maintaining a consistent design and user experience.


Rather than driving the LCD directly, the Blue Pill communicates with an LT7680 graphics controller over a high-speed SPI interface.
The LT7680A-R IC is a powerful embedded graphics controller with its own display memory, font engine and graphics acceleration, capable of driving high-resolution TFT LCD panels.

By offloading all display generation to the LT7680A-R, the STM32 only needs to send text and graphics commands, leaving the graphics controller to render characters, lines, shapes and images efficiently.

This approach provides smooth display updates, crisp text and a consistent platform that can be reused across many different instrument conversions.


The TFT panels themselves are bright, high-contrast IPS displays with excellent viewing angles, offering a significant improvement over the ageing LCDs, VFDs and CRTs found in many vintage instruments, while remaining readily available and inexpensive.
Over the instruments I have converted thus far I have only used two different models of TFT LCD:
https://www.buydisplay.com/bar-type-3-71-inch-240x960-ips-tft-lcd-display-spi-rgb-interface
https://www.buydisplay.com/bar-type-4-58-inch-320x960-ips-tft-lcd-display-spi-rgb-interface


I have a dedicated webpage for each conversion and associated YouTube video. In there you'll also find the BOM, instructions, gerbers and any other instructions so you can upgrade your own instrument.
There is also an dedicated Github resource for all my source code and compiled HEX files for each instrument:
https://github.com/Ian-Johnston?tab=repositories
The HEX file is located in the following sub-folder:  /VisualGDB/Debug/

Visual Studio 2022 & VisualGDB Visual Studio 2022 together with the VisualGDB plugin provides a professional development environment for the firmware.
VisualGDB integrates seamlessly into Visual Studio, allowing embedded STM32 projects to be edited, compiled and debugged without leaving the familiar Visual Studio interface.

It provides full project management, code completion, syntax highlighting, integrated build tools, source-level debugging, and direct programming of the target hardware via an ST-LINK debugger.

The ability to set breakpoints, inspect variables and registers, view memory, and single-step through the firmware greatly simplifies the development and debugging of complex real-time embedded applications.

By combining Microsoft's powerful IDE with the GNU ARM toolchain and STM32 development tools, VisualGDB offers a productive and stable environment for developing, testing and maintaining the TFT conversion firmware.

 

Programming the BluePill board:

Use an STLink V2 or V3 programmer, clone's should work.

Leave the Boot0 & Boot1 headers as default.

The following can be done with the BluePill in-place and my Pcb connected to the meter,
otherwise you will need +5v power to the BluePill board if doing standalone.

Connect using the SWD connector (the USB connector is not used):
SWDIO -> SWDIO
SWCLK -> SWCLK
GND -> GND
3.3V -> 3.3V (VREF)
NRST -> NRST

Method 1:
- Open STM32 ST-LINK Utility
- Target -> Connect
- File -> Open File
- Select .hex file
- Target -> Program & Verify
- Click Start

Method 2:
- Open STM32CubeProgrammer
- Select:
- ST-LINK
- Port = SWD
- Click Connect
- Open File
- Select .hex file
- Click Download