Wednesday, August 18, 2010

Map and Trail Information for Bend Oregon

I recently planned a long 21 mile mountain bike ride in Bend, Oregon for a family reunion.  The ride was awesome, but I found that planning the route took much longer than expected.  I searched the web for hours and hours before I even began to find useful trail information. I finally found good resources, but it wasn't easy sorting through all the static in Google's search results. But now that I have found the best resources for maps and trail information, I decided to depart from my normal tech-related posts and write something that hopefully saves others a lot of time when planning outdoor activities in Bend.  Whether you'll be hiking, biking, cross country skiing, horseback riding, etc, here is the map and trail information I wish I would have easily found when I was planning my activity...pocket maps, gps data, trail descriptions and ratings, etc.  Most of the information is free.

Trail Overview

Bend, Oregon is located just east of the Three Sisters mountains and Mount Bachelor, providing outdoor enthusiasts with plenty of trails to explore in the national forests. Although a lot of the information below is more directed to mountain bikers, several of the sites (like the US Forest Service) have trail information for hiking and other activities as well. As far as mountain biking is concerned, the following two areas are where most people will want to start looking for trail info:
  • Phil's Trail Network - There is a specific trail called Phil's trail, but it is only one trail among many in the entire network of connected trails in the area. There are literally hundreds of miles of trails to be explored. It would be easy to get lost amongst all the trails if you aren't properly prepared with trail info.
  • Deschutes River Trail - A great trail that follows a portion of the Deschutes river and provides several views of falls.
Bend is well known for these great mountain biking trails.  You are free to choose any route you want (with only one or two exceptions where a trail is one direction only). One option is to start at Phil's trail head and go for an out-and-back ride which will involve uphill on the way out and downhill on the way back. Another option if you want mostly downhill is start start at the Swampy Lakes parking area and choose your own route down to Phil's trail head (which provides over 2000 feet of decent). The trails are great for all levels of experience, from beginner to advanced. The trails are well maintained by COTA and are mostly nice smooth single-track.

One last thing...keep the following things in mind when planning a mountain biking ride near Bend:
  • Some (but not all) of the trail heads and parking areas near Bend require a day pass / parking fee from the US Forest Service. The US Forest Service map linked to below shows which trail heads require a pass and which ones don't.
  • Some of the trails in the higher elevations are still inaccessible in early summer due to snow levels. Local bike stores (like Pine Mountain Sports), US Forest Service, and others can give current conditions if you need them.
  • The Flagline trail (which can be seen on the US Forest Service map) is only open after August 15 due to elk migration.
  • The North Fork Trail is for uphill riding only...no downhill. This is one of the few trails where you are forced to go one direction.

Bend Map and Trail Resources

Of all the resources below, I found that the GPS/Google Earth data from Oregon Mountain Biking (ormtb.com) was the most useful for getting familiar with the trail names and locations. Google Earth is an invaluable tool for visualizing trail locations and planning a route. It is also great to be able to load the data on your own GPS so you can have it with you during your ride (in addition to a paper map of course).

Screenshot of Google Earth displaying almost all the mountain biking trails in Bend, Oregon. See information below for downloading the Google Earth KMZ file with this data.

Oregon Mountain Biking (ormtb.com)

The Oregon Mountain Biking website is a great resource for map and trail data. Here are several links on the site that I found useful:
  • Bend and Central Oregon Trail Information - ORMTB's main page for Bend and Central Oregon trails.
  • Central Oregon Overview Map - An overview of areas around/near Bend that have mountain biking trails.
  • Phils trails 8.5 x 11 Pocket Map - This is a link to a PDF document that has a nice map of Phil's area. This is the first of 3 maps I found really useful.
  • Google Earth KMZ File - This was the most valuable resource for me.  This is a link to the Google Earth KMZ file that has trail info for most of the main trails near Bend. In Google Earth, you can gather and view all sorts of information (elevation profiles for routes, measure route distances, etc)...great for planning.

US Forest Service - Deschutes National Forest

This should have been one of the first sites I thought of for trail information. They have some great information:

Adventure Maps

Adventure Maps, Inc. makes the definitive map of the area, but this one will cost you about $12. If you want a really good detailed map of the area, I highly recommend it. You can order it online and you should also be able to find it in most of the bike stores in Bend (I got mine at Pine Mountain Sports). It is the third of the 3 maps I found really useful. Here are some highlights of the map.

Areas Included On the Map

"The Bend, Central Oregon Mountain Biking and X/C Skiing Adventure Map is a waterproof, topographic map that includes a route guide covering trails throughout Bend, Sisters, and all of Central Oregon. This map provides full beta for mountain biking trails in the Phil's Trail System in Bend and the Peterson Ridge System in Sisters. 

It also includes detailed map and route descriptions for hiking, nordic skiing and trail running trails throughout the Central Oregon Cascades, Sunriver, Sisters, Newberry Crater & Horse Ridge, Gray Butte & Smith Rock, Waldo & Cultus Lakes and the McKenzie River Trail." -Adventure Maps

Waterproof and Tear Resistant, Revised at 3-year Intervals

"We print our maps on Polyart or HopSyn which, as plastics, are waterproof and tear resistant. Our goal is to revise and re-print each of our maps at 3 year or less intervals. This allows us to keep our maps very up-to-date with the latest trail changes and graphic enhancements." -Adventure Maps

Size of the Map
  • Map Open Dimensions: 27 X 39 inches
  • Map Folded Dimensions: 4 X 9.75 inches
  • Map Scale: 1:44,000 & 1:63,360

Donald Wyman's Trail Information

Wyman's site doesn't show up in too many Google searches but I found it to be really useful. Donald Wyman has put in a lot of effort to describe and rate almost every single trail near Bend. He also gives suggested loops/routes.

Central Oregon Trail Alliance (COTA)

COTA is the organization you should thank for maintaining the excellent trails in Bend and for working with the US Forest Service to keep the trails open for mountain bikers. In addition to the newsletter and other information on their site, check out their trail information. Also, please follow their advice when riding on trails:
  • Skidding causes erosion
  • Keep single track single
  • Be courteous as some of the more popular trails can be croweded with runners, hikers, families, racers, recreational cyclists, etc

VisitBend.com

This site was created and funded by the Bend City Council. I didn't use this for any of my planning, but it does look like they have some good trail information. It looks like a good site in general if you are going to visit Bend; they have information on skiing, snowboarding, golfing, fishing, hiking, biking, rafting, and other activities.


