Last chance to enter The Hackaday Prize.

Connect 4 Robot Taunts You Before Kicking Your Butt

Connect 4 Robot

[Patrick McCabe] is a student at MIT and for his final project in his Microcomputer Project Laboratory course he decided to build a clever Connect 4 Robot.

The only criteria for the project was that you have to use the Cypress PSOC 5LP kit along with a 8051 micro-controller or equivalent (programmed in the same assembly language as the PSOC). All in all, [Patrick] had 5 weeks to work on the project.

He’s using a regular old Connect 4 game along with an assortment of custom parts. A stepper motor drives the token carriage back and forth across a 15″ aluminum channel using a timing belt. A servo releases the tokens, and all the other components, brackets, and other pieces were either made with his very own UP Mini 3D printer, or out of acrylic using the school’s laser cutter. It’s an extremely clean and well thought out build, and he’s actually uploaded all the custom part files (in SolidWorks format) online, for others to build their own.

[Read more...]

Overwriting a Protected AVR Bootloader

Logo for the FIgnition 8 bit computer project

A bootloader is typically used to update application code on a microcontroller. It receives the new program from a host, writes it to flash, verifies the program is valid, and resets the microcontroller. Perhaps the most ubiquitous example is the Arduino bootloader which allows you to load code without an AVR programmer.

The bootloader resides in a special part of memory, which is protected. On the AVR, it isn’t possible to write to the bootloader memory from the application code. This is to prevent you from accidentally breaking the bootloader and bricking the device.

However, it can be useful to write to the bootloader memory. The best example would be when you need to update the bootloader itself. To accomplish this, [Julz] found a workaround that defeats the AVR bootloader protection.

The challenge was to find a way to execute the Store Program Memory (spm) instruction, which can only be executed by the bootloader. [Julz] managed to make use of the spm instruction in the existing bootloader by counting cycles and modifying registers at the right time.

Using this technique, which [Julz] calls BootJacker, the Fignition 8 bit computer could have its bootloader updated. However, this technique would likely allow you to modify most bootloaders on AVR devices.

Multitasking on the MSP430F5529 LaunchPad

MSP430 Scheduler

What exactly is multitasking, scheduling, and context switching? This is a great question for those interested in understanding how operating systems work, even small real-time operating systems (RTOS). [Jeffrey] had the same question, so he built a multitasking scheduler for the MSP430F5529 LaunchPad.

These topics are some of the most difficult to wrap your head around in the embedded world. Choosing a project that helps you understand tough topics is a great way to learn, plus it can be very rewarding. In his post, [Jeffrey] goes over the basics of how all of these things work, and how they can be implemented on the MSP430. Overall, it is a great read and very informative. For more information on RTOS, check out a few sections in the FreeRTOS book. Be sure to see his code in action after the break.

[Jeffery] was nice enough to release all of his code as open source, so be sure to check out his repository on GitHub. “Feel free to use it and learn more. I have made the code self explanatory. Enjoy!”

via []

[Read more...]


diagram of the widgets for the widgeduino

Arduino has made a name for itself by being easy to use and has become an excellent tool for rapid prototyping of an idea. If one wakes up in the middle of the night in a eureka moment and hammers out a contraption – using an Arduino as the brains is about as fast and easy as it gets.

With that said, the WIDGEDUINO aims at making this process even faster and easier. Bristling with an array of meters, graphs and data entry widgets, the WIDGEDUINO is sure to be a hit with hackers, makers and engineers alike.

It’s based on the .NET framework and was designed with Visual Studio Windows Presentation Foundation. The user simply writes a sketch using the WIDGEDUINO library, and connects to a PC via serial or Ethernet to gain access to the assortment of awesome widgets.

You can find a few examples here. We hope the creators will keep us updated on the progress of this impressive project. Be sure to stick around after the break for a video demonstrating what the WIDGEUINO can do.

[Read more...]

The Analog Swiss Army Knife


While FPGAs get all the credit for being the hip new thing, they are inherently digital devices. Without a proper ADC and DAC, you won’t be delving into the analog domain with your programmable logic. Maxim has just put out a chip that does just that: an analog swiss army knife with 20 pins that are configurable as analog to digital converter, digital to analog converters, GPIO, or any mix of the above.

The MAX11300 includes twenty IO ports, each capable of becoming an ADC, DAC, or GPIO, with pairs of ports capable of being configured as a logic level translator or an analog switch. The ADCs and DACs are 12-bit, with input and output ranges from -10V to +10V.

As a nice little bonus, the chip is controlled over SPI, making this an interesting device for a small “do anything analog” tool we’re sure will hit Tindie or Seeed Studio before the year is out. Luckily for whoever would create such a device, Maxim has a nice GUI for configuring each of the 20 pins on their chip, Of course Maxim already offers an evaluation kit for the MAX11300. It’s $100 USD and is Windows only.

The MAX11300 is available in either 40-pin TQFN or 48-pin TQFP packages (with the larger, easier to solder TQFP shipping later) for about $5.80 USD in quantity 1000, or $11.37 in quantity one.Video below showing off the MAX11300 reading and writing analog values to a few pins, and a good look at the configuration software.

[Read more...]

This Useless Machine Now Plays with Fire

The Useless Machine, Candle Edition

Useless machines are a lot of fun, if not just a little overdone. Looking for a new twist, [bd594] decided to try making one that integrates a candle — it works quite well!

While not quite as impressive as some of [bd594's] previous projects, like his rendition of Bohemian Rhapsody on old school computer equipment, we like how he used regular DC motors in this design, instead of servos (the easy way).

A PICAXE14M2 microcontroller controls the H-Bridge responsible for the geared DC motors (taken from a Mac floppy drive), and a light sensor checks for the flame. He’s also made use of some NPN transistors to invert some logic levels to show you if you’re running low on I/O pins, its always possible to incorporate some other discrete components like a transistor to achieve your design.

Among others, some great alternative spins on the “useless machine” include the moody useless machine, an even more useless machine (featuring 8 switches!), a pull-string version, and even a rather ridiculous elevator button pressing useless machine!

Stick around to see this one put out the candle (Caution: Very exciting).

[Read more...]

The Rotary Cell Phone


It’s happened. It’s finally happened. In a move that has hipsters donning their good flannel and breaking out that case of Genesee they were saving for a special occasion, the rotary cell phone is now a reality.

[Jaromir] created this astonishingly retro future device as an entry for the NXP LPC810 challenge, a contest to do the most with an ARM Cortex M0+ microcontroller in an 8-pin package. Having only six I/O pins for controlling a GSM module, display a few buttons, and the fancy rotary dial meant [Jaromir] needed to expand his I/O some way. He chose a shift register to handle the buttons and display in a somewhat impressive demonstration of using a shift register as both an input and output expander at the same time.

From the videos [Jaromir] uploaded, the rotary cell phone isn’t ready for Think Geek to do a production run quite yet. He needs to enter the PIN for the SIM card, AT commands for the GSM module, and is, of course, a horrible method of user input for the younglings who have only seen rotary phones in old movies. That being said, it’s a rotary cell phone running on an 8-pin microcontroller. What more do you want?

Videos of this awesome this truly awesome phone in action below. If you’d like to build your own – and why wouldn’t you – all the files are available on [Jaromir]‘s git

[Read more...]


Get every new post delivered to your Inbox.

Join 91,108 other followers