Windows® 7 + SCSI = Pain

For those of you who have been regular readers of the Gribblog, it’ll come as no surprise that we’ve been running the final release candidate of Windows® 7 (the 64-bit version) on our “new” computer since its birth early in 2009. I still haven’t gotten around to re-installing the now-available RTM version. That will happen after I get through the massive archive of digital images and make a backup of all of the data files. So, pretty much any day now!

In general I’ve found Windows® 7 to be just fine. I can’t point to any significant improvement over Windows® XP, and I have no real experience with Windows® Vista, but I’ve run into few issues directly related to the operating system. The biggest challenges have been device support (a major complaint with Vista as well). At first, drivers for my M-Audio Firewire Solo audio interface and the little Brother laser printer we have were unavailable. In both cases, I was able to get things running using the 64-bit Windows® Vista drivers. The total time invested in those technical hurdles was probably under an hour.

All of the other software and hardware has been working just fine. I’ve even been able to run some really old software intended for older versions of Windows® like Oblivion and an old copy of Maple. The version of Maple I have from grad school (almost 10 years ago) didn’t even run properly under XP!

The slightly archaic Nikon Coolscan III with SCSI interface.
The slightly archaic Nikon Coolscan III with SCSI interface.

Recently, a friend “gave” us an older Nikon Coolscan III film scanner in exchange for a 6-pack of IPA—he’s a serious hop-head. It’s a very nice scanner for 35mm slides and film, but the catch is the SCSI interface. I was able to get it up and running on the old Windows® XP machine without too much trouble using a random Adaptec SCSI card, but try as I might, there appeared to be no way to get Windows® 7 to recognize the SCSI card.

Part of the problem is a complete lack of support for Windows® 7 (and Vista-64) for most of Adaptec’s legacy cards. On one hand, it’s hard to blame them, considering the age of the cards. Nevertheless, it’s amazingly frustrating to have functional hardware that you cannot use! The rest of this blog post is intended for any other unfortunate souls attempting to get something similar working. Even if that doesn’t apply to you, you may read on, but you were warned.

To add insult to injury, I slapped the card back into the old XP machine (now running Ubuntu Linux) and connected the scanner. After rebooting the machine, the hardware immediately functioned! Apparently it’s not Windows (as Redmond would have you believe) but Ubuntu that just works. There’s even aftermarket software for Linux available in the form of VueScan. I was just about to give up on Windows® and dual-boot the new computer in order to utilize the scanner when I got inspired to give it one more try.

Salvation in a PCI slot? The Adaptec ASC-29160 SCSI host adapter.
Salvation in a PCI slot? The Adaptec ASC-29160 SCSI host adapter.

Knowing that the RTM version was now available, I decided to see if the expanded user base had netted any new useful ideas. After a few different Google searches, I finally chanced on a SCSI card (again from Adaptec) that others claimed they were able to operate in Windows® 7 using the Vista-64 drivers. After locating a used Apadtec 29160 SCSI host adapter on Amazon.com for $24.99, I decided it was worth another try.

When the card arrived, I discovered that it was for an extra-long (or wide) PCI slot. My immediate thought was that it wouldn’t fit into the machine. It was originally designed for a ’90s vintage server architecture. Much to my delight, the cutouts fit, so I was able to use it with the newer PCI slot in the Shuttle PC. Of course, there was another issue that was immediately obvious. I still needed a driver.

For reasons unknowable, Adaptec doesn’t offer the drivers packaged with an official operating system release for download from their website. I needed the Vista-64 driver for the SCSI adapter, but it’s included in the official Windows® Vista driver pack. Therefore I couldn’t download it directly from Adaptec. Since I don’t run Windows Vista (64-bit or otherwise) I didn’t have access to the drivers, and without a single copy of Vista-64 on my shelf, I couldn’t just get it off a CD either. So, once again I turned to the Internet. I was able to find someone who had the driver files in a zip archive, so I downloaded them. After scanning the archive for viruses, I felt it was safe to install.

After installing the drivers, I needed to reboot the machine. I fired it up, and the Adaptec EZ-SCSI utility popped up during the boot. I knew the card was functioning and recognized by the system, but since the scanner is pinned for SCSI II (50-pin) and the card for ultra-wide SCSI (68-pin); there was just no way to connect the two!

