Putting Multitasking On An AVR

[vinod] wanted to familiarize himself with AVR assembly programming, but wanted to do something a little more ambitious than simply blinking an LED. While the completed build does blink a few LEDs, we love that e decided to implement multitasking on his microcontroller.

The program [vinod] came up with uses round robin scheduling to give one of the seven programmed tasks a little bit of compute time every time a timer is triggered. Although it’s extremely simple compared to “real-life” real-time operating systems like VxWorks, it’s still an impressive achievement.

In the video after the break, [vinod] shows off his task-switching with seven LEDs. The white LED is a PWM task, while the six other LEDs are simple toggling tasks  that switch a LED on and off at set intervals independent of each other. This would be hard – if not impossible – to do without some sort of scheduling. Nice work, [vinod].

Continue reading “Putting Multitasking On An AVR”

Turning A Rotary Tool Into A PCB Drill Press

Drilling holes in PCBs is nearly always an exercise in compromise; the holes are small, precision is paramount, and the common solutions, such as a Dremel drill press, aren’t of the highest quality. In a quest to find the best way to drill holes in PCBs, [reboots] even went so far as to get a pneumatic dental drill, but nothing short of a high-quality micro drill press would do. Not wanting to spend hundreds of dollars to drill a few holes, [reboots] did the sensible thing and made one from scratch.

[reboots] ended up buying a Proxxon Micromot 50 after reading the consistently good reviews around the Internet. To use this rotary tool as a drill press required more work, though. Two precision steel rods from a dot matrix printer were salvaged and pieces of aluminum C-channel and small bearings were bolted together into a very high-precision drill press. Only hand tools were used to build this drill press, and the results are amazing.

[reboots] was originally inspired to check out Proxxon tools from one of Hack a Day’s rare tool reviews. The Proxxon TBM115/220 earned the skull ‘n wrenches seal of approval (and found its way into other Hack a Day-ers labs), but sometimes a few hundred dollars is too much of an investment for something only used occasionally. Considering [reboots]’ scrap aluminum drill press is a better tool than the sloppy consumer rotary tool presses, we’ll call this a success.

Re-live 1978 In All Its Glory With The [Roth] Scream Box

roth-scream-box

We never imagined that [David Lee Roth] would mesh well with an Arduino, that is until Flickr user [tgtsfkncld] showed off his [Roth] Scream Box a few days ago.

The unassuming box resembles sort of a nondescript “Easy Button”, but its payload is far more entertaining than whatever Staples could have possibly recorded for their device. Once the Scream Box is powered on, each press of the button rewards the user with a short sound clip of [Roth] singing the lyrics from [Van Halen’s] “Runnin’ With the Devil”.

[tgtsfkncld] took snippets of the isolated vocal track from the song, playing them back using an Arduino along with an Adafruit Wave Shield. The circuitry behind the device is not overly complicated, though the final result is great. With the wide array of isolated vocals floating around online, it would be very easy to create one for your favorite band/singer as well.

Continue reading to see the [Roth] Scream Box in action.

[via Adafruit Blog]

Continue reading “Re-live 1978 In All Its Glory With The [Roth] Scream Box”

SimpleCortex, For When An Arduino Is Too Wimpy

Sometimes, an Arduino just doesn’t have enough horsepower. Whether you’re gathering loads of sensor data and sending it over the web via Ethernet, or just trying to build a home-brew video game, it’s very easy to run into the limitations of the Arduino platform. [Rik] and his fellow classmates may have a solution to this problem with their SimpleCortex development board.

The SimpleCortex began as an answer to the Arduinos [Rik] and his classmates had to use at school.  The SimpleCortex gets its name from an ARM Cortex M3 microcontroller running at 120MHz; more than fast enough to do some very interesting things, and 512kB of Flash to hold much larger programs.

The Arduino IDE is admittedly terrible, and big projects are a pain in the butt with a tiny 8-bit micro. SimpleCortex improves upon this development environment by using the free CoCenter IDE put out by CooCox. The CoCenter IDE supports debugging and code completion, standard features on any serious desktop programming environment.

The SimpleCortex has Arduino-compatable header pins, so it should be easy to use existing shields, like the 3G modem we saw this week and the NTSC video IO shield that can do object tracking. While the specs of the SimpleCortex put it in a distant second to the Raspberry Pi, sometimes you just don’t need Linux, but a standard AVR or PIC isn’t quite enough.

There’s no word on when this board will be available, but the team is working with ITead Studio to officially release boards into the wild.

Self-stabilizing Autonomous Bicycle

For [Gunnar]’s diploma thesis, he wanted to build an autonomous bicycle. There’s an obvious problem with this idea, though: how, exactly does a robotic bicycle stand upright? His solution to balancing the bicycle was a reaction wheel that keeps the bicycle upright at all times.

A bicycle is basically an inverted pendulum; something we’ve seen controlled in a number of projects. To balance his driver-less bike, [Gunnar] used a stabilizing wheel and an IMU to make sure the bicycle is always in the upright position. The bike measure the tilt and angular velocity of itself, along with the speed of the stabilizing wheel. To correct a tilt to the left, the stabilizing wheel spins clockwise, and corrects a rightward tilt by spinning counterclockwise.

While [Gunnar]’s solution of a bike wheel used as a gyroscope is clever – it uses common bicycle wheel, hugely reducing costs if someone wants to replicate this project – there’s not a whole lot of ground clearance. The size of the stabilizing wheel could probably be reduced by replacing the 7.4 kg steel wheel with a Tungsten, Osmium, or Lead disk, possibly becoming so small it could fit inside the frame. Still, though, a very nice build that is sure to turn a few heads.

Continue reading “Self-stabilizing Autonomous Bicycle”

Antique Electromechanical Calculating Machines

electromechanical calculator Hamann 505

The decision to use electronics for our calculating machines has long been decided.  However, that doesn’t mean that mechanical engineers didn’t put up a valiant, if ultimately futile, fight. [Dvice.com] has an interesting article comparing the calculating technology of the 1960s, such as the [Haman 505], to today’s iPad.

This comparison and pictures were made possible by [Mark Glusker]’s excellent collection.  These models can be divided into two categories, rotary calculators, and printing calculators. According to [Mark]‘s site, the printing calculators stayed on the market a few years after the rotary calculators, which were off the market by 1970.

Although we may never see machines like these made again, anyone even a little bit mechanically inclined would be hard pressed not to be inspired by this collection. Be sure to check out the video of a [Madas 20BTG] calculator after the break to see what one of the rotary models looks like in action! Continue reading “Antique Electromechanical Calculating Machines”