Please leave a comment if I've missed a valuable resource that you think I should add to the list.

Wednesday, August 11, 2010

Review: XArmor U9BL Illuminated Mechanical Keyboard

Graphics On The Outer Packaging for the U9BL keyboard
This is a review of the XArmor U9BL mechanical switch keyboard. In the review, you'll find quite a few pictures (50+) and some of my impressions of this keyboard after using it for about 5 days. Unlike the typical review process, I'll also be sure to check back in at some point in the future to give my longer term impressions about the durability and quality of the product. The review provides a brief background of mechanical switch keyboards and what led me to this purchase, then proceeds to the the features, packaging, construction/quality, and my general impressions of the keyboard.

Update (1/27/2011) - As promised, here is my quick update on how the keyboard is holding up over time.  After about six months of using this keyboard, I can say that I have been very happy with the keyboard. It has held up very well and there are no signs of wear with the rubber coating. I should note that the keyboard saw moderate to heavy use during its first 2-3 months when I was out of work and using my home desktop as my main computer, but now that I'm back at work it only sees light use during the evenings after I get home from work. Also, I only occasionally use the keyboard for gaming so it doesn't get heavy use in that department either. Depending on how you would use the keyboard, your mileage may vary but I've been impressed with the keyboard so far (although the novelty of the backlight has warn off and I never use the backlight anymore). I will also note that it looks like XArmor is now selling a cheaper version of the keyboard without the backlight so if you don't think you'll ever need the backlight, the cheaper version may be the way to go.

Note: I decided not to include all 50+ pictures in the main body of this review (I only included 20), but I did create a public web album with higher resolution versions of all the pictures I took.

Background

I had been needing to replace my flaky wireless keyboard for more than six months, and I'm actually glad I put off buying a replacement until last week. If I had not waited, I wouldn't have the keyboard I do now...the XArmor U9BL.  That is because the XArmor U9BL, made by iOne, only just started selling at the end of July and it was pure coincidence that this keyboard was released around the same time I started searching for a new one.

I had been reading review after review of Microsoft and Logitech keyboards and just wasn't seeing anything that was feature-full, well built, and reliable. Complaints about those keyboards included things like the lettering on the keys wearing off quickly (which can be common), certain keys not working after a few months, and even specific key combinations not working within games. There are always going to be negative reviews of products on the internet, but my general sense was that keyboards are not being made like they use to be. You know the saying...you get what you pay for.

My frustration with the quality of keyboards eventually led me to some interesting forums discussing the virtues of mechanical switch keyboards. I was not a stranger to mechanical switch keyboards, but I had not used one for quite a few years (the last one being a classic IBM Model M keyboard that I grew up using). I had been using rubber-dome keyboards for so long that I guess I had assumed these "vintage" style keyboards didn't really exist anymore. If you're wondering what a mechanical switch keyboard is and how it differs from rubber-dome keyboards, here are a few links that will explain the differences and the types of mechanical switches available (Cherry MX, buckling spring, Alps, etc).
Also, to save you some time researching these types of keyboards, here are some of the more popular ones with normal key layouts that have been on the market for a while (in no particular order):
There are other cheaper ones available but most reviews indicate that they suffer in the quality department.  Mechanical keyboards also come in other layouts and form factors like the tenkeyless design. I use the number keypad all the time, so I don't even consider the smaller form factors.

The keyboards above are in the $125 and higher range. Most people may not be able to justify the cost of these keyboards, but it is a shame that a device we use every day to interface with our computers is often cheaply made and provides a horrible typing experience. For this and other reasons, I decided to splurge and get the XArmor U9BL.

Review

A nice view of the clean-edged lettering on the laser-etched keys.

Features

The XArmor keyboard has an impressive list of features:
  • Cherry MX blue mechanical key switches (rated for 50 million keystrokes)
  • N-Key Rollover - I haven't mentioned this yet, but you can reference this post for more information on this feature.
  • Blue LED Illumination (one LED underneath each key) with 8 levels of brightness
  • Media keys (up and down volume level, mute, next/previous track)
  • Integrated two port USB 2.0 high speed hub
  • Audio
    • Headphone jack
    • Microphone jack
This is the only keyboard currently available with all of these features. Out of all the available mechanical keyboards, there are only two backlit ones that I know of:
  • XArmor U9BL
  • Deck Legend
For me, backlighting wasn't a necessity, but there were a few occasions with my old keyboard where I would have liked this feature. The Deck Legend is the more sturdy keyboard weight-wise, but the XArmor includes additional features I knew I would use (built-in USB hub, media keys, audio/mic pass-thru, etc).

Packaging / Contents

The XArmor keyboard comes in fairly standard packaging. No complaints here.


In the packaging, you will find these items in addition to the keyboard:
  • Wrist Rest
  • Extra Keys, plus a key puller
  • PS/2-to-USB converter (pre-attached)
  • Manual - The front cover shows that the escape key has a red LED, but it doesn't. I would have actually liked that.

This keyboard looked good from the pictures I saw, and it looks just as good in person. It has a nice clean standard layout and it has a rubber coating that gives it a nice soft, diffuse look.


Here are some closeups of the wrist rest...



Here are the audio/mic and USB cables...some of which are pointlessly plated in gold. The ps2-to-usb adapter comes already attached.


Last of all, here are the extra key caps and the key puller that were included with the keyboard.

Construction and Quality


Internals

I haven't taken apart my keyboard yet (other than removing a few keys), so I'll refer you to the XArmor trial run sample review for pictures of the keyboard's internals (soldering, components, etc).  They have some great pictures that help give an idea of the internal build quality.

Weight

One thing I noticed when removing the keyboard from the packaging was the solid feel. The keyboard weighs in at slightly over 2.8 pounds, which isn't as beefy as a Deck Legend (3.5 lbs.) or Model M (5-6 lbs.) but it is better than the average keyboard. My old wireless keyboard which was larger than the XArmor weighs less at 2.1 pounds.  While weight shouldn't be the sole factor in determining build quality, the weight of this keyboard did give me the impression that this was a solidly built keyboard.

Rubber Coating

