Example Board - Megatokio/kilipili GitHub Wiki

Boards i use for testing

I have a Pimoroni VGA board, which is just the reference implementation of the Scanvideo project and built one board with a GPIO pin assignment which better suits me.

Scanvideo reference board -DBOARD=vgaboard

Has RGB555 video output. SDCard is wired for 4-bit data and conflicts with serial port. Good for testing but i personally will not implement a 4-bit SDCard physical layer. Maybe someone else want's to.

My personal board -DBOARD=kiboard

Has RGB444 video output, SPI interface for SDCard, sigma-delta stereo audio output, 2 I²C ports to connect WII devices and a serial port. This what i'm targeting for.

GPIO assignment

    SDA I²C --- 0          Vbus --+
    SCL I²C --- 1          Vsys --+
              GND          GND
R0 VGA --4kΩ -- 2          x
R1 VGA --2kΩ -- 3          3V3 out
R2 VGA --1kΩ -- 4          x
R3 VGA --500 -- 5          28 --> Audio
              GND          GND
G0 VGA --4kΩ -- 6          27 --- I²C SCL
G1 VGA --2kΩ -- 7          26 --> Audio
G2 VGA --1kΩ -- 8          reset
G3 VGA --500 -- 9          22 --- I²C SDA
              GND          GND
B0 VGA --4kΩ-- 10          21 <-- serial port
B1 VGA --2kΩ-- 11          20 --> serial port
B2 VGA --1kΩ-- 12          19 --- SDCard SPI0
B3 VGA --500-- 13          18 --- SDCard SPI0
              GND          GND
  hsync VGA -- 14          17 --- SDCard SPI0
  vsync VGA -- 15          16 --- SDCard SPI0

I recommend for your own project to use the left side for VGA and SPI0 at GPIO 16..19 for the SDCard. All other GPIO positions can be assigned freely to your desired hardware.

The suggested resitors are slightly to low. You can fix the maximum signal level to 0.7V by adding a ~ 1k8Ω resistor parallel to the VGA color pin to ground. Or calculate yourself. :-)

The easiest way to connect a VGA connector is to buy a VGA-to-VGA cable and cut it in half. Then you have even two of them! :-)

For your custom board you need a board description, similar to the files in project folder /boards.