Welcome
I hope you enjoy this repository of my various projects and ideas. Thanks for looking, Joe.



Search


Projects


Photography

Sunday
Apr032011

Core i7 Sandybridge PC Build

I last built a workstation about 2 years ago when I put together a Core 2 Duo box. It was solid machine and in day to day activities had more than enough computing power. Lately, however, I have been doing more video encoding and RAW photo editing and consequently decided that I needed a machine with better performance in those areas. 

 

 

 

 

 

 

 New PC Specs

Performance

For video compression tasks using Handbrake and Adobe Premiere Elements, this new PC is easily three times faster than my old Core 2 Duo machine. It is also noticably faster at image manipulation tasks, especially converting RAW files to JPEG.

Power Usage

  • Idle:  90W
  • Video Compression:  150W
  • Gaming:  205W

These numbers are roughly in line with my previous PC, although the idle is actually lower. This is a fantastic result for a significantly more powerful machine. 

Noise and Heat

My last PC was a particularly quiet machine thanks to its case's usage of large, low RPM fans and noise reduction foam. Hard drive isolation was the only area where faltered. This time around I decided to go with a different case. In some of their cases Antec uses robust silicone cylinders to isolate the hard drive  from the case. These worked so fantastically on my Home Theater PC Build, that I decided to get a case that featured them this time as well. This combined with some low RPM fans makes this case about as quiet as my last build, minus the hard drive noise. I even purchased some Silverstone noise reduction foam as well as silicone fan mounts to cut down the noise and vibration even further. 

The Core i7-2600 is a 95W processor which isn't much heat for the Xigmatek cooler I chose to dissipate. In fact its fan never spins above its minimum RPM.

Saturday
Jan082011

Arduino Word Clock

I first saw a clock with this type of design on the Make Blog over a year ago. It is an incredibly clever idea, but the $1000 price tag is a bit much for my taste. I had seen a few attempts at a DIY version but most of them were still too complex or expensive to build. Needless to say when I saw this Instuctable I got really excited. It is based off of another Instructable, however, it simplifies the design and construction to the point where I felt confident that I could build it.

I followed the Instructable pretty closely, with the following exceptions:

LEDS:  I got my LEDs from Evil Mad Science, which sells packs of superbright 5mm LEDs in various colors. This project requires a pack of 100 white LEDs. For current limiting resistors I used 470 Ohm instead of 1K Ohm. This allowed me more flexibility since I can dim the LEDs as much as I want, but I can never make them brighter. The LEDs I used are very efficient and only draw 4.8mA with a 470 Ohm resistor, so the maximum power draw for the clock will be about 150mA. Consequently power usage is not an issue since I used a repurposed cell phone charger as the power supply and it can provide 700mA at 5V. 

Letter Mask:  I had to use 4 transparencies stacked in order to get the mask dark enough. I also used a wider border for the letter mask to cover up some imperfections around the edges of my transparencies. For LED diffusion I used some translucent plastic folders that I found at an office supply store. I got a multicolor pack so that I could try different configurations and decided that a combination of one gray and one white folder cut to fit in the frame was the best looking and most functional choice.

LED Holder:  Instead of a cardboard LED holder I used foam poster board. This is a much stiffer material and makes the holder much sturdier, however, it is also thicker so I had to make the light baffles 1" high rather than 1-1/8".

Circuit Board:  Since the wiring on this project is fairly complex I decided early on that I wanted to keep the circuit board as simple as possible. In order to accomplish this I used two Radioshack breadboard matching printed circuit boards. These are great boards since they have power buses running down the sides of each board and they have plenty of room for the 7 chips necessary for this project. This made it very straightforward to scratchbuild an Arduino on one of the boards and then wire it to the other chips. Note: when building an Arduino in this way you need an FTDI cable which plugs into the 6-Pin header on the board in order to program the Arduino.

