A common complaints of beginners to microcontroller programming is the availability of DIY tools that do not require a parallel port. Using not much more than a couple of 74xx series chips and some protoboard, [Rue] was able to create an AVR programmer for less than the cost of some chips it can program – giving parallel programmers a run for thier money. [Rue] used Linux treat the ubiquitous PATA/IDE port as a parallel port. By having avrdude treat the programmer as an Atmel STK200, [Rue] was able to upload a blinky program to his AVR microcontroller through ISP. If anybody can think of an even lower cost unconventional solution give us a shout.
atmega147 Articles
Roll The D’Icey
Most of the dice related hacks we run into have to do with pseudo random number generation, but today we saw something different. This sleek looking jumbo die is actually a prize holding box opened by a secret sequence of rotations. Using an accelerometer and an ATmega 328 with a sub-micro servo to control the locking mechanism. Worried about the batteries going flat and losing your treasure indefinitely? Good news! The batteries are accessable without giving away the secret inside.
It also turns out that this is an update to an earlier project from the same laboratory, so be sure to check that out as well to see where this build came from. Code is available for anyone looking to make their own, as well as a useful parts list.
[via Hacked Gadgets]
Connecting A Nokia 3310 LCD Using An AVR
In this instructible, [wkter] takes us through the process of running a Nokia 3310 LCD display using an ATmega8. This instructible isn’t a beginners project as he assumes you already have a strong understanding of how to work with these components and their programming languages. He is very thorough with information though, providing datasheets, pinout diagrams, and source code. Once you get this down, you could go a little further and make Conway’s game of life.
Magically Repair AVR Chips
If you’ve ever spent time working with AVR microcontrollers you’ve probably set the fuse bits incorrectly at least once. The ATmega fusebit doctor will automatically repair the fuse bits and get you back in business until your next mishap. The ATmega8 that powers the device has the chip signatures for the ATmega family stored inside so it will automatically detect which chip you’re trying to ‘unbrick’. From there it looks up the correct fuse bits and resurrects the sick microcontroller. This is useful in recovering a chip that has serial programming disabled, used the reset pin as I/O, or just enabled an external clock without the necessary hardware to deliver on that feature.
This magic is taken care of by using High Voltage Parallel Programming. We’ve seen HVPP used in the Arduino rescue shield and it is a valuable feature of the AVR Dragon, our favorite AVR programmer, as well as others. Still, you can hardly beat the ease of plugging a dead chip into this board and pressing one button. Oh, did you brick a member of the ATtiny family? There’s a rescue board for those too.
[Thanks Stewe]
Human Tetris: Object Tracking On An 8-bit Microcontroller
Elaborating on an item previously mentioned among last weekend’s Cornell final projects list, this time with video:
For their ECE final project, [Adam Papamarcos] and [Kerran Flanagan] implemented a real-time video object tracking system centered around an ATmega644 8-bit microcontroller. Their board ingests an NTSC video camera feed, samples frames at a coarse 39×60 pixel resolution (sufficient for simple games), processes the input to recognize objects and then drives a TV output using the OSD display chip from a video camera (this chip also recognizes the horizontal and vertical sync pulses from the input video signal, which the CPU uses to synchronize the digitizing step). Pretty amazing work all around.
Sometimes clever projects online are scant on information…but as this is their final grade, they’ve left no detail to speculation. Along with a great explanation of the system and its specific challenges, there’s complete source code, schematics, a parts list, the whole nine yards. Come on, guys! You’re making the rest of us look bad… Videos after the break…
[G’day Bruce]
Continue reading “Human Tetris: Object Tracking On An 8-bit Microcontroller”
AVR Synth/sequencer
[youtube=http://www.youtube.com/watch?v=yHmhdiQ8Xko]
[kernelcode] has built this pretty slick looking sequencer/groovebox and shared the process with the world. At its heart you’ll find an AVR atmega168 along with a hand full of buttons and blue LEDs. He says the total cost was somewhere around £15-20, so that’s somewhere under $40 for the American readers. There are tons of great pics of the build and it looks like he’ll be uploading source code soon as well.
[via hackerfoundry.com]
Oscilloscope Doubles As A Serial Terminal
PC-based USB oscilloscopes are fast becoming all the rage. [Matt Sarnoff’s] Terminalscope takes the reverse approach, adapting an oscilloscope into a full serial terminal. You may have seen something similar before in the Dutchtronix/SparkFun O-Clock, but [Matt’s] project goes one further by adding a PS/2 keyboard port for full bidirectional serial communication, and with much sharper display resolution to boot.
The mostly VT-100 compatible Terminalscope is built around two AVR microcontrollers: an ATmega328P runs full-tilt to generate the video signal and handle serial I/O, while an ATtiny45 handles keyboard input to avoid interrupting the ’328’s duties. Rather than vector trace each character, a raster-scanning approach is used: the beam follows a fixed X/Y path (like a television), while modulating the Z input (beam intensity) to form an image. The device can be connected to a PC via serial port or USB-to-TTY adapter, or directly to another microcontroller to debug serial output.
We recently showed an oscilloscope being used as a multichannel digital logic display. The Terminalscope provides yet another use for this essential bench tool and could nicely round out a “poor man’s” testing setup. The schematic and full source code are available for download.