Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

Running Nut/OS on Altera FPGA

Not many hobbyists dare to put hands on FPGA. But now there are tons of information and tutorials that almost any beginner can follow and master these monsters step by step. If you’re done with FPGA LED blinking projects, its time to do more serious projects that involve soft processors running real time OS. Micheal Fischer suggests his series of tutorials on how to setup Altera FPGA board to run Nios II soft processor and even run Nut/OS on it. Three part tutorials gently takes through all steps with rich explanations and visual guides. First part focuses on setting FPGA to run Nios II processor. Second part shows how to compile Nut/OS for soft processor upload it and debug. And in the third part of tutorial you’ll learn how to set up internet radio project and enjoy the musing in earphones. Continue reading

Controlling motor speed using FPGA

Chris continues his tour to FPGA/CPLD programming. This time topic covers a motor control using CPLD board. The idea is simple – read potentiometer value with on-board MAX150 ADC converter and according to its value generate PWM signal that is passed to motor control circuit. Along with motor rotation PWM signal is output to LED bar which gives visual intuition on motor speed and direction. Using CPLD instead of microcontrollers in motor control gives some benefits. Firs of all in CPLD there are hardware modules instead of software flow. So it is more robust and precise process. Another benefit is that you can create multiple hardware modules that work concurrently and thus give precise timing. Continue reading

Capturing ov7670 cam stream using papilio

Voelker have designed a bare-bones for line following robot. He attached an ov7670 camera module to papilio FPGA board and was able to send videos to PC using 30fps. To achieve this he scaled images down from 640×480 to 80×60. And still it took 3Mbaud com speed. He wrote a simple java program that takes data stream from COM port and combines in to display. His next plan is to do edge detection algorithm and apply it to line following robot. For a record, it he didn’t use any soft-core – all is programmed using VHDl and SystemC. Continue reading

FPGA driven PSP screen

PlayStation Portable (PSP) 4.3” screen is cheap true color TFT display. Florian wanted to make use of it and decided to interface display to his DE0-Nano board. He faced couple problems here. First was a difference of voltage levels on FPGA and display side. Since FPGA pins are tied to 3.3V and display require 2.5V he decided that difference is safe enough to drive LCD with 3.3V. Another problem were back-light voltage. It required 20V to light 7 LEDs in series. To solve back-light problem he assembled a boost regulator using LT1932 to rise voltage from 3.3V. He made a nice looking board with some traces less than 10 mils thick. Great job considering that Florian is just starting with FPGAs. Continue reading

Hand motion controlled game of bricks

Game of bricks is a classic game where you have to move a bar on bottom of screen to bounce ball which breaks bricks on top. Guys from Cornell university have designed another version of this great game. They used a DE2 FPGA board connected to VGA monitor. Instead of using mouse or keyboard they went with hand motion control. A CCD camera simply reads hand position images. Hand is recognized by using human skin detection algorithm. After this complex part is done there follow simple control commands like moving hands to sides moves the bar on screen. Hand going up and down speeds and slows bouncing ball. Continue reading

Arduino with FPGA power

What if combine FPGA speed and flexibility with Arduino simplicity. You get ZPUino. It is a great project that reached stable release 1.0. ZPUino is a soft processor running on FPGA. Probably not the first you say. But it is easy programmable by using modified Arduino IDE. Processor itself is 32-bit and is capable of running at speed of 100MHz. But most important part that unlikely in regular Arduino you can construct your own peripherals and other hardware using FPGA logic gates and other resources like memory hardware multipliers or other blocks. As we mentioned there is a ZPUino IDE based on Arduino IDE. So practically there is no learning involved… If you have FPGA hardware like Papilio 500 or Spartan3E Starter Kit around give it a try. Continue reading