Sunday, January 25, 2009

Clean Power

As part of my guitar effects house-cleaning I thought I would build a real 9VDC power supply rather than the mish-mash of batteries and hacked up wall wart that I use now. I also wanted to learn Eagle as it is always touted as the best, free CAD package out there for hobby electronics. I decided to start with this circuit for an adjustable power supply from Tonepad. Tonepad is great, but I think a lot of their layouts aren't the greatest since they don't try to minimize the amount of copper you must etch off of the copper-clad board. As a result, etching takes longer and you end up using more ferric chloride. This isn't really a concern, but I figured I could come up with an more optimal layout, and basically used this as an excuse to learn Eagle. I've never actually designed a single layer PCB before (my previous designs have been double-layer boards, ordered online from ExpressPCB), and never realized how difficult it was to route things given the single-layer design constraint. As a result, it took me much longer than I expected. I ended up with this layout:



I think it turned out alright, and I learned a lot in the process. Eagle is definitely much harder to use than ExpressPCB, but it has quite a bit more functionality (most of which I don't know how to use).

I also decided to experiment with Sharon's scrapbooking machine while I was at it. Instead of trying the usual toner-transfer method of etching the PCB, I thought I would try cutting the mask out of vinyl and etching the board that way. I loaded up her Klic-n-Kut, and cut out the layout which I had exported from Eagle.



I then applied the mask to the copper clad board. If you look really close you will see that the mask produced by Sharon's machine actually isn't all that great. I am on the very edge of the capability of her machine in terms of size. Basically, the size of the pattern I am trying to cut is so small, the machine can't produce it (the knife works by pivoting around a slightly off-center pivot point, which is about the size of one of the corners in my layout). There may be various ways around this, but I may just end up going back to the toner-transfer method for future layouts.



After about 15 minutes in ferric chloride, I had a PCB for my power supply.



All that was left was to drill the PCB and mount the components. After a bit of smoke (I soldered in one of the diodes backwards...oops!), the result was a working 9VDC power supply for my future guitar effects projects.



From Effects Pedals

Lots of Snow!

We got an email from Michelle the other day saying it was snowing in Scotland. That's nothing compared to the mass of white stuff we've received over the past week or so. Check out these pictures I took a week ago!



From Winter 2009


This was as the snow was still falling, and we got quite a bit more overnight. We had a bit of a warm spell during the week and a bunch of snow melted, but we still have a good amount lying around. To be honest I'm pretty sick of winter right now and can't wait for spring to arrive!

Thursday, January 15, 2009

Validating Archive Contents With Ant

Have you ever wanted a quick way of validating the contents of an archive as part of your Ant build? I'm sure there are many ways to accomplish this, the most straightforward being to inflate it to a temporary directory, but yesterday I crafted up this little nugget to validate an archive in-place and it seems to work great. And the best part is there's no messy cleanup needed afterwards!


<!-- Compute the difference of the actual JAR and the expected zip entries -->
<resources id="artifact.set.discrepancies">
<difference>
<!-- Create a resource set from the actual archive -->
<zipfileset src="${path.to}/some_archive.jar" includes="**/*" />
<!-- Create a resource set of expected items -->
<resources>
<zipentry archive="${path.to}/some_archive.jar" name="afile.ext"/>
<zipentry archive="${path.to}/some_archive.jar" name="anotherfile.ext"/>
<zipentry archive="${path.to}/some_archive.jar" name="a/path/to/afile.ext"/>
<zipentry archive="${path.to}/some_archive.jar" name="some/other/path/to/afile.ext"/>
<zipentry archive="${path.to}/some_archive.jar" name="META-INF/MANIFEST.MF"/>
</resources>
</difference>
</resources>
<pathconvert property="set.difference" refid="artifact.set.discrepancies" />
<condition property="artifacts.verified">
<resourcecount count="0" when="eq" refid="artifact.set.discrepancies" />
</condition>
<!-- Fail if any differences are found -->
<fail unless="artifacts.verified"
message="The following artifacts were not expected: ${set.difference}" />


Note: I believe a minimum version of Ant 1.7 is required for the resources stuff to work.

Friday, January 2, 2009

Tonelab For Sale

I'm selling my VOX Tonelab SE in an effort to minimize my guitar rig in 2009. If anyone reading this knows anyone who may be interested, feel free to contact me. The Kijiji ad is here.

I think I'll try to round out my sound with a few more home-brew pedals. I have a Tube Screamer and a Ross Compressor built. I'll need to find some good designs for a chorus and delay pedal and perhaps a flanger and a simple reverb unit. I wonder what's involved in building a tuner as well. Hmm... Tonepad here I come.

Wednesday, December 31, 2008

Enjoying Doing Nothing

We've been back home for a few days now and we are all enjoying doing a whole lot of nothing. Our sleep schedule is all messed up (going to bed at 3 and 4 in the morning, and not getting up until noon), but we figure there is no point fixing that until after New Years.

Rock Band 2 was waiting for us when we got home (thanks for the instant shipping Amazon!), so Rhiannon and I have been playing that quite a bit. We finally unlocked Shackler's Revenge by Guns N Roses - now to find where they have hidden away the Megadeth tune. Rhiannon is getting quite good on drums. If we continue at our current rate of play perhaps Todd and I will have a drummer to jam with soon!

So what to do next? I think I'll open a frosty Boddingtons while I think about that. I love the holidays!

Thursday, December 25, 2008

Intelliware Christmas 2008

While were catching up on events already past, on December 6th, our band played at the Intelliware Christmas party for the fourth year (I think it was the fourth time?) running. Intelliware is the company my brother (along with the rest of the band members) works for, and I just join them every year in exchange for a free meal and open bar (my drink of choice every year is St. Ambroise Oatmeal Stout).

The past three years have been at Hugh's Room, which has, to be quite honest, spoiled us musically. Hugh's Room is a great venue with a dedicated sound person and permanent (and great-sounding) setup. We literally would show up, plug in (and sound check) and enjoy ourselves. This year the venue was the Argonaut Rowing Club in Toronto. It is a great place, but there is no sound setup to speak of. As a result, we had to rent all of our own gear and set things up ourselves. We spent most of the day lugging gear and setting up, and by dinner time I was wasted and my voice was already screwed.

From Intelliware Christmas 2008


I wasn't particularly proud of our performance, but I am always hard on myself. What can you do; the bottom line is we had fun. The second set was particularly enjoyable as it was very late and everyone was mostly drunk as we banged out tunes until we were shut down by management at about 2:30am. ;) We still didn't get any of our Rush covers recorded (I think our rendition of Limelight was one of our best tunes this year), but we managed to pull off Money without too many hiccups.



If you look close, you can see Coco in the background (the one with the super-bright, blue LED) in all her tubetastic glory. She worked and sounded great all night. My thanks to Intelliware for hosting a great party, yet again. They really are a great bunch of people. The food (and the Oatmeal Stout) was awesome, and I had a great time despite my self-deprecating tendencies.

Wednesday, December 24, 2008

Christmas Eve In Tsawwassen

It's Christmas Eve and we have been in Tsawwassen (just outside Vancouver) since very early Sunday. On Monday the women drove to Abbotsford to get the turkey and spent some time shopping so I got to spend the day with Jordan and Griffin.



This is basically what Drew and Rhiannon have been up to for the past few days:



With the unusual weather, we have been spending a lot of time indoors passing the time with games.





But the real news here is the weather. Apparently this is the most snow Vancouver has seen in such a short period of time in many many years. Lucky us! So much for coming from freezing cold Ontario to warm Vancouver! Here's a picture of Jordan and Tracy's back yard yesterday (before the latest 15cm snowfall!):



At least we're not in Saskatchewan where the temperature has not rose above -20 (Celsius) in the past 12 days or so! I'm also thankful we got here with only a minor delay. The Vancouver airport has basically been shut down for a couple days and many people won't be making it home for Christmas. Some people have been camped out in the airport for over a day with no flights in sight! While the snowfall here isn't all that much (we get stuff like this all the time in Waterloo), Vancouver is just not prepared to deal with it. There are virtually no snow plows to speak of here (we've pushed at least four cars out of the cul-de-sac here - it hasn't been plowed yet), and most people don't even own a decent snow shovel! Wow.

Tomorrow I'll be getting up early and making waffles for everyone, and then the kids can finally open presents. Drew has been counting the sleeps since we got here. Hopefully tomorrow I'll have more to talk about and some more pictures (I've barely taken any so far!).

Merry Christmas to everyone!