Archive for category Geekiness

Wiring (update 2)

Bill had commented on an older post about wiring and had asked for an update. I had thought I had posted one but couldn’t find any when I just looked.

So, basically, at this point, the following is complete:

  • TV is installed in the main room. Wires are cable tied to the cantilever arm and go through a nice-looking plastic grommet in the wall. My options were to buy grommets at Lowe’s (surprisingly, they were like $6 each) or simply steal some from some of our furniture (the little holes designed to have wires go into for your computer stuff). I went with the stealing.
  • All speaker wiring is done. I have speakers installed everywhere except the sub-woofer (which I installed in the back center. At some point I want a sub-woofer but the high-cost and low utility (hey, the kids are napping whenever we watch anything!) has delayed my purchase.
  • All wiring for Phase 1 is complete. This is a nice, official way of saying that there will be a phase 2 and we’re not there yet. However, for this first phase, we have all audio wiring (to 5.1 speakers) installed, two power outlets (4 plugs) are installed and the cable re-wired and split (in the wall). In addition, all wiring through the wall to the TV is complete. I may change what I have going through the wall to the TV at some later date, but for now, it’s everything we need.
  • No more mess in the main room (just the TV on the wall, speakers on the wall, and two floor speakers). Now we have extra room and I’m considering getting a nice leather chair (in black) that matches our surprisingly well-constructed Ikea couch.

Here are the pictures:

New Shelves
New shelves in closet. The small top shelf is just for wiring and equipment. We’ll likely use the lower shelf for the printers. There’s another shelf below that’s outside of the shot. Notice the nice blue paint. It’s not fun painting in a closet — no room.

Top Computer Shelf
Here’s the rather cluttered high shelf. It’s close to the door and has all the audio/video equipment as well as the phone and two computers. The upper computer is just there temporarily. (I’m not sure exactly what to do with it — need a computer?). It does have some spare room on the shelf for remotes and DVDs and such.

Top Computer Shelf (no flash)
Here’s a shot of the same thing without the flash. This is what it looks like when you open the door. I tied some tube lights into the power plugs on the back of the receiver so that if you’re using it, there’s a strip of light that goes around the edge of the door frame on the inside. I considered a brighter light, but you don’t need to see much and anything too bright is annoying.

New outlets
Here’s a cable-filled shot of the new power outlets, the cable outlet and above (a little hard to see) the 5.1 audio outlet 5 stereo and one mono plugs (for the sub-woofer).

img_6205.JPGSpeaker on the rear, left
Here are two shots of the surround speakers. I found the mounting shelves at Lowe’s for a pretty good price Looks a lot nicer than having those horrible little plastic arms.

Front view of system
Here’s a shot of the front. This shows the TV mounted on the cantilever arm, the center channel (mounted a bit high but tilted appropriately) and the right front speaker (just on the floor). All the equipment is in the closet directly behind the TV. I dislike how I couldn’t mount the TV in the center (but the arm does swing over and it’s very close). The mind is a funny thing — voices (played on the center channel) do sound like they’re coming directly from the TV even though though they’re clearly not.

Binding Posts
Here’s a shot of the binding post. Hey, it looks professional! It might look nice to use banana plugs instead of bare wire, but that’s too fancy…

Sub-woofer binding post
Here’s the unused sub-woofer binding post behind the couch. This is an RCA-type plug so it’s a little easier to connect than the screw-on/banana plugs used for the stereo binding posts.

Behind the TV
Here’s what behind the TV looks like. You can see the plastic grommet in the wall (which is very functional). The arm itself is attached very solidly to a stud and the cable ties may not be pretty but they’re not normally visible, so it’s no problem.

I’m considering as part of Phase 2, the following:

  • CAT5, DVI and USB runs throughout the house. Realistically, probably just to the office and the “kitchen office” nook.
  • An upgrade of our main room TV (the in-laws have a bigger one — it’s time to upgrade! hehe…) and moving the upstairs TV to my office (for use with the computer)
  • Dispose of an old inkjet printer, move the newer inkjet to the closet, and get a laser printer also for the closet.
  • I’m considering (just considering) replacing my Linux machine with a dedicated “always-on” 8-core Mac. The brand new Mac Pros are just so darn cool. I could realistically do a 3-drive, RAID 5, 1TB array with the Mac and still have room on the main drive for “non-critical” stuff. I have a 1.5TB array now on 4 drives but the extra 500MB is somewhat unnecessary for redundancy. Down the road, I could upgrade to a 2TB (3x1TB HDs) setup if I needed to expand. The new machines have max RAM capacity at 32GB — that’s simply amazing (and expensive).

Note to scoffers: This does NOT mean I would give up my Linux server — I would simply virtualize it and run it in all the spare RAM I’d have.

But except for the printers I’m not really thinking this is going to happen anytime really soon. Maybe by the end of the year. Just maybe.

, , , , , , ,


Funny things in Gentoo

In Gentoo, “emerge” is the package manager (the tool used to install new applications and software on the system). You can type “emerge mozilla-firefox” to install the most recent Firefox release or “emerge ruby” to install the Ruby programming language.

Here’s a slightly unexpected result…Diane will like this… 🙂

Emerge Moo

Okay, so it doesn’t do anything, but it’s kind of funny.



Return of the Car Computer!

Well, nearly 3 years ago, I started building a car computer using a Mini-ITX 1GHz motherboard, an 8″ touchscreen LCD, some custom power components, and a bunch of spare parts. $794 later I still am pretty much where I was then.

I had trouble with:

  • Building my own case — it looked terrible and was almost taped together. Absolutely horrid.
  • Some sort of weird Windows problem (that I still haven’t resolved)
  • Trouble with setting the thing up since the LCD runs off a car cigarette-lighter outlet
  • Still a high cost for Bluetooth and 802.11/a/b/g/n — which was important to having the thing be useful

Most of these hurdles have been beaten as of this week. Weird Windows problem is solved by not using it (I got the touchscreen drivers to work under Gentoo using Enlightenment as the DM). Good bye Billy Gates! Due to some car battery issues I purchased one of those massive backup car starters, AC/DC, monstrosities. This gives me the flexibility of working with the car component in the house in the office where I can make (and leave) a mess instead of having to set up / tear down everything in the car whenever I wanted to fiddle. The cost for Bluetooth and wireless has dramatically dropped (I have a spare Bluetooth dongle hanging around and a few wireless cards).

The one outstanding issue is a case. I really haven’t been looking but I’m sure there are more options now. I’ve considered also storing the thing in the trunk and wiring display/USB/etc up to the front. If that’s the case, I can leave the components in their junky case and not worry about it.

Some other cool developments:

  • You can now get very cheap IDE-Compact Flash solid state “hard drives” for these things. Gentoo will run just great on a 2GB card. It’s fast, easy, and it saves even more room.
  • VIA has iterated twice since I purchased my motherboard and has both a Nano-ITX and now a Pico-ITX (about the size of a deck of cards) motherboard. These are cool, but I likely don’t need them.
  • I’m smarter now than before and can actually successfully navigate through some tricky Linux configurations for “non-standard” hardware. Many, many kudos to Steve Huskey from work who helped me initially (and got me addicted to Gentoo) and then instilled me with enough curiosity to go nuts and play with the stuff. I’m not exactly sure what a kudos is, but Steve deserves a lot of them.
  • I have some free time… No! Stop laughing, really, I do! Or at least I plan to make some. I don’t have any money any more (the government and the banks take care of that) so hopefully I’ll mostly be able to finish this using free software and skill.
  • People read my blog now! So maybe when I run into trouble now I can get some help instead of yelling into the dark void that was my January, 2005 blog.

So, here it is:

Car Computer 2007-11-10

See! It’s only missing:

1) A car

