Skip to the content
2 layers119.4 × 116.8 mmTeletext In Vision Decoder, the printed circuit board in 3D

Teletext In Vision Decoder

avrovulcanxh607/teletext-decoder4

This repo is an attempt to open-source my teletext decoder.

Size
119.4 × 116.8 mm
Copper layers
2
Thickness
1.6 mm
Parts
79
Nets
87
Pads
298
Tracks, vias
397, 20
Pours
2
Routed
Yes
KiCad
KiCad 6 (file 20211014)
Created
14 Feb 2025
Updated
15 Jan 2026

Overview

Teletext In Vision Decoder is an open-source printed circuit board by avrovulcanxh607, from the avrovulcanxh607/teletext-decoder repository on GitHub. It is a 2-layer board of 119.4 × 116.8 mm with 79 parts on 87 nets, routed with 397 tracks and 20 vias.

It is built around the ATMEGA328-PU, LM1881 and 74HCT04D, with the L7805 among its other parts. Its parts include 28 capacitors, 18 resistors, 10 connectors, 6 ICs and 4 switches. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

4

README

readme.md

Teletext In Vision Decoder Board

This repo is an attempt to open-source my teletext decoder.

It was originally designed, tested, and even a few were sold by me in 2019.

You can see the original product page for it on my website.

You are now free to do whatever you like with this design and the firmware for it - except selling it. You are expressly forbidden to use these designs to create a product that you then go on to resell, unless I have given you written permission otherwise.

Disclaimer: the design and firmwares are offered completely as-is, with no warranty of any kind. I will no longer be offering support or assistance on this project, if you want to build one you must figure it out from the resources provided here.

Why are there so many different firmwares?

Because I have built various slightly different boards into different projects and cases for different purposes, and with different ancillaries. For example, there are code bases here which support LCD screens, IR remotes, thumbwheel selectors, serial remotes, etc. You'll probably need to try a few and modify them to suit your needs.

PCB Versions

There are three total versions of the decoder PCB. The first version was a prototype, and features a number of mistakes - I therefore do not recommend using it. Unless you're a complete masochist.

The first revision fixes the mistakes on the prototype and is ready to use.

The second revision swaps the Arduino Nano for a standalone ATMega328(p) chip. This makes it cheaper and easier for manufacture, but harder for programming/debugging - therefore I don't recommend this revision for the novice.

Notes

Depending on how you configure the ATMega328(p) in revision 2, you may omit the crystal Y2 and associated tuning capacitors.

You may also omit R17 and R18 - these are I2C pullup resistors, and I have yet to find a need for more pullup than already onboard the microcontroller.

You need not install the output circuitry for the S-Video or RGB outputs if you don't need those - on the other hand, if you only intend to use the RGB output you can probably get rid of the entire PAL coder circuit and just bridge the chip's RGB directly to the outputs.

Really, you only actually need the teletext decoder, video input circuitry, and the microcontroller - the rest depends on what you're using it for! I have shipped some very bare boards in specific circumstances!

Similarly, the board is designed to take a 9-15v DC input and regulate it down to 5v for operation - however, the LM7805 should really have a heatsink and can be unreliable. Personally I always bridge the regulator out and supply 5v directly from an external supply.

If you are having trouble getting colour to work on the PAL CVBS or S-Video outputs, you need to check the colour subcarrier frequency. Your crystal may require slightly different tuning capacitors. However I have found most TVs to be very forgiving of the subcarrier frequency.

If you do decide to do something cool with this design, please consider posting photos of it to Bluesky and tagging "@nmsni.co.uk", I would love to see it!

Also... consider kicking a quid or two my way at Ko-Fi. It took a fair bit of time to figure this out.

Parts