I mounted the boards side-by-side on a piece of acrylic to make it easier to work with. I also wired the board such that I could add a photoresistor in the future to allow for dynamic LED dimming (its wiring is bundled separately for later use as shown in the photos). Instead of wiring headers I just wired directly from the circuit board to the LEDs using multicolor wire to differentiate which word group I was wiring to (you can see each ULN2003A's bundle grouped together in the photos). 

The size of these boards prevented me from trying to mount them inside the picture frame, however, mounting the boards on the back wasn't a problem. As shown in the photos I had use some stacked foam board as spacers between the back of the picture frame and the wall to keep the board from rubbing agains the wall. I also changed the power socket mounting from the back of the frame to the bottom by cutting a notch in the wood and gluing it in place.

Conclusion:  The biggest problem I had with this project was dealing with a slightly imprecise LED layout. This resulted in some of light baffles partially blocking the wrong letters. After removing the problem baffles, however, I found that my diffusion layers worked well at making up for any discrepancies due to LED placement as well as reducing cross-letter light bleed to an acceptable level. As far as the code goes the only changes I made were done to make use of external pull-down resistors instead of internal and to clean up the code a little bit since some of the comments no longer made sense. I really like this project. It is not only cool looking, but it is useful as well. 

Sunday
Dec192010

Arduino - Parallax RFID Reader

A few months ago I saw some Parallax RFID readers at Radio Shack on clearance and decided to pick them up since they were such a good deal. I have wanted to make an RFID related project for some time after seeing this episode of SYSTM.

This project uses a BASIC Stamp, however, which I have no interest in using. So when I found the following post at Gumbo Labs about using the Parallax reader with an Arduino, I was excited. Well I finally got around to trying out their code and it works perfectly. All you have to do is wire up the Parallax reader's power, ground, enable, and serial lines, upload the code and start reading tags. 

Here are some pictures of my test setup. As you can see the reader's LED changes from red to green when it is reading a tag.

Sunday
Aug082010

Peggy 2 LED Matrix

The Peggy 2 is a 25x25 LED matrix kit from Evil Mad Scientist Labs. Ever since I first saw the Peggy kit I thought it was one of the cooler kits available. I finally got around to getting one of these awesome kits and it is a sight to behold. By far the largest kit I have ever built, it is also the best quality kit I have come across. The Peggy 2's circuit board is probably twice the thickness of a normal printed circuit board, a welcome feature for such a large board since the added thickness makes the board very rigid. You can purchase the Peggy 2 in a variety of kit configurations; I got the so called awesomeness bundle which includes a power supply, extra pushbuttons, and 640 diffused 10mm LEDs in the color of your choosing (white in my case). 

The build itself took around 2 hours to assemble the control circuitry and another 4.5 hours to solder all of the LEDs. It's a bit of an undertaking, but when you're done it's a great feeling when all 625 LEDs light up. To program the Peggy you use the Arduino IDE and download the Peggy Library. I haven't experimented too much with it yet, but I did try out some of the demo programs from the library and you can see what the Peggy can do in the video below. I look forward to playing with this project a lot in the future.

Sunday
Feb282010

Home Theater PC / Media Server Software

The software setup for my new HTPC started with a clean install of Ubuntu 9.10. This went without a hitch and it was time to install the various software packages that I use to get my system in working order.

Network Sharing

  • Samba (located in the System -> Administration menu after installation)

In the Ubuntu repository this is called the system-config-samba package. This is a great GUI tool for setting up shares on a Windows network and allows me to view all the content on my HTPC on my Windows machines. Just input your Workgroup, what you want to share and who is allowed to view it. This tool makes this process much easier than editing configuration files. One thing that confused me at first was setting up user access; make sure to include the computer name of the user in the "Windows Username" field. For example "joe" didn't work, but "DESKTOP\joe" did.

Backup

  • Scheduled Tasks (located in the System Tools menu after installation)

Called gnome-schedule in the repository this utility allows me to run a backup script at a particular time. This is basically a GUI frontend for CRON and therefore much easier for a Linux novice like myself. I run a RSYNC script every night at 2AM which synchronizes the hard drive containing my media archive with another hard drive. I have found this a better backup solution than having a RAID array because it doesn't rely on any controller hardware or software. If one of the drives fails I can just replace it and copy the files to the new one. If I want to put the hard drives in another machine I can just take them out and plug them in, no other configuration is necessary. I realize there are drawbacks to this system, but I prefer something that I understand and know how to fix as opposed to other solutions that I have tried that have failed and cannot be fixed (ie. the Drobo).

Media Playback

  • VLC - media player
  • Miro - RSS media aggregator/player
  • Boxee - media center based on XBMC with great web integration

This is the standard media grabbing and playback package I have been using for a while now. I use VLC whenever I'm in keyboard and mouse mode to play video and audio files. Miro isn't perfect, but it's better than any other media aggregator I have tried. Boxee is fantastic for local playback as well as web content and it can be controlled via remote control. In the past Boxee was somewhat finicky when it came to your audio and video settings, but I have found the new Beta version to be much more stable.

 Bittorrent

  • Deluge - my favorite torrent client, has the right balance of features and simplicity

Remote Control

  • LIRC - configured this for my Windows Media Center remote and it integrated perfectly with XBMC & Boxee

Accessories

  • GNOME Do - an awesome tool much like Quicksilver on the Mac, only for the GNOME desktop
  • pyRenamer - a fantastic, simple tool for renaming lots of files quickly

This setup served me well on my Studio Hybrid HTPC and is performing equally well on my new machine. I frequently try different software packages, but these core programs are always present on my home theater box.