Skip to the content
2 layers139 × 139 mmScreen driver, the printed circuit board in 3D

graphical display on old neon plasma screen

Size
139 × 139 mm
Copper layers
2
Thickness
1.6 mm
Parts
285
Nets
426
Pads
1,044
Tracks, vias
3,603, 497
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
26 Apr 2022
Updated
19 Oct 2022

Overview

Screen driver is an open-source printed circuit board by lambdaBoost, from the lambdaBoost/MC6205-graphical-display repository on GitHub. It is a 2-layer board of 139 × 139 mm with 285 parts on 426 nets, routed with 3,603 tracks and 497 vias.

It is built around the SC0915, TSR 1-2450 and TLP627(F), with the CD4017BE, 74HC595 and MPSA42 among its other parts. Its parts include 218 resistors, 33 transistors, 13 ICs, 10 connectors and 6 capacitors. It belongs with the lEDs and displays boards of this library.

Main components

7

README

README.md

MC6205-graphical-display

graphical display on old neon plasma screen.

I'm showing this because it's funny - tracking wrecked Soviet era vehicles on a Soviet era device. Also, note the dead display line on the 'abandoned' section. We'll fix that later.

This is a two part project using the Soviet Ukrainian MC6205 plasma display. Part 1 uses the unaltered device with an ESP32 in order to display text info from any suitable webpage or API. Part 2 will convert the device into a full graphical display (ie not just text).

MC6205 Intro

The device itself is a monochrome neon plasma display, produced throughout the 1980s and early 1990s in Soviet Ukraine. It is capable of displaying text on a 100x100px screen. This is achieved by supplying appropriate serial inputs to the 64 pin connector on the base of the display. Included in the package is an EEPROM which converts the serial inputs into text characters. This unfortunately mean the MC6205 is only capable of displaying text, but part 2 will see me re-wiring and adding a custom PCB to allow for full graphical display.

Vehicle Loss Tracker

To demo part 1, I'm using the device to provide live updates on Russian vehicle losses. Data is from the excellent Oryx loss tracker

Fortunately someone else did the hard work and wrote an arduino library arduino library to display text to the display, so all I needed to do was hook it up to the ESP32 (following the instructions from the linked repo).

Data is provided by a custom API which runs on a seperate machine. In my case, the API runs from a raspberry pi and is queried by the ESP32. This avoided having to attempt to parse the webpage in Arduino...which would be a nightmare. The code for part 2 will be in Micropython which I find much easier to work with.

For now, the setup is wired up via a breadboard. When part 2 is complete it will be entirely contained in the original enclosure.

It's a clock too, because why not.

Prerequisites

To build the vehicle tracker display in the exact format shown here you will need:

  • MC6205 display. Available on ebay...but they are gradually getting more and more expensive!
  • Raspberry pi with docker installed
  • SN74HC595 shift register
  • ESP32 WROOM development board
  • A lot of hookup wire
  • MS6205-arduino-library installed in your Arduino libraries folder
  • 12v power supply (mine is 1A)

Instructions