It exists, a 68-pin to 50-pin SCSI adapter with high-byte termination.
It exists, a 68-pin to 50-pin SCSI adapter with high-byte termination.

Since I’m no SCSI expert, I turned again to the Internet for help. I quickly identified a 68-pin to 50-pin SCSI cable that appeared to be just what I would need; however, before I could order one, I discovered that it would only work to connect an ultra-wide SCSI device to a SCSI host. It turns out, you need to use an ultra-wide SCSI to SCSI adapter with high-byte termination. Although it makes sense (SCSI requires termination, and 18 pins would be unused in my configuration), I didn’t even know such a thing existed!

Fortunately, these too were available on the Internet, but I wanted to pick one up locally, if possible, just in case a return was ultimately necessary. I called over to J.B. Saunders, the local electronics superstore, and inquired. The guy on the phone said they were discontinuing SCSI-anything as a product line, but that they had one such adapter. I asked them to set it aside and rushed over.

When I retrieved the adapter from the counter I was saddened to see that it was for an internal ribbon connection (I never asked), but he directed me to the SCSI odd-lots still hanging on the wall. After a few nervous minutes, I found the right connector. A 68-pin male ultra-wide SCSI to 50-pin female SCSI adapter with high-byte termination. I had to pinch myself as I walked to the check-out.

Later that night, I added the adapter and connected the scanner. During the first boot, the SCSI utility correctly identified the Nikon Coolscan III, so I figured I was home free. Wrong! Back in Windows® nothing recognized the Nikon scanner, not even VueScan. I installed the VueScan drivers (Nikon doesn’t support the scanner in any modern version of Windows), but the software couldn’t locate a scanner.

I figured something was wrong, so I rooted around in the EZ-SCSI configuration utility. First I tried setting the card not to attempt to negotiate a wide connection, but that made no difference. Then I tried manually adjusting the communication bit-rate, but that too had no impact. I was just about out of settings when I tried forcing it to connect asynchronously. Desperate, I booted up the machine 1 more time. I re-installed VueScan and waited with my fingers crossed. This time it found the scanner! Amazing, only a case of beer, a “new” old SCSI card, a weird adapter, and a month of evenings were required to yield a fully functional SCSI Nikon Coolscan III LS-30 running perfectly under Windows® 7.

Movin’ On Up!

That’s right Weezie, we’re movin’ on up. But not to the east side or some deluxe apartment in the sky. No, we just moved the Gribblog out from under the Northern Colorado Grotto’s website to our new home. For the time being, you’ll be automatically redirected from the old web address to this new address. The big benefit is a new, easier to remember address (www.gribblog.com). I know, I couldn’t believe it was available either!monkey

FYI, for those running their own blogs and considering a move, etc. The relocation is pretty straight forward with WordPress. Just dump your MySQL database and backup all of the files that comprise your blog. You’ll need to create a new database on your new website (check the hosting provider to make sure they support all of the WordPress requirements before you get carried away) and a “user” to access the database on the software’s behalf.

If you’re moving to a new URL (domain name) as we were, you’ll also need to update the URL in all of the posts and permanent links throughout the WordPress installation. All of these links are stored as absolute links, so they won’t work with the new domain name if you forget this step. The easiest way to make the change is to just edit the SQL from your database dump and run a “find and replace” using your old base URL and the new base URL as the input. If you are also changing your e-mail address to match the domain name change, find and replace that data next. Otherwise, you’re all set to re-build the database on the new server by running the SQL. It will recreate all of the tables and populate them with the proper data.

Next, copy the files from your old installation to the desired location on your new server. Note that you’ll also need to modify the wp-config.php file to reflect the new URL and any other changes you’ve made to the database name, user name, or password. Once done, you should be able to point your browser towards the relocated blog and carry on as normal. If you have a bunch of high-res photos, this may take some time, but otherwise it’s pretty straightforward.

After all of the files have been copied and the “new” database installed, you should be ready to roll. Make sure you check everything out to see what is and isn’t working. If everything looks good, you might want to take this opportunity to update the software as well. If you’re working with one of the newer versions of WordPress, the built-in update feature works quite well. Just remember that if you’ve made any changes to the included themes, they may be overwritten in the updating process. Of course, this won’t be a big problem, as you have a nice current backup!

If you’re thinking of starting a blog, there are a number of cool content management systems (CMS) available to choose from. Blogger and WordPress are both popular blog options, but other options exist too. I’ve used both Drupal and Mambo (and the Mambo fork Joomla, too) for different websites, and both can be good options. My dad seems to like Plone, but it requires a dedicated server or virtual machine, both of which will cost you a bit more. Currently I like Drupal a bit better, but you should decide for yourself which best fits your needs. There’s a nice website at www.opensourcecms.com that offers a preview of various CMS options that you can actually modify and play around with. They have the open source options broken down into different categories like CMS, blog, portal, etc. Because they delete and reinstall the demo software for all of the systems every few hours, you can do just about anything to them in the interim. It’s a great way to test things out.

Happy Holidays!

Bring out the GIMP!

That’s right, I like GIMP—the GNU Image Manipulation Program, that is. It’s basically Photoshop® without the cost. Actually, the fine developers working on GIMP wouldn’t really like that description, but now you know what it does. Of course, like most pieces of advanced software, there is a somewhat steep learning curve, but with a little patience and a tiny bit of skill you can get some remarkable results.

For my last post on backpacking in the Lost Creek Wilderness I included an elevation profile for the trip. I made the profile by tracking out the route in TOPO. We have a rather old version of the software covering a smallish portion of the central Colorado mountains, but it covers the region we were in. Generally speaking, it’s pretty easy to draw out the map. You just follow the route with the mouse. In this case, I had to recreate some of the trail. I guess our electronic maps are a bit out-of-date. Nevertheless, with the topo map next to me, it was pretty easy to draw in the trail segments that were missing. Once done, you can automatically draw the elevation profile for the route and calculate the actual distances. It’s pretty neat software, because it uses digital raster graphics for the maps. This means that there are actual elevations encoded into the maps for each pixel. By taking the rise and fall into account, you get the actual overland distances traveled and not the 2-D projection as you’d get if simply measuring the route with a string or route tool. This really only matters for very hilly routes, as most don’t make that much of a difference.

The original elevation profile from TOPO. Pretty hard to read, and worst of ala, backwards!
The original elevation profile from TOPO. Pretty hard to read and, worst of all, backwards!

For some reason, after drawing the entire route, the elevation profile was backwards! I couldn’t figure out why it kept drawing from the end of the route to the beginning, but nothing seemed to make a difference. I exported the profile as a jpeg, but it was hard to read with the horrible blue background. Clearly this needed to be cleaned up before I could add it to Gribblog! Well, GIMP to the rescue.

After opening the jpg in GIMP, I first flooded the blue background with white to get a better looking profile. With the black border along the top of the profile separating the background from the profile, the software was able to recognize the background area without any trouble, so only a few pixels needed to be manually updated.

Next, I removed the blurry CAMP label above the marker indicating where we spent the night (relative to the profile). With a clean looking profile, I carefully selected the actual route, leaving all of the mileage and border in place, and cut the profile from the image. I created a new layer the same size as the original image and pasted the profile into the new layer. Now with the mileage, borders, and background separated from the profile, I flipped the profile horizontally within the new layer while leaving all of the surrounding info as it was.

The elevation profile for our trip. Notice how steep the last hill is—especially the downhill side!
The GIMPed elevation profile—now much easier to read and running the right direction! especially the downhill side!

Finally, I added a new label for the camp using a much larger font size and exported the image as a portable network graphic. I ‘m sure a more talented graphic artist could do an even nicer job, but I’m pretty happy with the results. If you need to occasionally edit some images (or even if you are a talented graphic artist) check out GIMP; I think you’ll find it very useful, and I know the price is right. You can find a version for just about any operating system under the sun.

A New Computer!

It’s been about 7 years since Jess and I purchased a new computer. This doesn’t count a laptop I received a few years ago from work as a holiday bonus or a new netbook that Jess got this year for her birthday. It also doesn’t count a long succession of used machines rescued from the trash heap. In this case, I’m talking about a tried-n-true desktop computer. We purchased our last machine not long after I started working for Eltron back in February of 2002. It was a refurbished Compaq that wasn’t quite bleeding edge* when we purchased it. Of course now, it’s more like bleeding to death!

The final straw for the computer was the inability to either add a newer graphics card or operate the optical drive after installing a SCSI card in order to interface a Nikon slide scanner we were given in exchange for a 6-pack of IPA. In both cases, the problem was inadequate power. The system wouldn’t boot with even a modest PCI graphics card. With the SCSI card installed, the computer failed when you tried to play a CD/DVD. This was super startling, as there is enough power to boot the system, just not spin-up the DVD drive.

I’d been looking at some different options for a while, but hadn’t decided what to get. While laptops are far more convenient, there’s something nice about having enough disk to hold all of your digital photos and music in one place. This is even more of an option when you consider that we (Jess and I) both have laptops. If we’re not careful, our photo and music collection can become rather bifurcated. Also, I’m not crazy about carrying around a laptop that could be lost or stolen with a bunch of financial information. Therefore, I think it still makes sense for us to have a desktop machine around the house.

While Jess will tell you it’s underutilized, one of my major requirements was a Firewire or IEEE 1394 port for my audio interface. I use an M-Audio Firewire Solo to connect the little hose studio to the computer. I added a Firewire card to the old computer, but I wanted it to be on-board with the new machine. It also needed to be a TI chipset, as some of the other brands have reported issues. Apparently the implenentation of IEEE 1394 isn’t quite as uniform as it could be. The saga of trying to get the interface to work with my laptop would be another agonizing blog post I’ll skip for the present!

I’ve been looking at these small form factor bare-bones systems from Shuttle for a while. Most seem to be Intel-based systems, but there are a few with AMD sockets as well. Initially the low-end systems didn’t seem to have much to offer in terms of I/O, and the more costly systems were too expensive for my taste. Recently, this seems to have changed, as I was able to find a unit with onboard Firewire and an AM2 socket. Now this isn’t the newest socket from AMD, but there are plenty of CPUs available with more than enough power for me. Remember, I’m no gamer!

In order to round out the system, I picked up a 2.6 GHz AMD Athlon 64 X2 5050e Brisbane  CPU with a paltry 45W power consumption, 4 GB (2 x 2 GB) of Corsair DDR2 800 RAM, a Samsung SATA CD/DVD burner combo drive with LightScribe capability, and a 1 TB Seagate Baracuda 7200 rpm hard drive. All of the hardware, except for the barebones system, were purchased from Newegg. I had planned to get the chassis, motherboard, and power supply from Newegg as well, but when I went to complete the order, the barebones system was sold out. I was way bummed, but a quick search turned up an identical item on Amazon’s website. As a bonus, the Shuttle box was refurbished, and saved me a few extra bucks! In total, the new system was about $390.00 including shipping and handling. Not too shabby.

All of the new computer parts ready to go.
All of the new computer parts ready to go.

It took a few days for everything to arrive, but once the parts were on hand, it only took about 20 minutes to assemble the system. One of the features I like the best about the case is Shuttle’s I.C.E. system. Because of the extreme small size, there isn’t enough space for a traditional CPU fan. Even if there were, air flow would be severely hampered due to the tight fit between the hard disk, optical drive, and CPU. Therefore Shuttle put together a nickel-plated copper heat pipe filled with DI water to channel heat away from the CPU and up to the main case fan. It’s a pretty ingenious design, and coupled with the lower power draw of the 45W CPU, one that should produce a quiet and cool computer. Of course, the new connectors used for SATA drives make for better air flow though the chassis as well.

With all of the parts assembled, it was time to put the cover back onto the case and try loading an OS onto the new machine. My plan was to run the latest Ubuntu (Debian Linux variant) release in a 64-bit version in order to take full advantage of the 64-bit CPU and the 4 GB of ram. I had previously downloaded an ISO image of the OS using the laptop and burned the image to a CD. Since Ubuntu has the ability to run “live” from the CD, I thought I’d check things out before installing the OS for good.

The Shuttle case with the CPU and I.C.E. system installed.
The Shuttle case with the CPU and I.C.E. system installed.

I powered up the machine and inserted the CD. Within a few minutes I had a pretty much fully operational Linux box. Since you can’t really add any drivers, etc. to a “live” Ubuntu system, there were a few things, like my audio interface, I couldn’t really test, but everything else appeared to be working well. I went ahead and installed the OS to the hard drive and set up the entire 1 TB with the necessary partitions.

The OS installed in just a couple of minutes, and found all of the necessary drivers. It even grabbed a proprietary driver for the on-board Nividia GeForce 7200 GPU. The only thing that wasn’t working out of the box was the M-Audio audio interface. I expected this challenge, but several users had reported success with either FFADO and/or FreeBOB, so I was ready for the challenge.

Unfortunately, after several days of trying different things, the best I could achieve was the ability to record through the audio interface into Ardour. I couldn’t get playback through Ardour via the interface to work, and I was running into some permissions issues I couldn’t get straightened out. This resulted in having to launch several components from the terminal as root using SUDO. I could have endured that, but I wanted the audio playback and especially system sounds to output through the interface. As a part of the setup, I have a pair of middle-tier studio monitors attached to the audio interface, and don’t want to use the onboard audio from the mother board.

The other requirement I have for the system is the ability to run Finale. Finale is a music notation package that runs natively under Windows and/or Mac OS X. Even though OS X is essentially Linux (licensed and modified BSD) there isn’t a native Linux version of Finale. From what I’ve seen on various discussion boards, I’m not alone in wishing that MakeMusic Software would remedy this. Alas, they haven’t, so WINE is the only real option. After several different attempt, with different versions of Wine, I couldn’t get the software to install. Since I’d heard that there were some issues in how WINE handles 32-bit apps in a 64-bit OS (due I believe to linking to non-native 32-bit library files), I re-installed a 32-bit version of Ubuntu, but neither the audio interface issues nor the Finale difficulties were in any way lessened. I even tried an older version of Ubuntu, just to see what impact that might have, but again I had no luck.

The cute little Shuttle system without the optical drive installed. It's only slightly longer than it is wide/tall.
The cute little Shuttle system without the optical drive installed. It's only slightly longer than it is wide/tall.

I was getting ready to try some other variants of Linux when I decided to try out the release candidate of Windows 7. Now, I’ve been actively avoiding Vista since its ill-fated release a couple of years ago, so I didn’t hold out high hopes for Windows 7 either. Given the massive amount of code comprising a Windows NT-based operating system, I highly doubt Microsoft can really start anything from scratch. Nevertheless, I’d invested relatively little (time-wise) into the current system, so what would it hurt to try? The download was relatively painless, but I’m a bit saddened that the ISO is slightly too large to fit onto a CD. This means wasting a DVD (or putting it onto a USB stick) to install the OS.

Much like Linux, the install was pretty painless. Everything was recognized from the outset with the exception of the audio interface and my laser printer. Now I should point out that our little Brother laser printer was immediately recognized with every version of Ubuntu I tried and printed immediately without any modifications. It’s attached via USB for those who are interested. The audio interface took a few attempts to get it going. M-Audio is still working on a native Windows 7 driver for the interface, but I was able to install the Vista-64 version running under Vista-64 compatibility mode. I should point out that the biggest challenge in getting things like this to work under Linux isn’t really the OS, but a lack of support by the hardware manufacturers. There just aren’t enough people using Linux to force manufacturers to develop drivers in-house.

The rest of our software, Finale included, was pretty easy to install. I was even able to get the printer working by downloading a 64-bit Windows XP driver from Brother’s website. Windows 7 appears to search online for compatible drivers, but for some reason it couldn’t find this driver. As soon as I unpacked the zip file onto the desktop, the system found the driver and installed it properly using the add hardware feature that has become a standard part of the Windows operating systems for several generations.

So, I’ve been using the OS for a few weeks, and my opinion of it is mostly positive. It’s an extremely pretty OS. Here I should point out that we splurged for a new 1080p flat-screen monitor. It’s about 21.5″ inches (diagonal) and takes some adjustment from the small 4:3 picture tube we’re shifting from. The oddest thing is actually wanting to run with software in reduced windows. Finally there is enough space on the desktop to use more than one program simultaneously without shrinking things to miniscule size.

None of the screen advances are related to Windows 7, but there are a few neat features. One handy touch is the way the inactive applications are displayed on the taskbar. You can hover over the icon and a small image of the window will appear on the desktop. The images isn’t large, but it’s sufficient to monitor ongoing tasks, like big downloads, without restoring the screen. As soon as the mouse drifts away from the icon, the snapshot fades away. The Vista-esque transparency effects are also neat, but these don’t really offer any real advantages to the user.

Another interesting idea is the introduction of libraries. Here like files accessible by the user currently logged into the system are grouped into libraries regardless of the logical location where they are stored on the hard drive. This is rather handy when you’re searching for a photo or file that could be stored in a number of locations, but it’s terribly inconvenient when trying to save new files. This is especially so when adding photos to a shared photo directory. Since I’ve set up users for both Jess and I, I want to keep all of the pictures and music in a common location so that either of us can access them. So far, I haven’t found an easy way to point towards the shared, as opposed to user specific, photo directory without backing all the way to the directory root and then returning to the shared path. This is, to say the least, inconvenient. Maybe I’ll find a way to adjust that, but I haven’t spent much time searching yet.

Despite a few annoyances, the new machine is super fast. By transferring all of our old files, music and photos included, we’ve already filled up about 1/10 of the huge 1TB hard drive. I’m sure I’ll be adding a 2nd disk at some point in the future. Windows 7 is working well enough that I might just keep it when the final release version becomes available. I guess this will depend on just how much they want for the software. If it isn’t reasonable, I’ll just re-load with Windows XP (64 bit, of course). In the meantime, I’m looking forward to trying this new LightScribe feature. It’s time to backup all of those family photos, and what could be better than a couple of dual-layer DVDs with fancy labels?

*Per Wikipedia, “bleeding edge” is a term that refers to technology that is so new (and thus, presumably, not perfected) that the user is required to risk reductions in stability and productivity in order to use it[1]. It also refers to the tendency of the latest technology to be extremely expensive.

The term is formed as an allusion to “leading edge” and its synonym cutting edge, but implying a greater degree of risk: the “bleeding edge” is in front of the “cutting edge”.

Jess’s Suggestions for Top-Notch Laptop Use

I’m no expert, but I sit in front of a computer all day, so here are my suggestions, à la Dave Letterman:

10. Make sure you have a high-speed Internet connection.

9. Buy a computer with a built-in video camera so you can Skype with your video-enabled friends and family.

8. Tell your video-enabled friends and family that you’d rather not see up their nostrils. Before you both log on.

7. Buy a USB or Bluetooth mouse and turn your touchpad off when you have the table space to use the mouse. (If your computer is new enough to come with that option.) It keeps you from bumping the touchpad, which makes the cursor of another sentence jump around, which makes you type half a sentence in the middle. (Darn it!)

6. Quit taking photos of yourself using the built-in camera!

5. For maximum pleasure, sit in a yuppie Boulder coffee shop with other yuppie Boulder laptopers, most of them wearing Spandex. Travel with lots of USB devices and headphones. Plug your computer into the wall, plug all your devices into the computer, and get busy doing important things like checking the weather while you watch it snow through the big coffee shop windows.

4. If you have kids, make sure to have a blog or photo gallery account with at least three hundred pictures of them. Insist that it’ll only take a minute to fire up the laptop and log into the forty-five pictures of Billy’s second birthday party, including a 365° view of him blowing out the candles and mashing cake all over himself.

3. Work everywhere you go. Weekends, evenings…we’re American, after all!

2. Spend plenty of time with your husband/wife/life partner. This is very important to a strong relationship. Make sure to occasionally smile across the glowing screen of your laptop and read a few sentences from whatever extremely specialized document you’re perusing. Pretend to yourself that your sweetie is paying attention to the amazing new Linux platform or poem scansion you’ve discovered. Feel the connection of true love. (Quickly, before his or her eyes dart back to the screen!)

AND FINALLY,

1. Always travel with your system administrator. Show her/him any virus messages that pop up, and feel free to make unreasonable demands. Also feel free to offer her/his services to any friends, colleagues, or random people on the street. (“Seriously, s/he likes to spend every waking minute of the weekend working on other people’s computer problems!”)