Wednesday, 4th of August
This is NMPSERVER5
VBIT-Pi 3s ready for testing
At its simplest, the VBIT-Pi adds a teletext stream to a PAL video signal.
VBIT stands for 'Vertical Blanking Interval Teletext'. 'Pi' refers to the fact this board is for use with a Raspberry Pi. The original VBIT was ran from a XLINX board.
A Raspberry Pi can generate a valid teletext signal without a VBIT-Pi. You might like a VBIT-Pi if you want to add teletext to an existing video signal. A Raspberry Pi can only put teletext on it's own video signal, which is pretty neat but not very useful for anything practical (IMO). A VBIT-Pi can easily add teletext and wide screen signalling (WSS) to any composite PAL video signal.
I haven't made use of all the features of the ICs. With more software, the VBIT-Pi could also be used to generate closed captioning or Macrovision copy protection. It even has it's own colour bars generator!
The VBIT-Pi is based around the SAA7113 and SAA7121 ICs. The SAA7113 decodes the composite video signal into a digital signal the SAA7121 can process. During every video field, the Raspberry Pi fills a FIFO with teletext data. The SAA7121 then uses this data during the VBI to add to the video signal, which is then re-encoded and output.
The FIFO is made up of a RAM chip and a Multiplexer. Original designer Peter Kwan discovered that a 'real' FIFO IC with enough memory and at the right voltage had 64 pins and cost a fortune, so instead devised this system. During the active region of the video field, the multiplexer allows the Pi to write data to the RAM chip. When the VBI comes around and the SAA7121 needs the RAM, the multiplexer switches over so it can read the data. Fairly simple, but effective. And much cheaper than a 'proper' FIFO!
The original Pi's 3.3v rail was only capable of supplying 50mA, so the PCB has it's own 3.3v regulator to supply power from the 5v rail, which is capable of 200mA or more.
The Raspberry Pi generates the teletext datastream and controls the ICs via I2C. It also controls the multiplexer to swap the RAM between the SAA7121 and the Pi.
Peter Kwan's first VBIT
The VBIT circuit and PCBs 1 and 2 were designed by Peter Kwan.
The VBIT-Pi 3 board was designed by Nathan Dane and later improved by Nick Schollar.
You'll need the Kicad files and BOM, which can be downloaded here. Get the PCBs made by a prototyping service, which can easily be found online. You could try etching your own, but I don't recommend this.
All the parts required can be found in the BOM. Most of them can be purchased from Farnell, but the main video ICs will need to be found elsewhere. I get mine from UTSource, which can take a while, but seems to be the easiest method. Alternatively, you can e-mail me for a kit with a PCB and all necessary components (if available).
Soldering SMD components isn't really as difficult as it might seem, but you might like to practice on something less delicate first. You could use hot air, an oven or solder them by hand. I've tried both soldering by hand and using a reflow oven, the oven made ones look better but tend to require 'de-bridging' because I'm terrible at applying solder paste.
Install the VBIT-Py software on your Raspberry Pi using the instructions here.
Plug the board into the Raspberry Pi. You might like to use some PCB stand-offs but I never bother. Connect a video to the left-hand connector and a teletext TV to the right-hand one. The input signal needs to be a fairly decent PAL signal, so a camcorder, DVD Player or Freeview box would be a good idea. Run VBIT-Py on the Raspberry Pi. The video should appear on the TV screen and you should get teletext if you press 'text'.
If you get a dodgy video signal, one of the video chips might not be soldered down perfectly, or the crystal might be a bit off frequency. If you get a bad teletext signal or none at all, there might be a problem with the RAM or Muliplexer ICs.
If you'd like to buy a VBIT-Pi, please e-mail me. If enough people are interested I will build another run of boards.
If there's news about VBIT-Pis, it'll get added here.