Real-Time FPGA Finger Detection

The student projects that come out of [Bruce Land]’s microcontroller- and FPGA-programming classes feature here a lot, simple because some of them are amazing, but also because each project is a building-block for another. And we hope they will be for you.

This time around, [Junyin Chen] and [Ziqi Yang] created a five-in-a-row video game that is controlled by a pointing finger. A camera, pointed at the screen, films the player’s hand and passes the VGA data to an FPGA. And that’s where things get interesting.

An algorithm in the FPGA detects skin color and, after a few opening and closing operations, comes up with a pretty good outline of the hand. The fingertip localization is pretty clever. They sum up the number of detected pixels in the X- and Y-axis, and since a point finger is long and thin, locate the tip because it’s going to have a maximum value in one axis and a minimum along the other. Sweet (although the player has to wear long sleeves to make it work perfectly).

How does the camera not pick up the game going on in the background? They use a black-and-white game field that the skin-color detection simply ignores. And the game itself runs in a Nios embedded processor in the FPGA. There’s a lot more detail on the project page, and of course there’s a demo video below.

We love to follow along with Prof. Land‘s classes. His video series is invaluable, and the course projects have been an inspiration.

Continue reading “Real-Time FPGA Finger Detection”

Control The Real World With An Arduino-Enabled Minecraft Mod

Minecraft modding has become almost as popular as the block-based game itself, with tons of editors and tools available to create new kinds of blocks, mobs, and weapons. And now, with this mod framework that can talk to an Arduino, modders can build blocks that break out of the Minecraft world to control the real world.

While turning on a light from Minecraft is not exactly new, the way that MCreator for Arduino goes about it is pretty neat. MCreator is a no-code framework for building Minecraft mods, which allows modders to build new game capabilities with a drag and drop interface. The MCreator Arduino toolkit allows modders to build custom Minecraft blocks that can respond to in-game events and communicate with an Arduino over USB. Whatever an Arduino can do – light an LED, sense a button press – can be brought into the game. It’s all open-source and free for non-commercial use, which is perfect for the upcoming STEM-based summer camp season. We can think of some great projects that would really jazz up young hackers when presented through a Minecraft interface.

Continue reading “Control The Real World With An Arduino-Enabled Minecraft Mod”