2) A functional computer

OK, so there’s a lot of work to be done… I’ll keep you posted as I move along.

(By the way, the blue box is my server which just happens to be serving as a roadblock to avoid pedestrian traffic from trampling on the sensitive electronics The smallish silver square containers are the car computer itself and the LCD screen is sitting on top of the server. The orange thing is the aforementioned, large, American, AC/DC power, car-starter, utility-light, air-inflater, super-multi-tool!)

, , , ,


This (like so many Dilbert comics) seems far too realistic…

Yes, that’s right, this post IS categorized as “Actual Events”. 🙂

No Comments

Synergy (the software program, not the buzzword)

I just installed and was playing with Synergy. It’s a very cool program that allows me to take advantage of the fact that I sit with three screen at my desk (one is my MacBook, one is my “work”laptop running Windows, and the third is my Gentoo server). Now, instead of switching mice and keyboards I can access all three as if they were a single computer with three different monitors. Basically, with my Windows computer in the middle, I can access my MacBook by moving the mouse beyond the border of the Windows screen on the left and access my Gentoo server by moving the mouse beyond the border of the Windows screen on the right. It’s very fluid and responsive despite that all three are using wireless currently.

Because my life is not boring enough, I made a video that shows it in action…



Over the last few weeks I’ve been doing some wiring… There are multiple phases of this project.

  1. Install nicer shelving in under-the-stairs closet (wood instead of that horrible white wire mesh stuff). (25% complete)
  2. Get proper power/cable/network/audio wiring into the under-the-stairs closet. (75% complete — no network yet)
  3. Get “media center” components out of the living room and into the under-the-stairs closet. (100% complete)
  4. Wall-mount the TV and wire audio/video cabling through the wall to the closet. (100% complete)
  5. Wire audio around the room for a 5.1 channel setup. (50% complete)

