Your desktop has two, four, or even eight cores, but when’s the last time you’ve seen a multicore homebrew computer? [Jack] did just that, constructing the DUO Mega, a 16 core computer out of a handful of ATMega microcontrollers.
From [Jack]’s description, there are 15 ‘worker’ cores, each with their own 16MHz crystal and connection to an 8-bit data bus. When the machine is turned on, the single ‘manager’ core – also an ATMega328 – polls all the workers and loads a program written in a custom bytecode onto each core. The cores themselves have access to a shared pool of RAM (32k), a bit of Flash, a VGA out port, and an Ethernet controller attached to the the master core.
Since [Jack]’s DUO Mega computer has multiple cores, it excels at multitasking. In the video below, you can see the computer moving between a calculator app, a weird Tetris-like game, and a notepad app. The 16 cores in the DUO Mega also makes difficult calculations a lot faster; he can generate Mandelbrot patterns faster than any 8-bit microcontroller can alone, and also generates prime numbers at a good click.
Continue reading “16 core computer made of ATMegas”
[Fran’s] been working on her own version of the Arduino. She calls it CuteUino for obvious reasons. The size of the thing is pretty remarkable, fitting within the outline of an SD card. But that doesn’t mean you won’t get the power that you’re used to with the device. She’s broken it up into several modules so you can choose only the components that you need for the project.
The main board is shown on the right, both top and bottom. It sports the ATmega328p (it’s hard to believe we could make out the label on the chip package in the clip after the break) in a TQFP-32 package soldered to the underside of what she calls the Brain Module. You can also see the extra long pins which stick through from the female pin headers mounted on the top side of the board. Inside of these pin headers you’ll find the clock crystal, status LEDs, and a capacitor. The other module is an FTDI board used to connect the AVR chip to a USB port.
You’ll definitely want to check out her prototyping post for this project. She uses a very interesting technique of combining two single-sided boards to make a 3-layer PCB. The side that was not copper clad is fitted with copper foil by hand to act as a ground plane for the vias. Neat!
Continue reading “CuteUino: Only use the parts of the Arduino that you need for each project”
[Osgeld] is showing off what he calls a sanity check. It’s the first non-breadboard version of his Pocket Serial Host. He’s been working on the project as a way to simplify getting programs onto the Apple II he has on his “retro bench”. When plugged in, the computer sees it as a disk drive.
The storage is provided by an SD card which is hidden on the underside of that protoboard. This makes it dead simple to hack away at your programs using a modern computer, then transfer them over to the retro hardware. The components used (starting at the far side of the board) are a DB9 serial connector next to a level converter to make it talk to the ATmega328 chip being pointed at with a tool. The chip below that is a level converter to get the microcontroller talking to the RTC chip seen to the right. The battery keeps that clock running when there’s no power from the 5V and 3.3V regulators mounted in the upper right.
The video after the break shows off this prototype, the breadboard circuit, and a demonstration with the Apple II.
Continue reading “Pocket Serial Host acts as an Apple II disk drive”
[Craig] pulled off a beautiful build with his Sous Vader project. The name is a geeky spin on sous vide, a method of cooking foods in water held at a precise temperature. Building your own setup at home saves a ton of money, but it’s also a lot of fun. This explains the frequency with which we see these builds here at Hackaday.
So this one has a flashy name, a fine-looking case, but the beauty continues on the internals. [Craig] posted an image with the cover off of the control unit and it’s absolutely gorgeous inside. Part of the reason for this is the circuit board he spun for the project which hosts the ATmega328 and interfaces with the LCD, buttons, temperature sensor, and mains-switching triac. But most of the credit is due to his attention to detail. The image on the right shows him prototyping the hardware. Since some of his meals take 20 hours to prepare it’s no wonder he found an out-of-the-way closet in which to do the testing.
Make sure to read all the way to the bottom of the post for some cooking tips. For instance, since he doesn’t have a vacuum sealer he uses zipper bags — lowering them into water to push out the air as they are sealed.
[Zak] wanted to keep tabs on his network connection without needing to log into his router. Since his router was a PC running Debian Linux, he rigged up a Bluetooth Network Monitor to display the information.
The monitor is based on a ATMega328P that reads data from a Bluetooth serial connection and displays it on the TFT screen. It uses a low cost Bluetooth module to receive data from a router. A shell script fetches the data and formats it into a string that can be sent over the Bluetooth link.
A USB connection with a desktop computer is used to power the device, but [Zak] also added USB support using V-USB. He plans to use it to get data from the desktop. For example, he could display CPU load and temperature data.
Overall, this is a nice project for fetching data wirelessly and displaying it on your desk. [Zak] has provided the code and Eagle files with his write up for anyone interested in building their own.
This is the back side of [Dmitry Grinberg’s] 8×8 LED matrix pendant. He had seen the other projects that used a 5×7 grid but wasn’t really satisfied with the figures that can be drawn in that confined area when each pixel has only the option of being on or off. His offering increases the drawing area and includes the ability to display each pixel at several different levels.
He’s using an ATmega328 microcontroller soldered directly to the pins on the back of the LED module. He mapped out the IO in his firmware to make the soldering as easy as possible. To protect the hardware he fashioned a mold around the edges of the LED package using duct tape. The tape held epoxy in place as it hardened, encasing the microcontroller and holding the power wires and ICSP header tightly.
After the break you can see about six seconds of the device in action. The four levels of brightness for each pixel really do make quite a difference!
Continue reading “8×8 LED matrix pendant sealed in a block of epoxy”
We’re all familiar with overclocking desktop computers; a wonderful introduction to thermal design power and the necessities of a good CPU cooler. [Marcelo] wanted to see how far he could overclock a microcontroller – in this case an ATMega328 – and ended up with a microcontroller designed for 20 MHz running at 30 MHz.
To verify that his uC could run at higher clock speeds, [Marcelo] began his experiments by uploading a piece of code that toggled a few pins as fast as possible. He needed to upload this code with a common 16 MHz crystal – AVRDude simply won’t work when a chip is clocked at higher speeds.
After successfully demonstrating his microcontroller will turn pins on and off at 30 MHz, [Marcelo] wanted to see if he could do something useful. By editing a single setting in his Arduino boards.txt file., [Marcelo] was able to have his overclocked microcontroller read and reply to characters sent over a serial connection. It worked, demonstrating an overclocked microcontroller could be useful in some situations.
As for what [Marcelo] plans to do with his faster microcontroller, he’s thinking of improving a ATMega-powered VGA color generator. A higher clock speed means he can push more pixels out to a VGA monitor.