Blog

  • Success with Dell widescreen monitor and X.Org

    Success with Dell widescreen monitor and X.Org

    What a difference a video card makes…

    A couple months back I tried getting a Dell 2007WFP working with X, using the Intel graphics controller built into my motherboard. I didn’t have much luck. Well, now I have a new video card, with an nVidia GeForce MX 4400 chipset. And, all I had to do was specify the card, driver and resolution (1680×1050) in my xorg.conf, and it worked right away. Great. Still more work than it was with my Mac (where I just plugged it in and it worked), but not bad at all, especially considering that this is X.

    Still a few things to be resolved:

    1. The new card is only working through the VGA port. Need to figure out what magic incantations I need to use DVI.
    2. Apparently I can’t use the onboard graphics controller and the new (AGP) card at the same time. As soon as I plugged the new card in, it was like the onboard controller didn’t exist. So, I’m still stuck using the old Matrox PCI card for my other monitor. The Matrox only has 8mb video memory, which limits me to a 16 bit display depth. The MX 4400 apparently supports multiheading via the DVI port and VGA port, so I’ll have to see if I can do this with X.
    3. The widescreen monitor is vertically smaller than my other standard-resolution flat panels. I’m getting a little squinty-eyed staring at it. I think I may make it the “secondary” display and use a physically larger screen as my “primary” display.

    But all in all, I’m really happy to have the 1680×1050 working, and without much extra fiddling or hair-pulling.

    On another note, I’ve restored sonata to a new drive (after its old drive crashed). I lost a few files before I backed the dying drive up. The system works fine, but fonts in some applications are screwy (screwy fonts in X is a relative term, of course…). So, I may end up reinstalling the machine anyhow…

    Followup… looks like I may need to use nVidia’s driver (instead of the built-in nv driver) to get multihead support. I’ll try that out later this week.

  • Load center upgrades

    Load center upgrades

    Continuing in my grand tradition, I’m writing about yet another house project that I’d like to do… the problem, as always, is finding the time for it..

    We have two circuit breaker panels which really should be replaced. They are FPE panels with known safety issues. One panel is our main house panel, and the other is a subpanel. The FPE subpanel is fed by a third subpanel, a Square-D QO type.

    The Square-D subpanel has 20 slots, of which only 9 are currently in use. Because we’ve abandoned a few circuits in the FPE subpanel that it feeds, I could actually squeeze all the circuits into the Square-D if I wanted. However, if I did that, the panel would be full with no room for future expansion. So.. it would probably make sense to replace both subpanels with a single 24-slot Square-D QO type.

    I would need a panel, a cover, and a ground bar kit, as well as a bunch of breakers. It looks like the project would cost around $500. Probably worth it for the safety and peace of mind — maybe I should slate it for this winter.

    The main house panel is a bigger project. I would need to involve BG&E to get them to shut off my power at the meter, and to tell me what kind of service I have — the panel is 150 amps, but it appears that the service may be 200 amps. In this case, I’d get a 200amp, 40-slot panel. This project would probably run closer to $1000. If I can get the subpanel project under my belt this winter, maybe I could tackle the main panel next winter. Again, the main issue is finding time and prioritizing it amongst all the other stuff that has to get done around here.

  • Troubleshooting cloudy pool water

    Troubleshooting cloudy pool water

    For the past several years of pool ownership, I’ve always had off-and-on problems with cloudy water. I’m generally pretty good at keeping up with the water chemistry, so I’ve always been a bit curious as to why the water clouds up so regularly. The pattern is the same every year: it starts out crystal clear, then after a month or so, the water slowly starts getting hazy.

    The only way to get to the bottom of this is to apply the scientific method: assume that the problem is caused by x, try a known solution for x, and see if it works. I’ve worked at this over the past few seasons, and I’ve come up with three potential causes.

    [More:]

    Problem: Yellow algae
    Cause: Lack of superchlorination

    Yellow (or brown) algae presents as a fine “dirt-like” substance that accumulates on surfaces. When brushed, it dissipates easily and clouds up the water. It re-settles when the pump is off. I had big problems with yellow algae last year and the year before. At the time, I was superchlorinating very infrequently (only one or two times a season). This year, I have been superchlorinating weekly and also using a polyquat type algaecide semi-regularly, and I have not had an algae problem (yet). If this is the ticket to keeping it at bay, then I need to figure out the ideal frequency of superchlorination that will prevent algae blooms without wasting too much chlorine.

    Problem: High pH
    Cause: Prolonged use of hypochlorite sanitizers without adding acid to compensate

    High pH and/or Alkalinity can cause cloudy water. Once this year I let the pH drift to almost 8, and the water was noticeably turbid. Adding acid cleared it up after 12 hours or so. I’ve found that supplementing the hypochlorite with a trichlor floater (in moderation, to avoid high levels of cyanuric acid) can help to keep the pH down, particularly during the hot months when the chlorine demand is high.

    Problem: Inadequate filtration
    Cause: Undersized pump and/or not running pump long enough

    I’ll freely admit to running the pump as infrequently as I can get away with it, to try to save electricity. Unfortunately it appears that I’m paying the price for this in the form of cloudy water. Currently, the pump runs around 9 hours a day (6 hours in daylight and 3 hours after dark). With turbid water, a pH of 7.4 and no visible algae, I ran the pump for 24 hours straight and there was a marked improvement in clarity. So it appears that I need more circulation. This seems odd to me, because 9 hours really should be enough to fully turn the water over and keep it from clouding up. So I’m curious if my pump and/or filtration system is undersized. When I get around to it, I’ll measure my flow rate and see what kind of numbers I’m getting. If they’re low, I may want to consider a larger pump and/or filter. Until then, I guess I’m stuck running the pump longer if I want clear water.

  • Crash.

    Crash.

    Well, the hard drive in sonata, my desktop machine at work, is dying a slow death. I saw the writing on the wall a few months ago, and now it’s finally biting the big one. I’m typing on the box now, but it’s slowly getting wonkier and wonkier as it churns out ever more i/o errors, read errors etc.

    A new drive is forthcoming, but in the meantime, I’ve managed to back up what’s left of the old drive, so I can restore it onto the new one. And, I’ve found that when it comes to archiving drives with errors, cpio beats tar hands down. I started out doing

    cd /filesystem
    tar cvplf - . |
    ssh other-box "cd /backup/disk; tar xpf -"

    But, it dies as soon as it hits a bad spot.

    I ended up doing

    cd /filesystem
    find . -xdev -depth -print |
    cpio -o --verbose -H newc |
    ssh other-box "cd /backup/disk; cpio -id -H newc"

    The -H option is needed to back up files with inode numbers greater than 65535.

    Cpio is even more obfuscated than tar WRT command line options, etc., but it seems to do a better job at disaster recovery.

    Fun fun…

  • FP using new concerto

    FP using new concerto

    I’ve got my “new” P3-750 box booted up as concerto.ucs.umbc.edu. This post will hopefully confirm that b2evolution is working right. Things are looking pretty good. My calendar and photo album appear to be working. I set up my Oracle Calendar download stuff and it looks good. The RRBC mailing list is back up and running.

    The new box actually has slightly less RAM than the old one: 512M vs 576M. The old box will be going home to replace my old 300mhz P2 server, and I decided that I could use the extra RAM there more than here. So, the home machine gets 640M, and concerto gets 512M.

    Next, I need to do some memory, disk and video-card shuffling amongst the machines, so off I go to shut everything down…

  • sshdfilter config

    sshdfilter config

    I’m beginning to think I need to set up a Wiki for this stuff.. but later.

    Trying to get the sshdfilter stuff up and running on my new Debian box, and of course I didn’t document the process when I did it on 3 previous machines awhile back, so here goes.

    1. Install sshdfilter script in /usr/local/sbin
    2. Edit /etc/init.d/ssh. Look for two lines that look something like

      start-stop-daemon --start [...] /usr/sbin/sshd -- $SSHD_OPTS

      Replace them with

      start-stop-daemon --start --quiet --exec /usr/local/sbin/sshdfilter -- $SSHD_OPTS &

      Don’t forget the trailing ampersand!

    3. Create an executable file /usr/local/etc/iptables.sh:


      #!/bin/sh
      modprobe ip_tables
      iptables -N SSHD
      iptables -A INPUT -p tcp -m tcp --dport 22 -j SSHD
      exit 0

    4. Modify /etc/network/interfaces. Under interface eth0, add the following line:

      pre-up /usr/local/etc/iptables.sh

    And that should do it.

  • Reinstalling ‘grub’ boot loader

    OK. Documenting this here for the next time I have to do this.

    I’m working on setting up a computer that dual-boots into Linux and XP.

    Rule 1: Always put Windows on the first primary partition on the drive. Linux can go pretty much anywhere else.

    Rule 2: Always install Windows first, then Linux, so the boot loader will get set up properly. I knew this, but chose to do things the other way around anyhow (yep, I’m stupid that way). And of course, the XP install hosed the Linux boot loader, so I had to manually restore it, which was a big pain.

    Here’s how I reinstalled the boot loader, for the next time I ignore my own advice…

    1. Boot into the Debian netinst CD, or Knoppix, or Tom’s Root Boot, or whatever flavor of standalone Linux you prefer.

      With netinst, you’ll need to walk through the install process until it gets to the disk partitioning part (this ensures that the disk devices are loaded). Then, hit ALT-F2 to get a shell.

    2. Create a mount point, say /disk, and mount your root filesystem there. Example: mount /dev/hda5 /disk
    3. chroot /disk
    4. Mount any additional filesystems you might need, like /boot, etc.
    5. grub-install /dev/hda

    That’s all I needed to do, but it took several unsuccessful attempts to arrive at this.

    References: here and here.

  • The hidden cost of bill payment services

    The hidden cost of bill payment services

    I signed up for a bill payment service yesterday. While I was reading through all the legalese in the “bill payment agreement,” it occurred to me that although the service is advertised as being free, it’s really not. There’s a very sneaky cost to it built in, which must be weighed when determining whether using the service is actually cheaper than sending stamped envelopes.

    Allow me to elaborate. When a financial institution offers bill payment service, there are several ways in which they can pay the payee. One of these is to actually mail a physical check. And here’s the clincher: most of these services will debit your account at the time they issue the check. The funds are transferred to a “holding” account owned by the financial institution, and the check itself is drawn against the holding account.

    Now, when you write and mail a paper check, it never clears right away, because it has to go through the mail, then the payee’s accounts receivable department, etc., before it actually posts and the funds are withdrawn from your account. During that time, the money sits in your account accumulating interest for you. But with a bill payment service, it sits in the financial institution’s holding account, earning interest for them. And that’s the hidden cost: the interest you lose when making these types of transactions. The actual cost varies with the amount of the transaction, the account’s current interest rate, and the length of time it takes the lender to cash the check.

    [More:]

    Of course, the best way to illustrate this is to use a concrete example. Imagine a hypothetical payment of $100 from an account that pays 4% interest compounded monthly, and assume the check-cashing delay is 7 days. Also assume that a stamp costs $0.39 and a paper check costs $0.10. Using the compound interest formula with the above numbers, we come up with $.08 in earned interest on the $100 over the 7 day period. That’s less than the $.49 it would cost to mail the check, so in this case, the bill payment service is the less expensive of the two methods. However, if the payment is $1000, the earned interest over 7 days comes to $0.77. In this case, mailing the check is cheaper. Similarly.. if the payment is $100 but the payee takes 60 days to cash the check instead of 7, the accrued interest comes to $0.66, making the mailed check a better deal in this case too.

    It seems that for most average transactions, the bill payment service comes out ahead. The ones to look out for are: large payments, and/or payees who take a long time to cash checks. For most people, the difference in cost is not going to be enough to be significant (I’m also not accounting for non-monetary factors, such as the convenience of the bill-pay service vs. physically writing and mailing a check). But, it’s still worthwhile to keep these things in mind as you’re trying to pinch pennies. A few pennies here and there will add up over time.

    8/24/2006: I paid my first bill through Schwab Bill Pay this week, and it appears that my initial assumption was wrong. They paid the bill via a mailed check, but the check went directly against my account, rather than going to a holding account. So, the funds weren’t withdrawn until the payee cashed the check several days later. That basically kills the entire premise of this entry, and makes the bill pay service the clear cost winner in all cases (assuming there’s no monthly fee, of course). Bill pay services have apparently come a long way in the 8 or 9 years since I first tried one out.

  • Lots of fun stuff

    Lots of fun stuff

    A smorgasbord of various topics today.

    I biked in for the first time since 6/21 today. A week of bad weather at the end of June, followed by a 5-day Independence Day weekend, then more unsettled weather the following week, all combined to keep me off the bike for a while. Our boiler job starts tomorrow, which will potentially affect later rides this week, so I figured today was do-or-die if I’m going to get back into a routine. So, I did.

    I also signed up for online bill-payment through our brokerage, now that they’ve kindly made it free. I haven’t used a bill payment service since the late 90s, and I’ve heard they’ve come a long way. I hope to try it out later in the week — I need to wait for some material to arrive snail-mail first.

    And, lastly, I’m going to do a bit of computer shuffling..

    [More:]

    Currently, I have

    Name Location CPU OS RAM Disk Use
    sonata office P4 2.4ghz Linux 512mb 150gb Desktop
    concerto office P3 450mhz Linux 576mb 8gb Server
    doze office P3 700mhz Windows XP 384mb 20gb Windows Desktop
    snorkelwacker home P2 300mhz Linux 384mb 16gb Server

    Now that I’m running Remedy on a centrally-maintained Windows 2003 server, and I’ve switched from SQL Navigator to Oracle SQL Developer, I no longer need a full-time Windows desktop in my office. I actually will only need Windows when I’m watching my son, so he can play games. So, I’m thinking I’ll take the 700mhz box, add some memory to it, and make it my office server box. It’ll run Linux full time and dual-boot into XP on the rare occasion that Michael is here. Then I’ll take the 450mhz box home, make it my home server, and put my ancient 300mhz box out to pasture. That will buy me a bit of extra performance at home, and more memory (the 300mhz box is maxed out at 384mb).

    For the future, I’m moving away from Linux on the desktop in favor of OS X. So, my next new desktop computer will most likely be a Mac, which will then free up the 2.4ghz box. Then, the bubble-down process will begin again. Fun fun!

  • Mortar for pool coping stones

    Mortar for pool coping stones

    I swung by Lowes today to see what kind of mortar (and mortar ingredients) they carry. Neither they nor Home Depot seem to carry white Portland cement, so unless I go through a supplier or lumber yard, it looks like my only choice is gray mortar. However, I’m not sure that’s such a bad thing. Most of the stuff is going underneath the stones, where it won’t be seen. Gray Portland is cheaper than white Portland. What about using gray mortar to bond the stones, then filling in the gaps and other visible areas with white grout? That might be a plan. I just need to look into what kind of “grout” (I put that in quotes, because grout, mortar, etc. all seem to be basically the same thing, namely portland cement, sand, and additives in varying ratios) I would need to get.

    Lowes carrys Quikrete products (Home Depot carries Sakrete). They have a bewildering variety of different Quikrete products on the shelf…

    [More:]

    Number Description Bag Weight Bag Price
    1102 Mortar Mix 60lbs $4.00
    1125 Type N Masonry Cement 70lbs $8.00
    1125 Type S Masonry Cement 70lbs $8.50
    1136 Mason Mix – Type S Mortar 60lbs $4.50
    1136-58 Blended Mortar Mix 80lbs $5.32
    1124 Portland Cement Type I/II 94lbs $9.64
    1103 Sand/Topping Mix 60lbs $4.00
    1230 “Quikwall” Surface Bond Cement – White 50lbs $17.00
    1962 Medium Sand 50lbs $5.00
    1152 All-Purpose Sand 50lbs $2.90
    1133 Vinyl Concrete Patch 40lbs $13.43
    1585 Precision Grout 50lbs $14.00

    The task now, is to go through all of these, check the Quikrete web site to see what’s actually in each of them, and determine which product(s) are appropriate for my job. Stay tuned.