Monday, July 27, 2009

Toronto Pearson International Airport


I arrived from San Francisco 70 minutes late. We did make up some time, from the ground delay at SFO. Getting to my connecting gate was simple. Get off the plane from the US, follow the signs to customs, show boarding pass and you are sent through a door into the transit area, walk down a long corridor, and arrive in the international departures terminal. Not even 15 minutes. Very nice, bright terminal, by the way.

Though I think when that airport agent sent me through that door instead of to the passport verification booths right next to it, she mistook my red german passport for a canadian passport. I noticed that a bunch of Canadians around me were sent through the door directly, while everyone else was sent to the passport booths. I didn't have my passport out, so when she saw it was red she just waved me through...

Boarding for Munich starts in an hour.

"We're just missing a fire extinguisher ..."

My flight to Toronto left San Francisco 90 minutes late because ... wait for it ... one cockpit fire extinguisher showed low pressure and they had to exchange it. However, apparently you can't just buy a fire extinguisher easily at an airport.

After waiting for 30 minutes (on the plane...) Air Canada finally located a fire extinguisher at United Airlines. United needed some paperwork processed before they release the fire extinguisher to Air Canada (clearly I'm flying with a banana airline, that can't be trusted to pay its bills). The pilot came on and explained that "the paperwork from United will take 20 minutes or so to process".

Another half hour later, a United technician steps onboard with the bright red fire extinguisher (yay!), pilot explains that they "have the bottle. Now we just need to do the paperwork and we are on our way". We left a mere 30 minutes later.

The cabin crew was very nice about it though, they passed out water, the (very nice) entertainment system was running, and since I have a 4 hour layover in Toronto, I don't mind being late. Though sitting 6 hours in a plane instead of the expected 4.5 is a bit annoying., especially when you know that you have another 8.5 hour flight after that.

Friday, May 29, 2009

Door size label measures the door, not the frame

This weekend I'm going to replace the side door of my garage. I carefully measured the door and opening of the existing door. 31.5 inch wide between the outside of the frame. The rough opening in the wall is 32 inches wide and 81.5 inches high. So far so good.

Yesterday, I went to Home Depot, picked out a door style, and bought the 32x80 inch model, pre-hung, right-hand side. So far so good.

Today I measured the existing door frame again: 32x81.5 rough opening.
I measure the door: 33.5x81.5 ... Huh? Check the sticker. Yup, it says 32x80. Measure the door again: 33.5x81.5 inches.

*sigh*

I should have bought the 30x80 model, like my gut told me to. Another trip to Home Depot coming up. Return the door, buy the smaller version.

Wednesday, May 20, 2009

Nachtisch




Erdbeer-Rhabarber Kompott auf knusprigen Keks mit Schlagsahne. Hmmmm. Lecker.

Sunday, May 03, 2009

Fun with diverted files

I recently wanted to install a new program on grumpy, my MythTV box. apt-get install spat out a bunch of changes and dependencies, but I let it go ahead. What I didn't notice was a coreutils upgrade that was tucked away in the list, and led to the following error


Preparing to replace coreutils 5.2.1-2 (using .../coreutils_6.10-6_i386.deb) ...
Unpacking replacement coreutils ...
dpkg: error processing /var/cache/apt/archives/coreutils_6.10-6_i386.deb (--unpack):
trying to overwrite `/usr/share/man/man1/md5sum.1.gz', which is the diverted version of `/usr/share/man/man1/md5sum.textutils.1.gz'
dpkg-deb: subprocess paste killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/coreutils_6.10-6_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)


Woah. Now what? After some fumbling around, I gave up for the evening. It was late, I was tired.

This morning I took another look at this. apt-get install -f led to the same error. After some googling and browsing around, I tried


grumpy# dpkg-divert --list | grep md5sumlocal diversion of /usr/bin/md5sum.textutils to /usr/bin/md5sum
local diversion of /usr/share/man/man1/md5sum.textutils.1.gz to /usr/share/man/man1/md5sum.1.gz
grumpy# dpkg-divert --remove /usr/bin/md5sum.textutils
Removing `local diversion of /usr/bin/md5sum.textutils to /usr/bin/md5sum'
grumpy# dpkg-divert --remove /usr/share/man/man1/md5sum.textutils.1.gz
Removing `local diversion of /usr/share/man/man1/md5sum.textutils.1.gz to /usr/share/man/man1/md5sum.1.gz'


