Guitar Rack build log

So, a few years ago I said I would build a guitar rack for my brother for Christmas. So I was a bit late, what of it?

Anyway, I though it would be cool to make the back plate of the rack something more interesting than a flat bar. Having just taken an oxyacetylene class at Techshop I decided to freehand cut a guitar outline out of sheet metal.

2012-12-15 20.37.02 Continue reading


Balancing Robot

So, I haven’t posted here forever, but I’ve been meaning to add what I’ve been up to.

The latest project I have been working on was for an abomination of an SE class called “Performance Real-time and embedded systems” Sounds interesting, right? Nah. It was really bad, but we’ll not get into that. Anyway, for the term project Crawford and I wanted to make some kind of physical system controlled by a control system. We ended up trying to build a “balancing robot.”

I say try because we had a lot of wrenches thrown in. The first problem was that we had to use the PC/104 stack x86 boxes that were used in the class, meaning that this project couldn’t actually be “embedded.” We ended up piping sensor and control data over a ribbon cable and ran the code remotely. Motor current running through the same ribbon cable ended up messing up a lot of the measurements.

Also, a more fundamental flaw with our project was we were trying to do it with just a single accelerometer and no gyro. This made the task pretty impossible, as the noise from the motors accelerating would cause sensor readings to run away. We did a decent job considering what we were trying to do, but it didn’t end up

Anyway, I really enjoyed working on the project so I have moved the code over to a teensy microcontroller and got a nice digital gyroscope to try to make a better control scheme for it.  Here is the source code. I haven’t spent much time tuning it, but I can get it to balance without falling over for a good 20-30 seconds. I pretty much just need to add in the wheel encoders so I can make it stay in a single position and I should be pretty well off. After that, I’d like to add remote control to the device so I can drive the platform around by changing the position and rotation setpoint, but we’ll see if I have enough time in the next few months.

Atmega 8 serial and iButton code

Last weekend was project work weekend, and I started messing with my atmega8 and olimex development board to get some serial communication working. After implementing the really simple USRT code they demoed, I wrote some simple print functions so I could get useful debug output.


Tuesday night I decided to port the onewire library written for the arduino to C for the atmega8. After a few hours, I got the sensor detecting my iButton.

Code is available here.

Next step is to implement the spi bus for the ethernet module.

ADA and optical coin detection.

One of the projects I never wrote a writeup on that I’ve been working on for the past little while is the “auto drink admin.” For those of you who don’t know, CSH has something called DRINK which is basically a group fridge. Using a key-fob based iButton you can log into the machine and it will link to your LDAP account. There is also SNACK which is an addon in the form of an old snack machine. Based on how many credits you have in your LDAP account  you can purchase things in the machine. Now, how do you get credits? You have to talk to a drink admin. They take your money, log into their database front end, and update your credits.

Continue reading

Wiznet module

I’ve done nothing productive all summer.

A few days ago, I ordered an SPI ethernet module from a local company for 20 bucks. I just started playing with it today. It’s the same one used in the arduino ethershield, so it was pretty easy to hook up. I’d never worked with anything on an SPI bus before, but it’s pretty damn simple. All I needed was power, ground, and four data lines and I was set. The only thing else I had to do was tie the reset high so the board would run.

The chip is really full featured. While all the features of the board can be used with the SPI bus, there are also some parallel data ports broken out for higher transfer speeds. When I get my ARM I’m going to dig into the data sheet a bit more if I can to see what kind of performance I can pull out of it.

In the meantime using it with arduino’s libraries made it really easy to get a simple server up and running, which is pretty immediately gratifying. Considering I worked on it for something like two hours, I haven’t had a chance to write anything interesting with it, but it’ll probably be involved with the doorlocks somehow. We’ll see.

Mig Welding

I recently decided to indulge myself and bought a mig welder on clearance for 170 bucks at sears. After welding a few pieces together, I decided to build a little statue, modeled after Pintsize.

Still need to find a head for him..

Photo Exposure Box

Another project I’m helping with is Cory’s photo box. I said I had a few project ideas that would be useful to have around a couple weeks back, and he stepped up to work on this. It ended up being a pretty sweet little timed UV light box with auto shut off.

Continue reading