hdmilight-v3
Publicesar/hdmilight-v3
Loading 3D model… large boards can take a moment.
This is a still-in-progress update to my hdmilight-v2 project.
Differences in this version:
- Everything is on a standalone board, no longer needs a Papilio FPGA board
- AVR CPU removed from FPGA design and replaced by a separate ARM Cortex MCU. The main reason for this change was to get more program memory. The FPGA had no more spare block RAMs. It also has the advantage of being a much more capable CPU and having live debugging via JTAG.
- Power supply switching for the LEDs. This version can power down the LED strips when not in use.
- Extra pins added to each LED output port, now have +5V, DAT, GND, CLK Currently it still only support 3-wire LED strips, but in the future it should be able to support 4-wire clocked strips
- Magical mystery connectors (vivepos / papix). The real reason I made this revision... a platform to experiment with my crazy ideas
Build instructions:
- Manufacture the HDMI receiver board that can be found in the 'board' directory (KiCad format).
- Open the 'fpga/hdmilight.xise' project in Xilinx ISE and generate a bit file.
- Edit the files under the config directory to configure the LEDs.
- Run 'make' in the top level directory, which will do the following:
- Build the firmware image
- Convert the text config file to binary format
- Append the config to the end of the FPGA bit file
- Flash the ARM microcontroller with the firmware
- Flash the FPGA config flash with the bit file
- Connect LED strips to output pins
- Open a serial terminal to the board (running "dmesg" is useful to see names of recently added serial ports)
- Connect HDMI source to receiver board
- It should now be working.
This version should now have feature parity with version 2, however it has not been tested very well yet.
Useful build targets:
- make firmware: build the firmware without flashing
- make firmware_flash: flash the last build to the ARM
- make fpga_program: reprogram FPGA without programming flash will be lost on thxt power-cycle
- make fpga_flash: reprogram the FPGA flash
- make fpga_flash_config: reprogram just the configuration part of the FPGA flash
Debugging the firmware:
- start openocd: openocd -f hdmilight-v3-openocd.cfg
- start gdb: arm-none-eabi-gdb
- in gdb, load firmware: file firmware/main.elf
- in gdb, connect to board: target remote :3333
Askabout this board
Sign in to ask
No comments yet. Be the first to ask about this board.