Running apt-get install -f again fixed up everything and the queued packages installed.

I didn't really know about how diversions worked before this (though, now that I got to play with them, it's kinda cool), so I'm baffled where this local diversion came from, as all the other diversions in the list are maintained by packages.

Thursday, April 30, 2009

Goats!



Update:
There is a Google blog post with more details.

Wednesday, April 29, 2009

Computer cabinet

Ever since we moved two years ago, "Chef", my file/web server, was sitting in the living room, and various other assorted computers were packed away in the garage.


You might argue, "why do you want to keep so many computers, when you survived for two years without them just fine?" ... Hmmm, good point. I am planning to consolidate a bunch of stuff, e.g redo the storage architecture for MythTV (do I really need 1.5T of RAID1 disk space in the living room, or can/should I split up into a true backend/frontend infrastructure, and combine this with the file server?)


Either way, those servers need to go somewhere and my old rack didn't fit into the train room, so I built a new rack that fits under the layout, and has enough space for those old Sun workstations, and my servers.

Since I still do wood-working near/in the train room, I added doors and dust screens. All the parts are left-overs from other projects:

  • The posts and wheels are from the old rack, and the posts shortened to match the new height requirements.
  • The bottom and top boards are from the tree house project (remember those roof plywood pieces were cut from a 8x4ft board).
  • The plywood for sides and doors was originally installed as cabinet doors in the garage. After one of the previous owners replaced the garage door the rails of the garage door are right in front of those built-in cabinets, so the doors no longer opened (!) One of my first actions in the garage was to take down the doors...


The new cabinet fits under the layout framing with 1/2" to spare, just as planned. When rolled to the middle of the room, I can access both sides of the rack. It's a bit cumbersome because the lower end of the layout framing is at a height of 27", but it works out reasonably well. I don't think I need to access this too often.

Tuesday, April 28, 2009

Ein Baumhaus - selbstgebaut (Teil 2)

Fast fertig. Jetzt fehlt nur noch die Dachpappe.

---

I built this tree house from redwood lumber over the course of 4 days while on vacation a couple weeks ago. The lumber is from Home Depot. Assorted screws and some power tools I was eyeing for a while, I picked up at OSH. The first day was spent with preparing the site, digging holes for the poles, mounting the platform frame to the pressure treated posts and cementing the posts into place. The platform frame is made from redwood 2x6 boards held in place by 4" Timbertite screws.

After letting the cement cure for 2 days, Day 2 was spent on adding two additional floor joists and installing the platform floor. I used Spax 3" screws for mounting the floor. A variable speed, corded 1/2" power drill is invaluable for this. Normally, Spax screws don't need pre-drilling, but it's a good idea to pre-drill when you need to set a screw near the end of a board. I kept the drill in my battery powered drill, so was able to work quickly.

Day 3 saw the cutting of 7.5"x1/2" 8ft redwood planks into slats for the railing. The table saw is awsome for this. I sanded down the rough sawed boards first. The railing is built from 2x4" redwood boards at 2.5ft above the platform floor. I attached the slats using Spax 1 5/8" screws, again pre-drilling the slats, since the screws are close to the end of each slat. Finally, I added the support beams for the roof and cut the rear posts to length, so the roof slopes down towards the fence.

On Day 4 I installed the remaining support beams for the roof, and the plywood. The plywood was cut from two 8x4 boards. I had them cut at HomeDepot to 6x3.5ft and ended up shortening one of them to 6x3ft, so it doesn't stick out too far in the back. The roof support beams are 6ft long and the plywood sticks out all around by about half a foot, giving a bit more shade and space for wrapping around the tar paper.

This was a bit more interesting than I expected. I installed the top plywood piece first, secured it in place with several screws. Then threw the second plywood on the roof, and realized I can't reach beyond the first beam to add screws. Climbing on top of this, with a half secured plywood board in the rear was ... a bit annoying, but I was too lazy to get the ladder out of the garage.
Once the plywood was in place, I cut the rear wall from 6ft redwood fencing boards, sanded them on the inside, and again screwed everything in place. A jigsaw makes cutting openings for the roof beams easy.

All that's left to do is find some reasonably priced tar paper. I need 6x7ft, plus some slack, ~50 sqft. The smallest roll at HomeDepot costs $40 and covers 100 sqft.

Anyone want to share?

