Recently in Shop Stuff Category


| Comments (0)
Meta-meta-meta projects. (or how I spent my evening...)

I was going to build a multi-LED (light) status indicator. I scavenged a bunch of surface mount LEDs from an old server, and then needed to sort them by color. So I pulled out an old prototype, adjusted some components and started testing them one by one...

I think I have ADD, I never did start that status indicator.

Lights! (camera) Action! Sampling of my latest projects

| Comments (0)
I'm really slacking off. I have been somewhat active on Google+, put a couple photos on Facebook. But nothing here since July 1st, 2013 - wow.

Ok - here are the projects on the go. In no particular order:


The little guy inside keeps humming along, while the big brother outside has been getting a major overhaul.

A completely rebuild Z axis and Y axis truck. Switched both X & Y from 1/4" 20TPI threaded rod to direct drive belt. Beefed up the steppers as well.

Front - new Z & Y

Back - more Y details and X belt showing.

Built a 3 axis Polulu breakout board. Fried the drivers. Then built a 24V power supply and TB6560 based 3 axis stepper driver.

Polulu breakout board - milled quite nicely. Still have the board. May use it for a 3D printer.

Joined 2 ATX power supplies, some fans and some TB6560 driver boards for this animal!

Man Cave
Winter came & went and then came back. The tarpon based shop-in-a-shop had lost its appeal, and I wanted something bigger, warmer, slightly more permanent.

I drew up a nice blue print and started working.

Some walls are up, and equipment is moving in.
Solar tracking Solar Panel

After camping this year, I decided to try building a turn table that would keep my solar panel aimed at the sun. It hasn't progressed very far, but I was pleased with the way the wooden gears turned out.

These are the two gears meshed together on the table.

This is the left over material and the little mill that cut them out!

DMX controlled stage light
My current project is to build a simple DMX controlled RGB LED pan tilt light. Except, mine probably won't be as nice as the linked to sample project. My son writes and wants to perform electronic dance music. He has some cool ideas for running the stage, but we need some test gear to work out the software kinks. I've got some time, and so I figured I'd tackle building an Arduino based light.

This is the 3 channel LED current driver and the 10W RGB LED on a heat sink in the back ground.

Make Intertoobs worky

| Comments (0)
Router's / modem's / ISP connections tend to need a kick once in a while. Here's my setup to give my gear a kick when my server can no long ping a site (

Auto intertube unplugger

The circuit is pretty basic. An opto-coupler takes the signal from a pin off the parallel port, isolates it and feeds it into a transistor which boosts the current high enough to pull a relay in. The relay is setup to be normally closed. This way minimal power is used for normal state.

The following script runs every 10 minutes. It tests a ping to google - twice, in case the first one was a false postive. If both fail to come back, it pulls the pin high for 30 seconds. It pauses for 2 minutes to give the gear a chance to restart. It tests again. If successful, I'm notified. If not, it gives up.


use strict;
use warnings;

use Device::ParallelPort;

if (`ping -c 1 | grep "1 received"`)
#       print "\nALIVE\n";
} else {
        print "Dead?\n";

        if (`ping -c 1 | grep "1 received"`)
        { ; } else {
                # restart process

                print "DEAD!\n";

                my $port = Device::ParallelPort->new();

                # toggle bit 0 ON
                print "Bit 0 ON\n";

                # wait 30 seconds

                # toggle bit 0 OFF
                print "Bit 0 OFF\n";

                if (`ping -c 1 | grep "1 received"`)
                        print "Success!\n";
                        my $t_commTime = time;
                        system("/home/alex/furnace/tweet d ehud42 Communication restared at time stamp: $t_commTime");
                } else {
                        print "Left for dead\n";

A clip of the gadgetry working on my bench: