UBB-VGA
This is an effort led by Werner Almesberger to use the
UBB
(Universal Breakout Board), a few resistors, and a VGA cable to create a
workable VGA signal on the
Ben Nanonote.
What it can do
At present, the maximum resolution is 1024x768 with a refresh rate of 50 Hz:
Other resolutions possible include 640x480 and 800x600.
The 16 colors are generated from a binary channel for red, green, and blue
each, plus a binary luminance channel that affects all colors.
The hardware
The current design is based on the
Universal Breakout Board (UBB)
that plugs into the Ben's
8:10 card
slot. The MMC controller in the Ben's Jz4720 CPU is tricked into
considering the UBB-VGA board as a MMC/SD device and streaming the pixel
data at a rate of up to 56 MHz.
The pictures below show a prototype that connects directly to a VGA cable:
The circuit is very simple. It consists of UBB itself, ten resistors,
and the VGA cable:
Each of the three analog color channels uses three resistors for lowering
the 3.3 V logical voltage to the 0.7 V VGA level and for mixing in the
luminance (Y) signal. The tenth resistor pulls down the HSYNC/CMD
line, to fake the "not busy" signal the MMC controller expects to receive
from a MMC device when starting a block write.
The software
The driver currently runs in user space (with a lot of dirty tricks) and
blocks all other system activity while running.
It can display the test image shown above, the content of the LCD display,
or a PNM image.
The source code can be found
here.