Sunday, April 19, 2009

Ein Baumhaus - selbstgebaut

Naja, Baumhaus ist vielleicht etwas uebertrieben, eher wohl Spielhaus auf Stelzen. So oder so, ich hatte diese Woche Urlaub und wollte wenigstens einen Eintrag von meiner Liste streichen koennen.

Montag und Dienstag verbrachten wir mit diversen Handwerkern, die Angebote fuer anstehende Renovierungen im und am Haus abgaben. Mittwoch nach dem Fruehstueck wurde der Bauplan gezeichnet, und dann kam der Grosseinkauf. Zwei Stunden bei Home Depot, eine Stunde bei OSH. Am Abend war es dann beschlossene Sache, dass ich das Fundament aus Zement mache (und nicht Eisenbahnschwellen wie urspruenglich geplant).

Donnerstag baute ich zunaechst den Rahmen der Platform aus 2x6 Redwood, und montierte dann die Pfosten (4x4 pressure treated fir) in die Ecken (mit Timbertite 4" Schrauben). Schoen gleichmaessig ausgemessen, so dass die Platform in jeder Ecke die gleiche Hoehe hat. Was ich nicht bedacht habe war die leichte Hanglage am Zaun, und so musste ich mich beim Lochgraben fuers Fundament hinten etwas verkuensteln damit die Platform in jeder Richtung eben ist. Das letzte Loch war Donnerstag abend mit Zement gefuellt und die Platform und Pfosten provisorisch abgestuetzt waehrend der Zement abbindet.


Samstag ging es dann mit dem Boden der Platform weiter. Ich zog zwei zusaetzliche Spanten ein (2x6 Redwood) und montierte dann den Boden (2x6 und ein paar 2x4), worauf mir aber dann doch tatsaechlich die Schrauben ausgingen (Spax Stainless Steel 3").

Gleich nach dem Fruehstueck am Sonntag ging es nochmal zu OSH um den Schraubenvorrat aufzustocken. Dann ging es Schlag auf Schlag. Die restlichen Schrauben im Boden der Platform kamen rein, dann die Balken fuer das Dach. Nach Bestandsaufnahme der Vorraete stellte ich fest, dass ich zwei weitere 2x4 brauche, um das Dach ordentlich abstuetzen zu koennen. Ein Besuch bei HomeDepot steht auf dem Programm... Fuer das Gelaender habe ich grob gesaegte Redwoodbretter abgeschliffen, zersaegt und verschraubt (mit Spax Stainless Steel 1 5/8"). Fuer die Rueckwand haben die Bretter nicht mehr gereicht, und ein paar muessen noch nachgekauft werden.

Und da steht es nun in unserem Garten, das langersehnte Baumhaus. Naechstes Wochenende sollte alles fertig werden. Rueckwand ran und Dach drauf.

Wednesday, April 15, 2009

Da kommt's hin ...

A high-quality online model railroad magazine

Just came across Model Railroad Hobbyist, a quite nice online only model railroad magazine. Several well-known authors are writing for this magazine, Joe Fugate is an editor. The magazine looks very good, and is well done. The articles are targeted to the serious modeler, and, especially the step-by-step instructions, go into quite some detail. Nice. I wish them best of luck, and hope they succeed financially as well.

Friday, April 10, 2009

A random Link

Every so often one comes across a really well done site, and then it's written in a language you don't speak. Case in point: Avontuur in Miniatuur

The layout is very nice. The quality of the text and pictures is top-notch. I really like the Tips & Tricks section.

... and it's all in Dutch. Thankfully Dutch is close enough to German that I can find my way around, even though its quite a bit of work to muddle through words like "oppervlaktespanning" (surface tension), "afwasmiddel" (dish washing detergent), or "injectiepuit" (syringe). With a little bit imagination and reading the sentences out aloud the meaning often becomes clearer. "Oberflaechenspannung", "Abwaschmittel", "Injector thingie" convey enough meaning to make clear what the author wants to tell me.

Much more fun than using automated translation tools.

...

and if I actually paid attention, I would have noticed the "English" link in the top right corner earlier, though there is much less content in English than Dutch.

Monday, March 30, 2009

M4.3 earthquake near San Jose, CA


This earthquake just happened less than 15km from my house.

What I found interesting (and how I noticed this in the first place), is the chatter in the discussion channels at work went up immediately as the quake happened. Cool.

Also, I didn't notice the waveforms feature at USGS yet.

Sunday, March 29, 2009

What you don't expect to find in a computer

A spider's nest, or ... actually ... I'm not quite sure what this is.



I brought chef outside for the half-yearly dust-bunny cleaning, and was quite surprised when I saw this thing. They yellowy stuff is quite solid and sticks very well to the case. Here's a close-up.

Monday, March 23, 2009

Coffee table 1:160 N track test fitting


I finally managed to make it to The Train Shop in Santa Clara to pick up a few supplies, as well as some N track for the coffee table layout. I'm going to use Code 80 Atlas track, as it's cheap and reliable. The section ends are a bit odd looking. Seems there are some "snap" pieces that would hold the sections together. I'll either live with the look, or "fix" them, but that seems more work than it's worth.

The curves are the minimum radius Atlas offers at 9 3/4" (24.7cm), which is what I used when I planned the size of the coffee table. While wider curves would have been nice, I just don't have the space for a huge coffee table, and it's already quite big as is. Any bigger and I might as well convert the living room into the layout room.


Aside from confirming sizing, I also wanted to see my little Bachmann 2-6-2 Prairie run and see how it navigates the curves. Full score on both counts. The loco looks nice, is extremely quiet (especially compared to my HO Maerklin locos), and runs just fine. It seems it prefers to go forward though, as the speed with tender forward is a tad slower at the same voltage setting. This is an analog DC locomotive. I'm not planning to run the coffee table layout with digital control anytime soon.

Sunday, March 22, 2009

Done with taxes

Phew. I never did my taxes as quickly as this year. 1 day prep-work (basically filing away a year's worth of bills and paperwork) and a long afternoon for the actual return.

Most of the work consisted of copying what I did for last year's return, and TurboTax Online makes this really easy. I've been using TurboTax Online for the last couple years, and every year it becomes more slick and less clunky. I don't miss the videos of the desktop version, never watched them anyways. Don't want to go back to pen and paper either. My situation is complicated enough now, that I'd rather have an accountant do it for me than trying to figure this all out without the guided interview style TurboTax uses.

So, I'm happy the pain is over for now, and I'm curious when the California refund is going to show up in my bank account. There was some rumbling during the recent budget mess that they would delay processing refunds.

Tuesday, March 10, 2009

To use a computer for controlling your railroad or not

Let's face it. I want to build and run my model railroad. I don't want to program a computer and debug all the little problems that pop up when you make things complicated. Over the last few weeks I spent several evenings trying out various free Linux programs for controlling a model railroad (srcpd/spdrs60, jmri, rocrail), and all of them leave something to be desired. Be it the UI (jmri), or communication with the Intellibox (srcpd, jmri, rocrail), or (in)stability of the program (rocrail, srcpd) , or complexity of figuring out how this is even supposed to work (jmri).

Especially since I don't want to do everything on a computer screen. There are parts of my layout where automated control makes sense, especially the hidden staging area. There are several parts (especially tunnels) where feedback sensors make sense, so I can display track occupancy somewhere.

However, I also want my kids to be able to just play with the railroad. Turn on the control station, pick a locomotive with a train and drive it. This is naturally easier if they don't have to fire up a computer and restricted themselves to the visible areas (and the connecting tunnels, of course), and not necessarily venture into the dungeons of staging.

Running trains digitally is a given for me. Even for the relatively short time I had with the few locomotives I converted so far, the experience of actually driving a train over a piece of track independently from everything else that's going on around it has been very positive.

However, doing this on the naked staging tracks and ramps that will be hidden later is not exactly satisfying. There's still quite a bit of work left to do in staging, though it's details. Most of the basic electrical and track work is done.

Now that I finally have most of the parts I need to start building Talheim station, I'm longing for making some progress there, build some scenery, and take a break on the topic of computer control, and ripping my hair out out.

Sunday, February 22, 2009

computer control for model railroads: srcpd & spdrs60

Even as a boy I already dreamed of controlling my model railroad with a computer. At the time I had a Schneider/Amstrad CPC 464 with Z80 CPU, 3 inch floppy drive, and a whopping 256kB (yes, KILO-Byte) memory. I thought about using the Centronics printer port to hook up a bank of relais to control switches and semaphor signals. Little did I know...


Fast forward 25 years. Computer-controlled model railroads are pretty common these days. I still love the idea to have a computer control train movements for background traffic, or when I just want to show off my layout. However, it's so much more fun to actually run a train and do stuff with it, while a computer takes care of background traffic tasks.

Over the last two weekends I hooked up the Intellibox via serial port to an old Dell Latitude laptop (which happens to have a fantastic 1600x1200 pixel display), installed the brand-new Debian 5.0, srcpd, and spdrs60.

srcpd is a middle-layer program that hides the mechanics of connecting to the model railroad and provides a generic TCP interface and protocol ("Simple Railroad Control Protocol").

spdrs60 is a graphical UI that is modeled after a Siemens control tower design commonly installed in the 1970's and 80's in Germany ("SPurplan DRucktasten stellwerk bauart Siemens 60").

Taken together, the photos show the result: I have computer control of my layout, including track occupancy feedback. The screen shows the tracks in hidden staging and the ramps leading to it, including the temporary return loop at the top of the ramp. Occupied tracks are illuminated with red indicators.


At the very top of the panel, just pass the bypass switch, spdrs60 shows a train making its way up the ramp, and if you look closely in the upper photo, it's the blue/beige BR151 with a short freight train in the background.
Staging tracks 3 and 4 are currently empty. Track 2 is also illuminated in red, indicating a train. In the upper photo we can barely see it's a BR86 steam locomotive with a gravel train. Finally, track 1 on the computer is still grey. When I took the photo, I didn't configure the feedback sensors for track 1 yet, so the computer doesn't yet show that track 1 is occupied by the red BR216 with a passenger train.

So far, so good. Under ideal circumstances it all works nicely. I control trains from the Intellibox, and the track illuminations on the computer screen change accordingly. I can even "fly blind" and start and stop trains in the right places with only looking at the feedback on the computer screen (not quite the point of this, but a necessary pre-condition for automating control of hidden staging).

However, I ran into multiple problems, particularly with srcpd and how it interacts with the Intellibox:

  • srcpd (at least in version 2.0.12) has a bug that causes it to crash whenever it receives a locomotive status change (INFO GL) for a loco whose id is in the range srcpd is trying to keep track of. Work-around is to set the GL range to 0, so srcpd doesn't try to keep track and report on loco status changes. Very unfortunate since I will need that functionality.
  • The Intellibox serial line control of srcpd tries too hard to be smart. E.g. it attempts to auto-detect line speed, even though there is a speed setting in the configuration. As a result, if srcpd happens to crash and starts up again, its attempts at auto-detection will yield garbage sent to the Intellibox, which can cause the train last controlled by the Intellibox to get a command to run and cause havoc on the layout. The only work-around I know for this, is for srcpd to be started only once after the Intellibox is powered up, or power-cycle the Intellibox after a srcpd crash. Annoying. I might try to change the code so it does all this smartness only when I configure an "auto-detect" line speed, which I won't :-) just open the darn serial port at 19200 bps and be done with it.
  • The Intellibox spontaneously rebooted twice while experimenting with this, and sometimes shows "=0=" instead of the speed or decoder protocol setting for locos. A power-cycle gets rid of the "=0=" display. I'm not quite sure what this stands for and how to get rid of it without power-cycling.
  • spdrs60 has no "intelligence" for train movements. The raw SRCP protocol needs to be either controlled programmatically, or with typed SRCP commands which is not hard by annoying. The syntax is similar to common ASCII based Internet protocols like SMTP or HTTP. In other words, spdrs60 is useful as a control panel for train movements, but it can't implement an automated control system for the staging tracks. However, I do like the openness and flexibility of the srcpd approach.


Railware is so much cooler than this. sigh.

Yesterday, I came across JMRI which is a different, and apparently quite mature open source software that also supports the Intellibox, at the expense of the generic SRCP middle layer. The UI is substantially more bare bones than spdrs60 and seems to be harder to set up, but JMRI might address some of my problems. It also provides Java libraries I could use for extending functionality, so I'm going to experiment with it next.

Monday, February 16, 2009

Soaked!



It's now raining for more than 24 hours straight. Our backyard is a swamp. There's a lake forming at the edge of the patio. Don't want to leave the house. Brrrr...

Apparently we had a fifth of the season's rainfall this far in the last 24 hours.

Wednesday, February 11, 2009

And there were geese



There's a new soccer field next to Amphitheatre Parkway. Recently, a flock of Canadian Geese decided to make this their resting ground.