FPGA Snake Game Uses No VHDL At All

We’re really not supposed to start a feature like this; but this hack is awesome. It’s a game of Snake implemented by an FPGA dev board. It uses a 16×16 LED matrix as the display and an SNES controller for input. So far it sounds like a very normal version of the game. But as you start to hear how it works in the presentation after the break you fall in love with what’s going on here.

First of all, it’s not written in VHDL — the predominant programming language for FPGAs. Instead, [Darrell] used the schematic-only approach to build the logic. Okay, that’s starting to get more interesting. As he continues to explain the circuit we get to see how the control input works (pretty simple since the SNES controller uses a parallel-to-serial shift register) and how the display is multiplexed. But the actual game logic is where things really take off. Each pixel in the display has its own individual logic circuit. Basically every cell is its own processor which reacts both to what is passed into it, as well as to a random seed. That seed system is called the ‘bucket brigade’ and passes a chance to spawn a piece of food from one cell to the next. All of this together makes for one simple game that is eloquently executed. Continue reading “FPGA Snake Game Uses No VHDL At All”

Tubular POV Display

[Ryan]’s cylinder POV display is an amazing piece of work. Right now it’s impressive sitting on his workbench, but we’re sure it would be astonishing hanging above the middle of a dance floor. There are 64 RGB LEDs on this display and they’re certainly bright enough to liven up any space.

Power is provided through a slip ring. The ground is connected to the shaft of the motor [Ryan] picked up at an auto parts store. It’s an efficient way to do things, but the display can only be controlled by whatever image is stored in the ATMega1284’s flash memory. [Ryan] admits this isn’t an ideal setup so he’s working on a ZigBee or Bluetooth connection.

We’ve seen some amazing spinny POV cylinders, but [Ryan]’s build looks amazingly professional. All the board files, schematics and code are uploaded, as well as an image converter for BMPs and PNGs. Check out the demo after the break.
Continue reading “Tubular POV Display”

DIY Ultrasonic Plastic Welding

Here’s something that may be of interest to all the reprappers, vacuum formers, and other plastic fabbers out there: ultrasonic welding of plastics. If you’ve ever wanted to join two pieces of plastic without melting them together with acetone or screwing them together, [circuitguru] is your guy.

Ultrasonic welder setups are usually reserved for companies that don’t mind spending tens of thousands of dollars on a piece equipment. There are smaller versions made for heat staking – melting plastic pillars into rivets on the work piece – and [circuitguru] was lucky enough a somewhat reasonable price.

Because the heat staking gun was a handheld unit, a rotary tool drill press was put to work. The end result is a relatively inexpensive way to join two plastic parts without screws, glue, or solvents. The bond is pretty strong, too. Check out the video after the break to see [circuitguru] join two pieces of a plastic enclosure and try to tear them apart.

Continue reading “DIY Ultrasonic Plastic Welding”

NES Controller Uses Capacitive Touch Instead Of Buttons

Here’s one way to really keep the component count low. [David] developed an NES controller that doesn’t use any buttons. The copper clad has been milled to provide a pad which registers a button push based on capacitance. The board has a SIL header at the top, making it easy to plug into the Arduino board that reads the inputs.

[David] had trouble getting the Arduino pin read functions to respond fast enough for he NES console’s expectations. He ended up using commands to access the ATmega’s peripherals directly in order to achieve the target timing. Speaking of, he did his own sniffing of the communication scheme using a logic analyzer. The results of that work, as well as the board files and code are available at the site linked above. And there’s a demo of the controller used to play Super Mario Bros. in the clip after the break.

This is actually a tangential project using a PCB mill which he’s developing through Kickstarter. This certainly shows that the mills works as designed.  Continue reading “NES Controller Uses Capacitive Touch Instead Of Buttons”

Ball-in-maze Game Shows Creativity And Classic 8-bit Sound

[M. Eric Carr] built this a long time ago as his Senior Project for EET480. It’s an electronic version of the ball-in-maze game. We’ve embedded this video after the break for your convenience.

The game has just one input; an accelerometer. If you’re having trouble visualizing the game, it works the same as this Android-based version, but replaces the physical maze and marble with a virtual maze on the graphic LCD screen. This has huge implications. Instead of just recreating the maze on the screen, [Eric] designed a multi-screen world, complete with warp blocks, which adds difficulty to  finding a solution. It also means that multiple different mazes can be played if you get tired of playing the same level.

This game also features music. A separate PIC microcontroller uses PWM to push out the 8-bit sound heard in the video. From the YouTube comments we learned that [Eric] didn’t write the music himself, but we still appreciate the playback quality he achieves with his hardware.

Continue reading “Ball-in-maze Game Shows Creativity And Classic 8-bit Sound”

Complete Guide To Compiling OpenWRT

Regular reader [MS3FGX] recently wrote a guide to compiling OpenWRT from source. You may be wondering why directions for compiling an open source program warrant this kind of attention. The size and scope of the package make it difficult to traverse the options available to you at each point in the process, but [MS3FGX] adds clarity by discussion as much as possible along the way.

OpenWRT is an open source alternative firmware package that runs on may routers. It started as a way to unlock the potential of the Linksys WRT54G. But the versatility of the user interface, and the accessibility of the Linux kernel made it a must-have for any router. This is part of what has complicated the build process. There are many different architectures supported and you’ve got to configure the package to build for your specific hardware (or risk a bad firmware flash!).

You’ll need some hefty hardware to ease the processing time. The source package is about 300 MB but after compilation the disk usage will reach into the Gigabyte range. [MS3FGX] used a 6-core processor for compilation and it still took over 20 minutes for a bare-bones distribution. No wonder pre-built binaries are the only thing we’ve ever tried. But this is a good way to introduce yourself to the inner workings of the package and might make for a frustrating fun weekend project.

NES Controller Cannibalized For MP3 Player Enclosure

We know some folks are very upset by the scrapping on vintage hardware, so let’s all observe a moment of silence for this NES controller.

Now that that’s behind us we can live vicariously through [Burger King Diamond’s] project. He polished up the NES controller and repurposed it as an enclosure for a portable MP3 player.

His first step was to remove some of the yellowing of the plastic using Retr0brite. He admits it wasn’t bad to start with but now it’s sparkling like new. Next, he started planning how everything would fit in the case. Luckily the MP3 player operates with one AAA battery which leaves plenty of room.

Just above the A and B buttons you can make out an opening that he cut in the case for the MP3 player’s LCD screen. The bezel from the original case works well for cleaning the rough cut opening. The buttons on the controller have been patched into the controls on the MP3 board, and the opening for the controller’s cable now holds the headphone jack. There’s also a USB port mounted next to it for easy file transfers.

The one thing we would like to see is a rechargeable battery so you don’t need to open the case to top off the power. But all in all this is a fantastic build!