There seems to be a trend with gaming keyboards (I'm thinking Razer Lycosa and other keyboards) to use rubber-coated keys. In the case of the XArmor, pretty much everything is rubber coated except the bottom of the keyboard.  You'll find it on the top and side surfaces of the keyboard, the keys, and the wrist rest. There is a definite tactile difference between the feeling of the coating on the keys and the rest of the keyboard.  The wrist rest and other surfaces of the keyboard have a nice soft/smooth feel to them, while the coating on the keys has a slightly rougher/harder feel giving an impression of greater durability.

The long-term durability of the rubber coating concerns me a little bit, but that is only a concern that can eased over time if the keyboard holds up well. I've seen several people complain about the rubber coating peeling off the keys on the Razer Lycosa, but that keyboard may use a completely different type of coating and/or process for applying it (which is the impression I get after looking at pictures). I don't want to give anybody the impression that the coating will peel, but it was a concern I had before buying the keyboard. It is less of a concern now that I've had a chance to see the keyboard and type on it for a few days. And if it does turn out to be a problem, hopefully it would be covered under the one year warranty period.

I thought it would be interesting to share some information I received from XArmor USA regarding the manufacturing of the keys. Here are two email excerpts from my communications with them before I purchased the keyboard:

"The keycap on XArmor U9BL is molded with translucent material and then coated with soft black rubber coating and finally with laser etched on the characters. Very similar to what they do on most cellular phone."

"I've missed one thing, the key cap has a final clear UV coating on them, so it will prevent the key characters from wearing out."

The only other thing I want to touch on in terms of the coating (which is going to be a little nit-picky) is the slightly uneven application of it on some of the keys. The picture below shows one of these keys. The unevenness only ever occurs on the bottom half of the key, not the top, so it is barely noticeable when the keys are on the keyboard.


While I'm on the subject of key caps, here is another picture of the key cap viewed from the bottom which shows the translucent plastic:


Overall, the rubber coated keys feel and look nice but I imagine most people willing to fork out money for a mechanical keyboard would consider durability a higher priority. Even though the keyboard is rated for 50 million key strokes, you don't want the keys to be the lowest common denominator (again, this is just an assumption since the durability of these keys hasn't been proven yet). It would be great to see a version of this keyboard with dual injection molded keys (or dye-sublimation) and know that the key caps would last as long as the rest of the keyboard.

Typing

Mechanical Key Switches

One of the main draws for this keyboard are the Cherry MX mechanical switches used for the keys (as seen in the picture below). They have a great reputation and they provide a very satisfying typing experience compared to rubber-dome keyboards.  These switches come in various colors; each color varies in terms of tactile feel (linear vs non-linear force required to press the key) and noise (i.e. clicky vs non-clicky).  This particular keyboard uses Cherry MX blue switches which provide a nice "clicky", tactile feel for everyday typing. I like the clicky noise, but keep in mind that it is loud enough to where it could be an annoyance for other people that work around you.

The blue switches were an interesting choice considering the keyboard is marketed as a gaming keyboard, because it is generally agreed among enthusiasts that Cherry MX brown or Cherry MX black switches are better for gaming (refer to the links at the beginning of this article for more detailed information on the difference between the colors). With that said, I am perfectly happy with the blue switches, but I'm not a heavy gamer. I hope XArmor continues to sell this keyboard with blue switches, but I do think they should provide this keyboard with at least one other switch color to appeal to a wider audience. In fact, XArmor is currently running a poll on their site to find out which switch people are most interested in if you'd like to vote and give your input.

Cherry MX Blue Mechanical Switch

Making the Switch

During my first ten minutes of using this keyboard, the thought that kept running through my mind was that it could take some time to get used to it.  For example, one of the first things I noticed was that both Shift keys and the Backspace key felt much stiffer than the other keys. I'm not sure what is different about these keys, but they definitely require more force to depress and it was ruining my typing rhythm. However, now that I've been using the keyboard for five days or so, I think my fingers have adjusted because I don't really even notice the difference anymore.

Even though switching to the new keyboard felt different at first, I can't say that it immediately felt better than my older rubber-dome keyboard that I had been using for so long. However, I recently tried typing on the old keyboard again and the new keyboard felt dramatically better in comparison. It reminds me of the switch from VHS to DVD. I didn't feel like there was a huge difference in quality moving to DVD, but after watching DVDs for a while it was really hard to go back to the lower quality of VHS tapes.

Touch Typing

Touch typists will enjoy the well placed and nicely raised ridges on the 'F' and 'J' keys on the home row.


Testing Switch Quality and N-Key Rollover

I ran through two tests on my keyboard to make sure nothing was defective:
  • N-Key Rollover Test - I tested the n-key rollover functionality with both USB and PS/2 connections. Everything worked as expected.
  • Key Chattering/Bouncing - Key "chattering" with mechanical switches is when one key press registers as multiple key presses. This usually only occurs if a switch is defective. There are simple tests that can reveal chattering and I didn't find anything wrong with the mechanical switches on my keyboard.

Media Keys

The media keys are located on the function keys (F1-F6) and they are activated by holding down the left Shift key then pressing the desired media key. The media keys work fine in Windows, but I do have a minor complaint with how they were implemented. Because the media keys require holding down the Shift key, the operating system sees a key combination like 'Shift+VolumeUp' instead of just 'VolumeUp'. Again, this works fine in Windows but it did cause problems with my media key shortcuts in Linux. I would have much rather seen dedicated media keys or at least media keys activated by a dedicated function (Fn) key, not the Shift key. If a function (Fn) key had been used instead, the only key stroke seen by the operating system would be 'VolumeUp'. I haven't run into any other problems yet, but this could also cause problems with shortcuts in Excel, Photoshop, or other software applications that use shortcut combinations with the Shift key and any of the first six function keys (F1-F6). Again, this is because the operating system would see something like 'Shift+VolumeUp' instead of 'Shift+F3' if a shortcut like that was used. I should note that this would only happen when using the left Shift key; the right Shift key behaves normally and doesn't activate the media key functionality.

The media keys are located on the function keys (F1-F6).

For future XArmor products, it would be nice to see the media key functionality improved.  Here are some ideas:
  • Replace either the right Windows key or the Menu key right next to it with a function (Fn) key. Or make the spacebar shorter and add a fourth key to the left of the spacebar like they do on laptops.
  • Another idea would be to replace the num lock, caps lock, and scroll lock on the upper right of the keyboard with four dedicated mechanical switch media keys (mute, volume up, volume down, and play/pause). To deal with the missing status LEDs, they could turn the keys themselves into status lights since they are backlit. For example, the Caps Lock could change from blue to green if it is activated. Same goes for num lock and scroll lock. Or they could just put smaller status LEDs somewhere else on the keyboard.
  • Even better, and along the same lines of the previous idea. Replace the large status LEDs with a volume knob and 3 mechanical switch keys (play/pause, next track, previous track).  Turning the volume knob would control volume up/down and then it could be made so that pressing down on the volume knob mutes the audio. That would give dedicated controls for all six of the current media functions by using 1 knob and 3 keys. Again, the status LEDs could be integrated into to the caps lock, num lock, and scroll lock keys.
You can see there are plenty of room above the number keypad for 4 extra keys
(or 1 knob and 3 keys) if they decided to add dedicated media keys.

Anyhow, I thought I would throw those ideas out there in case anybody from XArmor reads this post. I don't know what the perfect solution would be without adding too many more keys and bulk to the keyboard (I like the compact nature/design of the keyboard), but it would be nice if there was an improvement with the media keys. I just hope they don't remove the media keys altogether like Das did with their keyboards.

Backlight / Illumination

The XArmor keyboard is illuminated by blue LEDs located under every key. The keyboard doesn't feature multi-colored programmable LEDs like other keyboards but the illumination does have 8 levels of brightness control. The brightness is controlled by holding down the left Ctrl key in combination with either the up or down arrow on the number keypad. The following picture is a composite of 3 pictures taken at night. From left to right, the illumination is turned off, then set to level 1, then set to level 8. The highest brightness level doesn't have the street lamp glow look in person (I blame my camera), but the highest level is quite bright at night.


Here is another similar composite image taken during the day at the same brightness levels. It is hard to tell from the photo, but the level 1 brightness is still sufficient for daytime use.


As you can see, the highest brightness level shouldn't leave anybody wanting a higher setting. I found that level 1 or 2 brightness was the most comfortable for me.  Anything brighter than that felt too distracting in my peripheral vision when I was focused on the computer monitor. Another thing to note is that there isn't much difference between levels 6 and 8.  They are almost exactly the same.

Overall, I'm happy with the backlighting, but I'll point out a few minor things that could bug some people. First, the larger keys aren't very evenly lit. As you can see in the picture below, they are much brighter towards the center of the key where the LEDs are located. Second, only the top half of the keys are generally lit well (which only affects a couple of keys). Again, the top half of the key is where the LEDs are located.  The Print Screen key is a great example of this; SysRq hardly looks like it is lit up in person. These minor issues also explain why they printed/etched the dual character keys the way they did. Take the apostrophe/quote key for example. Most keyboards stack these character vertically on top of each other, whereas XArmor places them differently and makes one character the super-script of the other character.

USB Hub and Audio

Both the integrated USB hub and audio pass-thru jacks work as expected:
  • Integrated USB Hub - So far, I've tested the USB ports with USB mass storage devices and the Xbox Live Vision camera.
  • Audio Pass-thru - I like the pass-thru design much better than keyboards that have built-in USB soundcards, like one of the Logitech gaming keyboards...yuck.

I have the audio hooked up so I can use either my speakers or my headphones which are plugged into keyboard. In order to accomplish this, I just used a short cable to split the audio output on the back of my computer. My speakers get plugged into one side and the audio pass-thru cable from the keyboard gets plugged into the other side. Both my speakers and my headphones get the audio signal simultaneously so I don't have to move cables around when choosing one output option over the other.

Conclusions

I mentioned at the beginning of the review that I was looking for a keyboard that was feature-full, well built, and reliable. As far as features, there isn't another keyboard that can boast every single feature this keyboard has (mechanical switches, LED illumination, integrated usb, audio pass-thru, media keys). As far as being well built, this is a solidly built keyboard with only minor issues (e.g. uneven application of rubber coating on keys, etc). As far as being reliable...I guess only time will tell. This is not a perfect keyboard and it might not meet everyone's requirements, but my typing fingers are thanking me for finally upgrading and making the leap to a mechanical keyboard. It is the first XArmor branded product to be released in the U.S. and I look forward to seeing other products from the company in the future.

Pros
  • Cherry MX blue mechanical key switches
  • Nice compact design while retaining the standard keyboard layout
  • Good overall build quality
  • Integrated USB hub
  • Audio pass-thru instead of integrated sound card like some other gaming keyboards
  • Bright LED illumination with 8 levels of brightness
  • A pleasure to use for typing
Cons (some of them are nit-picky)
  • Media key implementation could be improved
  • Uneven spray pattern on the bottom half of some of the keys
  • Evenness of backlighting could be improved 
  • No dual injection molded keys (or dye-sublimation)
  • Maybe the durability of the rubber coated keys? (this is yet to be determined)
  • Street Price ($150) - although you won't find many mechanical switch keyboards with n-key rollover much cheaper.

Search Google for more XArmor information

Places to buy this keyboard:

Other reviews for this product:

More Pictures

One last thing. In this review, I didn't include all 50+ pictures that I took so follow the slideshow below if you want to see all of them. They're all higher resolution versions (1024px) of the pictures in this review.

Saturday, August 7, 2010

N-Key Rollover: What It Is and How To Test Your Keyboard

In this article, I'll explain what n-key rollover is and some of the available methods for testing your keyboard's level of rollover support. N-key rollover relates to the ability of a keyboard to correctly recognize multiple key presses at once (in the case, the ability to press as many keys as you want) and is a feature that is needed among the following areas of computing:
  1. Gaming
  2. Braille Input
Even if you are not in either one of these categories, this article may still be of interest to you since keyboards with n-key rollover are generally of higher quality.  Most keyboards providing n-key rollover are of the mechanical key switch type as opposed to the rubber dome style keyboards which are, unfortunately, cheaply made and distributed with desktop PC's these days. However, I'll leave it up to another article and/or the curiosity of the reader to delve into the wonders of mechanical key switch keyboards. An excellent place to start is here.

N-Key Rollover Explained

What is it?