So far so good… the main shelf for audio/video components and computers was installed and has been painted. I’m waiting on the other shelves until after since they’re not needed for any of the other electrical components. I’m waiting on network because I honestly haven’t figured out how much of the house I really want to wire. Wireless technology has its limitations but usually it’s fine around the house. I’m thinking right now that I’ll place a patch panel into the wall with 16-32 ports and only wire a few of them initially. Maybe one or two drops for the kitchen office area (for the wife’s computer) and a few upstairs in my office (I like being able to move files onto the server quickly). The kids bedrooms simply don’t need them and I don’t really take my computer into the bedroom. Now that everything in the main room has been moved to the closet, there’s no reason to have any there. If I ever wanted to do something like host a LAN Party (I think I’m too old for that) I could just drag a switch into the main room. The media components are moved in completely (a receiver, a DVD player, a VHS player and two computers). I had an old tape deck that I gave away (never used it and now you can’t even buy cassette tapes) and an equalizer (which really wasn’t useful since I don’t care about tweaking my bass/treble anyway). The computers take up a lot of room and generate probably too much heat. I’ll probably downsize the server to a single machine that runs a little cooler and get rid of the “gaming machine” since I really don’t use it anymore. The TV is mounted using a cantilever mount.

Once I determine exactly what audio/video I’m running to it, I’ll cable-tie everything so that it folds nicely (the arm for the TV is a little like the cable-management arms in server racks so I can tie stuff to it). I’ve successfully wired the front left and right and center channels. I was originally looking at satellite speakers far up on the wall but decided to instead use floor speakers for the front and a center channel mounted high (almost near the ceiling). It’s not really an ideal setup from an audiophile perspective (the center channel should really be lower — within 2 feet of the tweeters on the floor speakers) but all it really means is that the “sweet” spot for watching movies is a smaller area on the couch instead of the whole room in front of the TV. I have holes in the wall for the surround left and right speakers (back wall rather than side walls — again not “optimal” but there was no room to mount on the sides). They are mounted at the correct height (about 64″). I’m using single-gang wall plates with gold-plated screw on connectors that can optionally use banana clips. I think it should be adequate. The sub-woofer spot has been selected but not yet cut in the wall. I’m going to place it on the rear wall facing forward from the center. I suppose it doesn’t really matter where you place the sub-woofer but this way I should be able to “feel” the bass even better since it’s almost directly below the couch. I also need speaker mounts for the surround speakers and the center channel and haven’t determined what brand/type to buy. Back in the closet, everything wires to a 5.1 binding post with the same connectors. Something like this (different brand but same look):

, ,

1 Comment


Well in my drug-induced down time I’ve been fiddling with my Gentoo server some more… I added Wake-on-Lan support to the kernel so that I can power the system up from upstairs or across the country. It’s nice because I don’t tend to leave it on all the time and even when I’m home, it’s a pain to hit the power button since I keep the system squirreled away in a cabinet.

In addition however, I also added OpenVPN support to the server. I punched a hole in the firewall and set up Ethernet bridging in order to give me full access to the entire network when I’m away from home. It works amazingly well. It wasn’t quick to set up but it was kind of fun. Basically you create an Ethernet bridge between a “real” network adapter and the virtual OpenVPN adapter and assign that bridge the IP address of the old “real” network adapter. I like.

, , , ,


More Bash Scripts

I need to copy all of my FLAC files out of my directory tree but preserve the folder structure that they were in… Here’s my script.

Unfortunately, it’s not a “perfect” solution as there are issues when handling special characters in files (especially newline characters). However, since my file really just have spaces in them, that’s all this was designed to beat.

SOURCEDIR="/var/mirror/Data/Audio/My CD Archive"
mkdir "$TARGETDIR"
find "$SOURCEDIR" -type d | while read DIR; do
  if [[ "$DIR" != "$SOURCEDIR" ]]; then
    SHORTDIR=`echo $DIR | sed 's/.*///g'`
    echo "Now in $DIR"
    find "$DIR" -name "*.flac" | while read FILE; do
      SHORTFILE=`echo $FILE | sed 's/.*///g'`
      echo "Now moving $SHORTFILE"
    echo "--------------------"
    sleep 1

, , ,

1 Comment

Fun with Javascript

1. Browse to a site like Amazon.

2. Enter the following into your browser address window

javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin (R*x1+i*x2+x3)*x4+x5;*y1+i*y2+y3)*y4+y5}R++}setInterval('A()',5); void(0);

3. Hit Enter and watch the weirdness.

, ,