79
QtyValueFootprintReferences
15100nFCapacitor_THT:C_Disc_D4.3mm_W1.9mm_P5.00mmC1, C2, C3, C4, C5, C6, C14, C16, C17, C20, C23, C24, C25, C27, C28
775RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR2, R3, R5, R6, R7, R8, R9
6220uFCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC7, C8, C9, C10, C11, C12
4MountingHole_3.2mm_M3_PadMountingHole:MountingHole_3.2mm_M3_PadM3, M3, M3, M3
31kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR13, R14, R15
210kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR16, R17
210uFCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC13, C15
233pFCapacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mmC21, C22
2CCapacitor_THT:C_Disc_D4.3mm_W1.9mm_P5.00mmC18, C19
1100nfCapacitor_THT:C_Disc_D4.3mm_W1.9mm_P5.00mmC26
110kPotentiometer_THT:Potentiometer_ACP_CA6-H2,5_HorizontalRV1
116kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR10
127kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR1
14.43 MHzCrystal:Crystal_HC49-U_VerticalY1
14.7MResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR12
147kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR11
1680kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR4
174HCT04Package_DIP:DIP-14_W7.62mm_LongPadsU5
1ARDUINOConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ9
1ATmega328-PPackage_DIP:DIP-28_W7.62mmU6
1CXA1645PPackage_DIP:DIP-24_W10.16mm_LongPadsU2
1CXO_DIP14Oscillator:Oscillator_DIP-14X1
1CrystalCrystal:Crystal_HC49-U_VerticalY2
1ENTERButton_Switch_THT:SW_PUSH_6mmSW3
1I2CConnector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalJ8
1IR ReceiverConnector_PinSocket_2.54mm:PinSocket_1x03_P2.54mm_VerticalIR1
1L7805Package_TO_SOT_THT:TO-126-3_VerticalU4
1LM1881Package_DIP:DIP-8_W7.62mm_LongPadsU3
1LOGOAnything else:teletext inserter logoG***
1MISCConnector_PinSocket_2.54mm:PinSocket_1x06_P2.54mm_VerticalJ7
1PANELConnector_PinSocket_2.54mm:PinSocket_1x08_P2.54mm_VerticalJ11
1PDWNButton_Switch_THT:SW_PUSH_6mmSW2
1POWERLED_THT:LED_D5.0mmD1
1POWER INConnector_BarrelJack:BarrelJack_HorizontalJ5
1PUPButton_Switch_THT:SW_PUSH_6mmSW1
1RResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR18
1SAA5244APackage_DIP:DIP-40_W15.24mm_LongPadsU1
1SERIALConnector_PinSocket_2.54mm:PinSocket_1x04_P2.54mm_VerticalJ6
1SW_PushButton_Switch_THT:SW_PUSH_6mmSW4
1SYNCLED_THT:LED_D5.0mmD2
1TEXTLED_THT:LED_D5.0mmD3
1VIDEOConnector_PinSocket_2.54mm:PinSocket_1x10_P2.54mm_VerticalJ3
1Video InAV Connectors:rca_yellowJ1
1Video OutAV Connectors:rca_yellowJ2
1Y TRAPConnector_PinSocket_2.54mm:PinSocket_1x02_P2.54mm_VerticalJ10

Similar boards

  • 2 layers51.5 × 104.1 mmAnalog Video Comb Filter, the printed circuit board in 3D

    Analog Video Comb Filter

    goscickiw/Analog-Video-Comb-Filter

    Analog Composite Video to S-Video comb filter board using SAA4960, SAA4961 or SAA4963 integrated circuit

    82 parts9CC-BY-SA-4.0
  • 2 layers100.6 × 100 mmVersion current, the printed circuit board in 3D

    Version current

    oomlout/oomlout_oomp_project_src

    77 parts
  • 2 layers238 × 174 mmRevision 4, the printed circuit board in 3D

    Revision 4

    FredericSegard/MH6502_v4

    This is my masterpiece MH6502, 4th revision.

    121 parts3
  • 2 layers167.8 × 200.6 mmRandom Jazz Generator, the printed circuit board in 3D

    Random Jazz Generator

    telec16/modular-synth

    Little side project, don't expect much updates.

    132 parts16
  • 2 layers191.5 × 97.6 mmOpen Apple 1 SBC, the printed circuit board in 3D

    Open Apple 1 SBC

    davischris/OpenAC1

    This work is largely based on the work of Tor-Eirik Bakke Lunde (https://github.com/tebl/RC6502-Apple-1-Replica).

    72 parts4GPL-3.0
  • 2 layers160 × 100.3 mmZ80-IDE, the printed circuit board in 3D

    Z80-IDE

    dennis9819/Z8C-Homebrew-Computer

    To easily develop for my Z80 homebrew system, I designed a simple assempler development environment. This packs the following tasks into one script: zmac assembly object file creation (for xmodem upload) monitor file…

    62 parts2
  • 2 layers132.1 × 45.7 mmIPoS, the printed circuit board in 3D

    IPoS

    peterheinrich/InternetOverSpaghetti

    Transmitting IP packages over a pair of spaghetti thus demonstrating how media independent IP really is.

    42 parts342
  • 2 layers100 × 80 mmCwtrx, the printed circuit board in 3D

    Cwtrx

    hmatuschek/cwtrx

    Multiband QRP CW TRX based on the QCX

    137 parts19

Questions

How big is the Teletext In Vision Decoder PCB?

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

What parts does the Teletext In Vision Decoder use?

79 parts, built around the ATMEGA328-PU, LM1881, 74HCT04D and L7805. 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 Teletext In Vision Decoder KiCad files?

From the avrovulcanxh607/teletext-decoder repository on GitHub, at the commit this page was made from: the board is PCB Files/Teletext In-Vision Decoder.kicad_pcb and its schematic PCB Files/Teletext In-Vision Decoder.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Teletext In Vision Decoder design in my own project?

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