N-key rollover, often referred to as NKRO for short, is a term that is known and appreciated by many gaming enthusiasts but may not be as widely known as another term, anti-ghosting. Anti-ghosting is a term frequently used by Microsoft, Logitech, and other popular keyboard manufacturers when marketing their products.  It is important to know the difference between the two terms:
  • N-Key Rollover - The press of each key on a keyboard can be detected individually, which means that each key you press will be seen by your operating system no matter how many keys you are holding down simultaneously (hence the variable 'n' in n-key to refer to as many keys as are possible to press on a keyboard).
  • Anti-Ghosting - This can refer to the ability of a keyboard to recognize 3 or more key presses at once. The main thing to point out is that anti-ghosting usually implies that there is a limit on which combinations of keys and how many of them can be pressed simultaneously, while n-key rollover keyboards have no such limit (except when using USB, see 'PS/2 vs USB Technical Limitations' below). The number of simultaneously recognized key presses varies between each model of keyboard that does not have full n-key rollover. In some ways, you can think of anti-ghosting as an attempt by manufacturers to improve functionality of cheaply made rubber dome keyboards, without having to implement proper n-key rollover functionality.

    Note: Although this is how the term anti-ghosting is usually used, ghosting on a keyboard actually refers to something else. "Ghosting is when you press two keys on the keyboard, and a 3rd key - which you didn't press - gets sent to the PC as well. This is very rarely seen on even the cheapest modern boards, because manufacturers have the habit of limiting the rollover so that ghost keys are always blocked." -Overclock.net Forums
If you'd like to explore this topic in greater depth, I highly recommend starting with the following:
  • Technological Background Information - Even though this is on a braille-oriented site, skip to the section titled 'Technological Background Information' for an excellent discussion on n-key rollover (which most keyboards had in the early days of computing before keyboards became cheap commodity items).
  • Wikipedia - Explanation of keyboard rollover.
  • Microsoft Applied Sciences - Explanation of keyboard ghosting.

Why Should I Care About It?

It is probably about time to give an example to bring things into context. The Microsoft Sidewinder X6 keyboard is a fairly recent gaming keyboard that is frequently criticized for its anti-ghosting capabilities or lack thereof.  With this particular keyboard, the common complaint is that gamers can't press certain 3-key combinations like:
  • Ctrl + W + R (Crouch + Forward + Reload)
In this case, after pressing the first two keys (Ctrl + W), the third key (R) doesn't register. While key combinations like this may not be used by every gamer, it is a real problem...even with keyboards like this marketed towards gamers. Whether you are a gamer, a photoshop user, or power user of other software you may come across certain 3-key combinations/shortcuts that may not work. The circuitry in keyboards these days is designed in such a way that only certain key combinations work. Engineers optimize the circuitry so that the most common combinations will work, but the inherent drawback with the designs is that there will be combinations that just won't work. Again, I'll refer you to the Microsoft Applied Sciences article for a much more in-depth explanation.

My intent is not to single out the Microsoft keyboard, but to demonstrate that you may run into issues like this if you don't have a keyboard that has full n-key rollover support.

PS/2 vs USB Technical Limitations