To build the vehicle loss tracker do the following:

  • Hook up the MC6205 to the ESP32 and 12v power supply as detailed in holzachr's repo
  • clone this repo to the raspberry pi
  • on the pi, cd into the web-scraper directory
  • then build and run the docker container with: docker-compose up -d
  • the API should now be active - note the pi's IP address (ifconfig)
  • open the file at /mc6205/vehicle_loss_tracker.ino
  • edit the first 3 lines (after the library imports) to include the correct IP address for the pi, your wifi network SSID and your wifi password (this is a lazy way of getting credentials - I'll add a proper wifi manager later).
  • upload the edited .ino file to the esp32. I had to disconnect GPIO12 during the upload for it to work.
  • Enjoy!

Parts

285
QtyValueFootprintReferences
100330kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR100, R102, R103, R104, R105, R106, R107, R108, R109, R110, R111, R119, R120, R121, R122, R123 +84
100390kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1, R10, R11, R12, R13, R14, R15, R16, R17, R169, R170, R171, R172, R173, R174, R175 +84
32MPSA42Package_TO_SOT_THT:TO-92_InlineQ1, Q2, Q10, Q11, Q12, Q13, Q14, Q15, Q16, Q17, Q18, Q19, Q20, Q21, Q22, Q23 +16
12RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR51, R52, R53, R54, R55, R56, R57, R58, R59, R60, R101, R112
6C_SmallCapacitor_THT:C_Disc_D3.8mm_W2.6mm_P2.50mmC1, C2, C3, C4, C5, C6
4330Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR113, R114, R115, R116
4TLP627Package_DIP:DIP-4_W7.62mmU2, U3, U12, U13
3, ,
3YH5504KH01soviet:YH5504KH01U7, U8, U11
2CD4017BEPackage_DIP:DIP-16_W7.62mmU5, U6
1100Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR118
110kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR117
174HC595Package_DIP:DIP-16_W7.62mmU9
1ANODE - EVEN 2-60Connector_PinHeader_2.00mm:PinHeader_1x40_P2.00mm_VerticalJ2
1ANODE - EVEN-62-100Connector_PinHeader_2.00mm:PinHeader_1x20_P2.00mm_VerticalJ3
1ANODE - ODD 1-59Connector_PinHeader_2.00mm:PinHeader_1x40_P2.00mm_VerticalJ8
1ANODE - ODD 61-99Connector_PinHeader_2.00mm:PinHeader_1x20_P2.00mm_VerticalJ9
1BC547Package_TO_SOT_THT:TO-92_InlineQ33
1Barrel_Jack_SwitchConnector_BarrelJack:BarrelJack_HorizontalJ1
1CATHODE - EVEN - 42-100Connector_PinHeader_2.00mm:PinHeader_1x40_P2.00mm_VerticalJ4
1CATHODE EVEN 2-40Connector_PinHeader_2.00mm:PinHeader_1x12_P2.00mm_VerticalJ6
1CATHODE ODD 1-39Connector_PinHeader_2.00mm:PinHeader_1x12_P2.00mm_VerticalJ7
1CATHODE ODD 41-99Connector_PinHeader_2.00mm:PinHeader_1x40_P2.00mm_VerticalJ5
1Conn_01x05_MaleConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ10
1R_PotentiometerPotentiometer_THT:Potentiometer_Vishay_T73YP_VerticalRV1
1SC0915SC0915:MODULE_SC0915U1
1TSR_1-2450Converter_DCDC:Converter_DCDC_TRACO_TSR-1_THTU4
1level_converterdaughter_boards:level_shifterU10

The 284 most common of 285 parts.

Similar boards

  • 2 layers90 × 44 mmNixie clock, the printed circuit board in 3D

    Nixie clock

    snakeye/nixie-clock

    Nixie clock based on ESP32-C3 Super Mini module and Soviet IN-14 tubes

    22 parts
  • 2 layers141 × 111 mmSensei, the printed circuit board in 3D

    Sensei

    lennartquerter/euro-rack-synth

    Lenimal Github for DIY for a Eurorack Synth

    138 parts13
  • 4 layers207.6 × 134.7 mmND-03, the printed circuit board in 3D

    ND-03

    bitsoko-services/narra

    This repository contains hardware designs and software for Narra, an open source, BLE advertising and control, LED signage platform. The project utilises the ESP32 and the ESP-IDF framework.

    130 partsApache-2.0
  • 2 layers185 × 82 mmDisplay board, the printed circuit board in 3D

    Display board

    Majklzbastlirny/NixieClock

    ESP-IDF firmware for a 6-tube multiplexed ESP32 nixie clock (WiFi/SNTP, Home Assistant, web UI, alarm, temperatures)

    112 parts1GPL-3.0
  • 2 layers156.5 × 67.5 mmNixieScanDisplay, the printed circuit board in 3D

    NixieScanDisplay

    profdc9/NixieClock

    A Nixie clock that uses IN-14 tubes and very generic components that can be easily sourced.

    106 parts10
  • 2 layers152 × 55 mmOpenNixie, the printed circuit board in 3D

    OpenNixie

    bclswl0827/OpenNixie

    Nixie Clock for everyone!

    74 parts4MIT
  • 2 layers146.7 × 95.3 mmNixieClock, the printed circuit board in 3D

    NixieClock

    gztproject/NixieClock

    Firmware for ESP8266 based nixie tube clock

    53 parts4MIT

Questions

How big is the Screen driver PCB?

It measures 139 × 139 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Screen driver use?

285 parts, built around the SC0915, TSR 1-2450, TLP627(F) and CD4017BE. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Screen driver KiCad files?

From the lambdaBoost/MC6205-graphical-display repository on GitHub, at the commit this page was made from: the board is full-graphical/PCB/screen-driver/screen-driver.kicad_pcb and its schematic full-graphical/PCB/screen-driver/screen-driver.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Screen driver design in my own project?

Its repository states no licence, so its author keeps all rights: ask lambdaBoost before reusing the design.