[PK] is working on a very simple video card, meant to output 640×480 VGA with a cheap CPLD. The interface will be 5 Volt SPI, meaning there’s a ton of potential here for anyone wanting put a reasonable (and cheap) display in a microcontroller project. The project has come a long way, and his latest update showcases something that has only been done once before: color NTSC with programmable logic
The brains of the outfit is a $5, 100-pin CPLD from Xilinx. Apart from that, the rest of the components are a crystal, PLL, and an almost hilarious number of resistors for the R2R ladder. The one especially unique component is the 25.056815 MHz crystal – multiply by that by two, and it’s fast enough to drive a VGA monitor. Divide the crystal by seven, it’s the 3.579545 MHz you need for an NTSC colorburst frequency. That’s VGA and NTSC in a single programmable logic project, something the one FPGA project we could find that did color NTSC couldn’t manage.
The next step in the project is designing a PCB and figuring out the code for the framebuffer. [PK] put up a demo showing off both VGA and NTSC; you can check that out below.
The project featured in this post is an entry in The Hackaday Prize. Build something awesome and win a trip to space or hundreds of other prizes.
Ever since I received my PSOC 4 Pioneer kit from Cypress I have wanted to play with this little mixed-signal Programmable System-on-Chip (PSOC) developer board. I love developer boards, providing that they are priced in a way to entice me to not only open my wallet but also make time in a busy schedule. I think my kit was free after winning a swag bag from Adafruit that they themselves obtained at the Open Hardware Summit and gave away on their weekly streamcast. Ultimately it was the invitation to beta test datasheet.net which also was included in that pile of swag that led to my getting involved with Hackaday.
What is Programmable System On Chip?
So what is a PSOC 4? A quick summary is that it’s based on an ARM Cortex reduced instruction set processor (RISC) and is somewhat capable of supporting shields based on the Arduino footprint, and it also uses a bright red PCB that I have come to associate with a Sparkfun PCB. What doesn’t show is the fact that this programmable system on chip has programmable analog function blocks in addition to programmable digital logic blocks. There is also some supporting input/output circuitry such as a multicolored LED and a capacitive touch sensor directly on the PCB.
This is an intriguing amount of programmability, so much so that Newark/Element 14 highlighted a “100 projects in 100 days” event on it.
Enter the IDE
Over the years I have had to create or install many Integrated Development Environments (IDE) that linked hardware to software. Knowing that you had to, and how to, implement an IDE was part of being an engineer. Nowadays with the Arduino type environment the user has an IDE pretty much as soon as they click on the executable which I find to be one of the best aspects of the genre. It was so quick in fact that I was able to get my teenaged son into writing his first program even before he remembered to do massive eye-rolls and make sounds of utter disdain. He did give up however, just shy of learning how to have the Arduino make sounds of disdain on his behalf.
Before the Internet, computer enthusiasts needed to get their cat pictures, image macros, and animated gifs somehow. If only [Nate] was writing code back in the 80s: he created a video player for the Apple II, essentially turning the classic computer into a machine that can play one or two animated gifs.
Vintage microcomputers aren’t especially noted for a huge amount of RAM, or being very fast, so [Nate] needed to bring in some extra hardware to give his recently acquired Apple II+ a 64k RAM disk to store the gifs.
The gifs are loaded off the floppy drive after being converted on a PC with a Python script, reducing the resolution and colors to 280 x 192 pixels and an amazing rainbow of four colors. For some gifs, seen below, it’s actually slightly impressive an Apple II can pull off this trick. It’s amazing [Nate] got this thing to work, as well.
If you have an Apple II set up, you’re awesome. You should go peruse [Nate]’s git and make your own animated gifs for your awesome classic computer.
We’ve seen composite video out from AVR chips many times before. But we can’t remember coming across one that managed to produce a color signal. This project does just that, producing a color video signal from an ATmega168 without using external integrated circuits.
[CNLohr] is seen here showing off his accomplishment. You’ll remember him from the glass-slide PCB server project he’s been working on recently. This time around it’s a small piece of gaming hardware which he’s working on. But using four pins from the microcontroller, connected via resistors in parallel, he is able to generate a color NTSC signal without using a chip like the AD723.
After the break you can see the two minute demo in which he shows the game running for just an moment, then gives a general overview of how the signals are being built. There isn’t a ton of explanation, but he did post his code as well as a resource for you to teach yourself more about the NTSC standard. Maybe you can make a color version of that AVR tetris game?
Earlier this week I saw a video that was showing how some guys made some really cool bullet time effects with 15 tiny rugged awesome cameras called “GoPros”(that wasn’t a paid endorsement, they’re awesome). For those unfamiliar, the bullet time effect gained popularity from the first matrix movie. The footage slowed down to slow motion while [Neo] dodged some bullets, but the camera was still able to move around. To do this, they built a massive circular rig and mounted tons of cameras all around. Using these multiple angles, they were able to stitch together the scene in slow motion and “move” the camera.
The camera attachment can be seen attached to the right lens of the scope. It’s an old security camera which he already had on hand. The stock lens wasn’t going to bring the picture into focus, but he had some different optics on hand and one of them fit the bill perfectly. The rest of the project involves fabricating the adapter ring on his lathe. It slips perfectly over the eyepiece and even allows him a bit of adjustment to get the focal length right. The best view of this is shown off in the video after the break.
Video distribution amplifiers are used to amplify a video signal and split it into multiple outputs so multiple displays can be driven. They are also used to correct the gain of an incoming video signal. [Andrew] was having trouble with the video signal from an interferometer, and found the issue was caused by a low output gain. His solution was to build his own video distribution amplifier.
The THS7374 appeared to be the perfect chip for this application. It’s a four channel video amplifier IC, and only requires a few passive components to run. The only problem was the package: a 14 pin TSSOP with 0.65 mm pitch. Not fun to solder by hand, especially if you don’t have a PCB.
[Andrew]’s solution was to build his own breakout out of copper-clad board. He worked under a microscope and cut out a pattern for the part, then soldered 30 AWG wire to the pins to make connections. After cleaning off any copper that could cause a short, the board was working, and the video waveform looked great on an oscilloscope.
After testing, even more gain was needed. [Andrew] ended up cascading two of the amplifiers. This method of prototyping doesn’t look easy, but could be worth it when you need a single board.