Keep the following in mind if you have an n-key rollover keyboard that can be hooked up to your computer through either USB or a PS/2 port:
  • USB protocol limitation - A max of 10 simultaneous key presses are recognized, 6 non-modifier keys ('w', 'a', 's', 'd', etc) + 4 modifier keys (Shift, Caps, Ctrl, etc).  Although you are limited to 6 regular keys you are still guaranteed that any combination of keys will be recognized properly if you have an n-key rollover keyboard. I would guess that most people would not need support for more keys than this. I would also guess that the 6 key limit may have had something to do with braille input requirements rather than someone choosing an arbitrary limit (although that doesn't explain why the limit exists in the first place).
  • PS/2 - There are no limitations when using a PS/2 connection with your keyboard. You will truly get full n-key rollover support.
When given the choice between using PS/2 or USB, it is generally recommended to choose PS/2 since it doesn't have the rollover limitations.  However, if you enjoy hotplug support which PS/2 doesn't have, USB may very well be the better choice for you.

Testing Your Keyboard's Rollover Behavior

There are several ways you can test rollover behavior on your keyboard.  Among those I list below are:
  • Manual Typing Test
  • Web-based Tests/Demonstrations
  • Desktop Software (both Linux and Windows examples)

Test: Manual Typing

Often you'll see people mention the double shift-key typing test.  It is a basic test for demonstrating the problems that arise when keyboards don't support n-key rollover.  The test involves holding down both the left and right shift keys and typing the following sentence while still holding down both shift keys:

the quick brown fox jumps over the lazy dog

Use the following text input field to test it out yourself:

With most keyboards, you will see something like the following which was typed on a wireless Logitech keyboard (this will vary for each keyboard since each keyboard is optimized for different key combinations):
TE UIC RWN JUS VER TE LAY DG

You can see that a lot of characters were dropped during the test. This is what you should see:
THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG

Most consumer keyboards will not pass this test, so don't feel too bad that you have a crappy keyboard...because most keyboards are crappy like this.  :-P

Trivia note in case you're not sure where this phrase came from:
"The quick brown fox jumps over the lazy dog" is an English-language pangram (a phrase that contains all of the letters of the alphabet). It has been used to test typewriters and computer keyboards, and in other applications involving all of the letters in the English alphabet. Owing to its shortness and coherence, it has become widely known and is often used in visual arts. -Wikipedia

Test: Web-Based

Microsoft Ghosting Demonstration

You can use the demonstration directly below or by going to the Microsoft Applied Science ghosting demo page here.  Click within the demo and start pressing key combinations...



Tests: Desktop Software

Here are several desktop applications you can use to test n-key rollover functionality.  The first one is Linux-based while the remaining ones are Windows-based.

Gnome Keyboard Properties (Linux-based)

Gnome is one of the desktop window managers for Linux and it has a great tool for testing n-key rollover even though that isn't its primary purpose. You can open the Gnome keyboard properties with one of the following methods:

  • Run 'gnome-keyboard-properties' from a terminal
  • Go to the System toolbar menu on the desktop > then select Preferences > then select Keyboard


Once the keyboard properties window is open, go to the Layouts tab and click on the Add... button to open up the on-screen keyboard. Be sure to select the correct Country and Variant, then click within the keyboard area to start using it.



If you regularly use Windows, you can still use the utility without having to install Linux.  Just download an Ubuntu CD image (.iso file) from Ubuntu and either burn it to CD and run the Ubuntu desktop from the CD or install and run it from a USB stick...all without having to install Ubuntu on your hard drive. Further instructions for downloading and running it are on the Ubuntu website.

Aqua Key Test (Windows-based)

Aqua Key Test is a GUI application that shows an on-screen keyboard indicating the key presses that are being recognized. This is a small standalone executable that comes from Korea.

"Unlike ALL other keytest applications that I have tested (including commercial ones like PassMark KeyboardTest) this one is not tricked by fake strokes and checks only the real signals sent from your keyboard. What does this mean? This means that scripts and macro programs like AutoHotKey or AutoIt which generate keystrokes using the Windows API do not get picked up." -Geekhack.org Forums



You can download it here.

Passmark KeyboardTest (Windows-based)

This is another GUI application that shows an on-screen keyboard indicating current key presses. However, this one is trial-limited to 30 days after which you need to pay for the software. You can go to the Passmark website to download it.

Monday, July 26, 2010

Video Formats Supported by Nokia 5310 Phone

Yes, I know it is silly...watching videos on a Nokia 5310 is far from optimal since it has such a small screen.  However, if you ever find yourself in situations where you want to watch some videos to kill some time, the information below will help you get playable videos/movies on your phone.  This article lists the video formats supported by the phone and provides Handbrake presets that will allow you to transcode movies for your phone.

Supported Video Formats (Nokia 5310 XpressMusic)
Here are the video formats supported by the phone (I gathered the initial info from this link):
  • 3GPP formats (H.263)
  • H.264/AVC
  • MPEG-4
Even though the Nokia 5310 has a screen resolution of 320x240 (in landscape), the max video resolution supported by the phone is:
  • 176x144.  I have run some tests and this is indeed the max resolution, but I have found that 176x128 resolution videos provide the proper ratio to fill the screen when watching videos in fullscreen mode on the device (where you turn the phone sideways into landscape mode).  At first I tried to encode movies in anamorphic 176x144 modes to retain as much detail as possible, but the phone doesn't handle anamorphic video properly.  Since anamorphic video isn't supported, the video has to be stored with a 1:1 pixel ratio, and I found that 176x128 was the best resolution to use.  If you try to encode movies beyond these resolutions, you will hear audio but you won't see any video playing.
Handbrake Presets
Handbrake is an application that can convert/transcode your DVDs into smaller/alternate video formats.  I have saved several presets from this application that can be used to encode video for a Nokia 5310.  In this case, I was using the Linux version of Handbrake (Handbrake-GTK).  I would assume the presets I have saved can be imported into the Windows version of the software as well, but I haven't tested it.  You can download my saved presets from: here.  You will see the following presets in a 'Nokia 5310' folder after importing them into Handbrake:
  • Low (100kbps mpeg-4) - This preset renders watchable, but somewhat blocky video.  You probably only want to use this preset if you need the smallest video size possible.
  • Medium (200kbps mpeg-4) - This preset will still exhibit some blockiness, but it is a good compromise if you don't want to use the highest setting.
  • High, 15fps (100kbps h.264) - This preset uses h.264 video, which produces the best looking video, but it will only be at 15fps. I tried to encode h.264 videos at higher framerates, but they looked choppier than those encoded at 15fps...probably because the phone couldn't keep up with h.264 at higher framerates.
  • High (300kbps mpeg-4) - From my tests, 300kbps mpeg-4 video provides the best balance of smoothness (fps) and video quality but at the expense of storage space.  An mpeg-4 file at this bitrate looks almost as good as the h.264 preset but will take up about 1.8x more storage space (around 300MB for your average movie).
All of the presets use mpeg-4 video except 'High, 15fps' which is configured for h.264 video instead. All of the presets are configured for AAC 128kbps stereo audio.  I tried mp3 instead of aac, but the audio didn't play on the Nokia 5310 when using that format (this could just be an issue with how Handbrake adds mp3 audio to .mp4 files or a bug on the phone...who knows).

After selecting any of these presets in Handbrake, you may want to modify some other settings before starting a transcode job.  You may want to enable 2-pass encoding and you will most likely want to change the crop settings so the resulting video fills the phone's screen:
  • 2-pass encoding - On the 'Video' tab in Handbrake, just check the 2-pass encoding box if you want to enable this option. It should produce better video overall than the standard 1-pass encoding.
  • Crop Settings - If the movie you are transcoding is in a widescreen format (e.g. 16:9), you will most likely want to crop the video so it will fit the phone's screen (4:3 format).  As mentioned earlier, cropping the file so it ends up at 176x128 (4:3 format) is the optimal resolution for this phone's display and decoding capabilities.
The picture below shows an example of the crop and storage settings that are available in the Linux version of Handbrake.  These settings can be seen when you click on Picture Settings.
When modifying the crop settings, you need to uncheck the Auto Crop and Loose Crop boxes as seen above.  Next, Change the left and right side crop settings until the the Storage column shows a width of 176 and height of 128 (in this case, 100 pixels were chopped off each side of the movie to force it into a 4:3 format).  You will probably need to keep resetting the width back down to 176 after modifying the crop settings because the numbers can change automatically when the other fields are modified. Also, make sure that Anamorphic is Off and Alignment is 16.  I tried smaller alignment settings but the Nokia phone didn't handle them too well...16 is standard (I believe all this means is that the width and height values need to be multiples of 16).

One of the only things left to mention is that after you have copied a movie over to the phone, make sure you let the phone update the media library before trying to play a video, otherwise videos will play back a little choppy.  To initiate the process, open up the music player on the phone after copying the files over and it will automatically start updating the library (showing the status as it progresses).  If you don't manually start this process after transferring movies to the phone, the library update process will still run but it will run in the background without reporting progress.  The advantage to manually initiating the update process is that you can see when it is finished, so you know when you can start playing videos without them being choppy.

NOTE: Just as a side note. I inserted a 16GB microSD card in the phone and the memory status screen reported the correct size, used space, and free space on the card.  Even though the manual for this phone says it only supports up to 4GB, I believe some of the larger SDHC cards should work. I didn't have a chance to test the 16GB card over a longer period of time, though, so I'm not sure if using a card of this size will negatively impact the phone's operation in any way.  At any rate, a 16GB card would work well for sticking a bunch of videos on the phone.

Sunday, July 25, 2010

Nokia 5310 SIM Unlock Instructions

I recently unlocked my Nokia 5310 XpressMusic phone that I am using with T-Mobile and thought I would post some instructions for the unlock process.  If you have been on a contract with T-Mobile for a certain amount of time (at least 3 months I think but it could vary based on phone), you can call T-Mobile and get an unlock code emailed to you within 1 to 7 days.  It took less than a day for me.

I received an unlock code and the following instructions from T-Mobile:
NOTE: If you receive an error message while performing the instructions below, stop. Please be aware that if an excessive amount of incorrect attempts are made, the phone will be permanently locked.

1.  Press #
2.  Press * three times = P
3.  Press * four times = W
4.  Press * twice = +
5.  Enter the unlock code
6.  Press * twice = +
7.  Press 1, then # and the display should read "SIM Restriction Off"

Pay special attention to the note above about your phone getting permanently locked if too many incorrect attempts are made to unlock the phone.

Friday, July 23, 2010

DVD Backups Using Linux

A couple of weeks ago, I finally got around to backing up some of my personal DVDs.  There are several methods that exist for accomplishing this task under Linux, so I'll list some of the common tools that are out there and then explain why I chose the tools I did.

In order to backup DVDs, here are three approaches you could take:
  • ISO - ISO image backups allow you to create archival quality backups of your DVDs by creating a copy of the DVD image on your computer.  This gives you the advantage of having the original video streams, audio streams, and DVD menus at the expense of increased storage requirements (between 4-8GB per DVD). Several applications support DVD playback and/or transcoding from ISO images: MythTV, VLC, Handbrake, K9Copy, etc.

    Examples of ISO backup software:
    dvdbackup/genisoimage (CLI) - The combination of these two command line tools is very useful for backing up DVDs.
    K9Copy (GUI) - I was reluctant at first to try this since it requires QT libraries to be installed on Ubuntu, but I'm glad I did.  It was the best GUI tool I found for creating ISO images of DVDs.
    Gnome (GUI) - Right-click on a disc's icon on the desktop, then select Copy Disc.... This works for some DVDs, but it won't work for everything.

  • Transcode - Transcoding involves converting the original video and audio streams on a DVD to another format (h.264, Ogg Theora, etc).  This has the advantage of shrinking your video down to 1 to 2 GB while still maintaining good quality video (although usually not as good as the original video).  These smaller video sizes are possible because newer video encoding schemes can compress video much better than MPEG-2 video which is the standard for DVDs.  Transcoding saves disk space but can take a long time if you have a slower computer.

    Examples of DVD transcoding software:
    Handbrake (GTK or CLI version) - Transcoding DVDs is its only job and it does it very well.
    K9Copy (GUI) - Equivalent to DVD Shrink on Windows.
    dvd::rip (GUI)
    mplayer/mencoder (CLI)
    Others - Thoggen, VLC, AcidRip, ogmrip

  • Requantizer - This method (think DVD Shrink or K9Copy in shrink/copy mode) can extract the mpeg-2 video stream, run it through a requantizer which degrades quality, and finally re-packs the video data into the stream again.  This method is quite fast and is usually used to shrink a dual layer DVD (approximately 9 GB) down to single layer size (approximately 4.7 GB).

    Examples of requantizer software:
    K9Copy (GUI)
    vamps (CLI) - low-level command line tool...not capable of making DVD backups on its own
This isn't meant to be an exhaustive list of solutions for backing up DVDs, but it should get you started in the right direction.  Experiment and choose the method/software that best suits your needs.

ISO Image Backup Instructions

I wanted a solution that preserved the original quality of the video and audio, so I went the route of creating ISO images of my DVDs.  One advantage to this method is that it still allows you to easily transcode to other formats later (for use on smartphones and other embedded devices) since software like Handbrake and K9Copy can read and transcode from ISO images as well as regular DVD discs.  Handbrake would be particularly well suited for transcoding from the ISO images at a later date because it allows you to queue multiple jobs.  Queuing jobs gives Handbrake the ability to transcode multiple DVD ISO's or your entire collection at once (one after the other) without having to transcode each DVD individually.  You might be waiting a long time if you have a lot of DVDs but at least it streamlines the process and minimizes the amount of interaction required on your part.

I chose to use the dvdbackup and genisoimage command line utilities since it was one of the simplest methods, plus it allowed me to automate the process in a bash script.  The first step is to use 'dvdbackup' to extract the video and menu files files from the DVD:

$ dvdbackup -M -v -r b -n dvdname

Replace dvdname with the volume label of the DVD disc (i.e. the name of the Movie).  You can leave off the '-n dvdname' option if you want because it can be automatically read from the DVD disc in most cases.  The '-M' option tells dvdbackup to mirror the entire disc. Refer to the dvdbackup man page for the other options that are used.

Next, use the files that were just extracted from the DVD to create an ISO image of the DVD:

$ genisoimage -dvd-video -udf -V dvdname -o dvdname.iso dvdname/

Again, replace each instance of dvdname in the command above with the volume label that you want stored in the ISO image that will be created.  This volume label should be a max of 32 characters, is normally all uppercase, and usually uses underscores instead of spaces.  The options used with genisoimage are explained below:
  • -dvd-video - generates a DVD video compliant filesystem
  • -udf - include UDF filesystem support
  • -V dvdname - applies the appropriate volume label to the ISO image so that when you play the ISO image in VLC or other software it will show the name of the movie
  • -o dvdname.iso - specify the output file for the image
  • dvdname/ - the directory containing the dvd files that were extracted with dvdbackup
That's it...two commands and you should have your DVD backed up.  I should note that there doesn't seem to be one method out there that works with every single disc, so be willing to use other software like K9Copy if this doesn't work.

Hardware Monitoring With the Gnome Sensors Applet

The Gnome sensors applet allows you to monitor hardware sensors (fan speeds, temperatures, voltages) in the gnome panel as shown below, but it is not installed by default in Ubuntu.

Install it with the following command:

$ sudo apt-get install sensors-applet

Now that it is installed, add it to the gnome panel by:
Right clicking on the Gnome panel (an empty area) > Add to Panel... > then add the Hardware Sensors Monitor applet.

After it is added to the panel you can open up the preferences dialog (right click the sensors on the gnome panel > preferences) and choose which sensors are displayed.  The screenshot below shows the sensors that were detected by default on my system.  For each sensor, you can dive into its properties and optionally set alarms for high and low threshold values if desired.

Thursday, July 22, 2010

Hiding Those Pesky Gnome Panels

I periodically run into the problem where applications in Gnome don't go into fullscreen mode properly. The top and bottom Gnome panels remain displayed on top of everything else as in the screenshot below. This post shows how to work around this problem by modifying some compiz settings.

This seems to be a common problem with MythTV, OpenOffice Impress, and other applications that have fullscreen modes.  The fix is simple.  Install the compizconfig-settings-manager package onto your system.  On Ubuntu, the command to install it is:

$ sudo apt-get install compizconfig-settings-manager

After the installation finishes, you will have a new application, CompizConfig Settings Manager, listed under: Gnome System menu > Preferences.

Open it and start typing 'workarounds' in the Filter search bar.  Select the Workarounds plugin and enable the Legacy Fullscreen Support option as shown in the screenshot below.

Now, the next time you open MythTV or another fullscreen application you won't get the Gnome panels showing on top of everything else.

Saturday, May 22, 2010

Nikon Scan on 64-bit Windows (Vista, 7, 8, 10)


Last Updated 8/23/2015 (adds mention of Windows 8 & 10 support)

There are various instructions around the internet that describe how to get Nikon Scan working on a 64-bit system.  My instructions are slightly different and use only modified installation files from Nikon (nothing from Vuescan is used).  Before I list the instructions, this will only work with and has only been tested with the following devices and operating systems:
  • Devices
    • Nikon Coolscan IV ED
    • Nikon Coolscan V ED
    • Nikon Super Coolscan 5000 ED
  • 64-bit versions of Windows Vista, Windows 7, Windows 8, and Windows 10
Here are the instructions to get this setup working:
  1. The driver included with Nikon Scan is an older 'unsigned' driver. Newer versions of Windows will only allow you to install 'signed' drivers but there is an option to enable installation of 'unsigned' drivers. Before you can install the Nikon scanner driver as detailed in the next steps, you will need to look for instructions specific to your operating system version for how to enable installation of 'unsigned' drivers. After you have done this, proceed to the next step.
  2. Install Nikon Scan 4.0.3 Vista 32-bit software. This was the last version of Nikon Scan that Nikon released before they ended support for the software. Windows will probably want to reboot after this step.
  3. At this point the scanner will not work so you will have to update the driver for the scanner with a modified version of Nikon's Setup Information File (.INF file) that works on 64-bit systems.  Create the file 'NikonUSBScanner.inf' with the contents shown below and save it somewhere like C:\Temp\Nikon (or just download NikonUSBScanner.inf):

    ; NikonUSBScanner.INF -- Windows Still Image Setup File of
    ; Nikon USB Scanners for Windows Vista/7/8/10 64-bit
    ; Manufacturer: Original by Nikon, Modifications for 64-bit by Chris Rawlings

    [Version]
    Signature="$CHICAGO$"
    Class=Image
    ClassGUID={6bdd1fc6-810f-11d0-bec7-08002be2092f}
    Provider=%ProviderStr%
    DriverVer=08/22/2009,1.0

    ;[ControlFlags]
    ;ExcludeFromSelect=*

    [Manufacturer]
    %Mfg%=DeviceModels,ntamd64

    [DeviceModels.ntamd64]
    %DeviceDescLS0040%=USBScanner,USB\VID_04B0&PID_4000
    %DeviceDescLS0050%=USBScanner,USB\VID_04B0&PID_4001
    %DeviceDescLS5000%=USBScanner,USB\VID_04B0&PID_4002

    ;///// USBSCANInstallSection /////
    ;** Windows Vista/7/8/10 section **
    [USBScanner.ntamd64]
    Include=sti.inf
    Needs=STI.USBSection
    SubClass=StillImage
    DeviceType=1
    DeviceSubType=0x4000
    Capabilities=0
    AddReg=NKUSBSCN.AddReg
    CopyFiles=NKUSBSCN.CopyUSDFiles

    [USBScanner.ntamd64.Services]
    Include=sti.inf
    Needs=STI.USBSection.Services

    [NKUSBSCN.AddReg]
    HKR,,HardwareConfig,1,4
    HKR,,DevLoader,,*NTKERN
    HKR,,NTMPDriver,,usbscan.sys
    HKR,DeviceData,ICMProfile,1,0,0
    HKR,,USDClass,,"{07C71AC0-FA90-11d3-B409-00C04F87578E}"
    HKCR,CLSID\{07C71AC0-FA90-11d3-B409-00C04F87578E},,,"Nikon STI USD"
    HKCR,CLSID\{07C71AC0-FA90-11d3-B409-00C04F87578E}\InProcServer32,,,%11%\NKSCNUSD.dll
    HKCR,CLSID\{07C71AC0-FA90-11d3-B409-00C04F87578E}\InProcServer32,ThreadingModel,,"Both"

    [SourceDisksNames]
    1=%DiskName%,,

    [SourceDisksFiles]
    NKSCNUSD.dll=1

    [DestinationDirs]
    NKUSBSCN.CopyUSDFiles=11
    ;NKUSBSCN.CopyUSBFiles=10,system32\drivers

    [NKUSBSCN.CopyUSDFiles]
    NKSCNUSD.dll,,,32

    ;[NKUSBSCN.CopyUSBFiles]
    ;usbscan.sys,,,32

    [Strings]
    ProviderStr="rawc@live.com"
    Mfg="Chris Rawlings"
    DiskName="Nikon Scan 4 CD-ROM"
    DeviceDescLS0040="Nikon COOLSCAN IV ED"
    DeviceDescLS0050="Nikon COOLSCAN V ED"
    DeviceDescLS5000="Nikon SUPER COOLSCAN 5000 ED"

  4. In the same place you saved the custom INF file, you will also need the file 'NKScnUSD.dll'.  This file can be found in C:\Program Files (x86)\Common Files\Nikon\Driver\ScanUSB, so just copy if from there into C:\Temp\Nikon.  This file was installed to your system when you installed Nikon Scan 4.0.3.
  5. Install the modified driver files for your slide scanner:
    • Now that both installation files are in place in C:\Temp\Nikon, turn the scanner on and navigate to the device in the device manager (right click 'Computer' in the start menu or on the desktop --> Manage --> Device Manager). 
    • Right-click on the scanner device and choose 'Update Driver Software'.
    • Next, choose 'Browse my computer for driver software' and browse to C:\Temp\Nikon where you saved the driver installation files. 
    • Give Windows permission to install the driver and you should be all set to start scanning with Nikon Scan on your 64-bit Windows system.