Miniature PC packs a big punch

raspberry_pi

We are always looking out for smaller yet capable computers for our projects, and this newest offering by [David Braben] is looking mighty nice. [David] is the head of a UK-based games studio, but has recently been focusing on bringing small, affordable PCs to classrooms around the world.

The computer, called Raspberry Pi,  is about the size of your standard USB thumb drive and contains a 700 MHz ARM 11 processor as well as 128 MB of memory. It has an HDMI port which can display 1080p video on any compatible screen, along with a USB port for input peripherals. Mass storage is provided courtesy of an on-board SD card slot, and it looks like the ability to utilize add-on modules will be available as well.

There is sure to be no shortage of willing buyers if [David] is able to bring these computers to market within a reasonable timeframe. With a projected cost of about $25, this will certainly give the OLPC and others a run for their money.

Thanks to everyone who sent this story in… all of you. You can stop now… please. (don’t stop sending us tips, we’re just joking around)

Advanced robotic arm control using Kinect

kinect_teleoperation

[Ryan Lloyd], [Sandeep Dhull], and [Ruben D'Sa] wrote in to share a robotics project they have been keeping busy with lately. The three University of Minnesota students are using a Kinect sensor to remotely control a robotic arm, but it’s not as simple as it sounds.

Using OpenNI alongside PrimeSense, the team started out by doing some simple skeleton tracking before working with their robotic arm. The arm has five degrees of freedom, making the task of controlling it a bit tricky. The robot has quite a few joints to play with, so the trio not only tracks shoulder, elbow, and wrist movements, but they also monitor the status of the user’s hand to actuate the robot’s gripper.

When everything was said and done, the results were pretty impressive as you can see in the video below, but the team definitely sees room for improvement. Using inverse kinematics, they plan on filtering out some of the joint tracking inaccuracies that occur when the shoulders are moved in a certain way. They also plan on using a robotic arm with even more degrees of freedom to see just how well their software can perform.

Be sure to check out their site to see more details and videos.

[Read more...]

Improve charlieplexing performance with interrupts

single_chip_led_matrix

[Dmitry] was shopping for LEDs and accidentally pulled the trigger on the wrong type. Since he didn’t want to be wasteful, he figured he should at least take the time to build something with them.

A LED matrix display was the obvious project choice, but he only had a PIC16F688 at his disposal. Since the micro controller only has 11 output pins, charlieplexing was the only way he would be able to light the entire matrix.

While testing his LED array, he found charlieplexing to be a bit disappointing. The fact that the LEDs can get relatively dim, depending on the number of units lit at any particular time struck him as annoying.

In order to improve the performance of his charlieplexed array, he first decided to scan through all of the LEDs rather than just those that needed to be lit. This ensured that all of his LEDs had the same 1/110 duty cycle and were always as bright as possible. He also chose to use interrupts when lighting the LEDs. This meant that his code does not need to take into consideration any specific timing requirements to maintain persistence of vision. He also double-buffers the display to help reduce flicker.

He says that he ran into certain constraints with the PIC chip he chose, so he used a handful of lookup tables to ensure smooth operation of his display. He was quite satisfied with the results, and we think that the interrupt-driven display looks like it works just fine from where we’re standing as well.

Be sure to stick around for a quick video explaining and demonstrating his single-chip LED matrix.

[Read more...]

USB Minecraft portal

[Sprite_tm] had heard some time ago that middle of the road Nokia phones had some really interesting LCDs, they are 2.4 inch TFT’s with 320×240 resolution. He immediately got 3 beccause they are pretty low cost as well, and started working with them. Apparently these LCDs are self contained, meaning they have all the driver chips and memory on board, you just need to know the pins and commands. This too is fairly easy as they are somewhat standard setups and datasheets for similar models work in a pinch.

Once the things were working, what do you do with them? [Sprite_tm] decided to make a desktop minecraft portal. Since the animation is a bit complex in micro controller worlds, he grabbed one of the STM32F101CBs for their beefy cpu and got to work. Getting the texture from minecraft proved to be a bit of a bear as they are not static images, but are calculated on startup. A bit of C code on the PC quickly generates an appropriate pattern and is exported to the micro controller for display in its final home.

The case is made out of wood and once finished looks just like the “real” thing giving a presentation any “blockhead” would love to have on their desk.

Digital Audio on the Parallax Propeller

[Beth] had the idea for transmitting digital audio over S/PDIF on a Propeller a few years ago, but only just got around to a writeup. For that, we thank her.

The writeup has a marvelous walkthrough of the S/PDIF protocol and the problems associated with with generating the signal. S/PDIF is a relatively resource-intensive protocol – the signal is clocked at 64x the audio sample rate. That signal is doubled for biphase mark code, keeping everything in sync. [Beth] says the microcontroller would neet at least 24 MIPS of processing power just to generate the S/PDIF signal – processing audio would be another task altogether. Because of the processing power needed, and the weird clock rates needed, [Beth] decided to go with the Propeller. The implementation uses only one core of the Propeller, leaving another seven cores available for sound synthesis or even a visualization over VGA.

[Beth] admits this could be done with just about any microcontroller (although it would need to be clocked at a multiple of 4.096 MHz for a 32kHz audio stream), but we really appreciate the work that went into bit-banging this signal.

Video of [Nick] at Gadget Gangster playing around with digital audio on a Propeller after the break.

[Read more...]