There are numerous examples of hardware which has latent features waiting to be unlocked by software. Most recently, we saw a Casio calculator which has the same features as its bigger sibling hidden within the firmware, only to be exposed by a buffer overflow bug (or the lead from a pencil if you prefer a hardware hack).
More famously, oscilloscopes have been notorious for having crippled features. The Rigol DS1052E was hugely popular on hacker benches because of it’s very approachable price tag. The model shipped with 50 MHz bandwidth but it was discovered that a simple hack turned it into the DS1102E 100 MHz scope. Tektronix has gotten in on this action as well, shipping modules like I2C, CAN, and LIN analyzation on the scope but requiring a hardware key to unlock (these were discovered to have a horribly insecure unlock method). Similar feature barriers are found on Rigol’s new reigning entry-level scope, the DS1054Z, which ships with protocol analyzation modules (among others) that are enabled only for the first 70 hours of scope operation, requiring an additional payment to unlock them. Most scope manufacturers are in on the game, and of course this is not limited to our tools. WiFi routers are another great example of hardware hosting firmware-unlockable features.
So, the question on my mind which I’d like to ask all of the Hackaday community is this: are unlockable features good for us, the people who use these tools? Let’s take a look at some of the background of these practices and then jump into a discussion in the comments.
First off, I think we can all agree on this: it is reasonable to reuse parts of a hardware design in many models. If you want to ship five models but only roll one circuit board it makes everything easier, from sourcing that board to stuffing and testing each unit since you have a universal spec for jigs and other processes. This happens all the time and often a PCB will have components populated for some models and not for others. I’ll come back to this in the coming sections.
Let’s walk through a few of the reasons a company might ship a product under multiple model numbers yet hosting similar features.
Bottom Line and Getting Hardware to Those Who Need It
I’m going to call this the altruistic reason for this practice. Companies look for the biggest margin, and that is going to be high-end equipment where they can differentiate themselves from competitors and where businesses with purchasing power are the customer. The harware is recognized by those in industry as something they want to use. This hardware appears only on professional benches since the new hotness has a price tag that means you need a reason to have this scope before you’ll bite the bullet and buy one. But once you have those probes on your test board you’re glad to have it. For companies and contractors alike, purchasing a high-end scope makes sense. Better equipment that helps an engineer work faster or catch problems more easily pays for itself in billable hours and when it comes to manufacturing.
But look, there are a limited number of these customers. It’s wise to look beyond just the high end for several reasons, and so companies look to mid and low-tier models in the same family of products. So someone has the great idea to remove some options, silk screen a different number onto the front of the case, and market it as an entry level model of the gold standard scope.
The Effect of an Entry Level Model
There are several benefits to a lower-priced, entry-level model. Now, students, hobbyists, and the curious are able to get their hands on the hardware. From the company’s point of view this builds brand loyalty; the product works well and they like it. When these users get a larger budget (like getting hired as a hardware engineer) and want to upgrade they will think of this company first. The company also continues to sell the pro model at a higher price and make great margins while the companies still benefit from having great tools.
From the user point of view this unlocks faster prototyping, development, and troubleshooting. Doing and learning more in less time is a similar personal value as I mentioned before with the professional engineers.
Everyone wins, right?
It’s Like an App Store
If you are feeling slighted by having hardware that needs a software purchase to unlock its utility, I direct your attention to smartphones. You purchase the hardware (let’s sidestep the unrelated issue of carrier-subsidized phones) and it comes with basic functions even though it’s capable of much more. You extend the capability by purchasing apps which do more with the same hardware.
The smartphone comparison still holds when you think of price. Simple features on an oscilloscope (for instance, protocol decoding) cost a lot more than an app on your phone. But when was the last time your oscilloscope software crashed? I hope the answer is never.
These devices are being used to design and test electronics in industry. Failure in a scope could ripple through the consumer market causing all kinds of mayhem and so oscilloscope manufacturers keep their walled garden immaculate. This type of rock-solid dependability costs more than an app that drains your battery due to a dodgy memory leak. And of course the market for smartphones is much larger than that for oscilloscopes which greatly affects pricing.
The Marketing Department Made Us Do It
One thing should be abundantly clear: hardware developers don’t want to follow several parallel designs through to production. But the marketing department will insist on having several options in the line. It’s part of a concept called market segmentation which seeks to tailor products to carefully selected groupings of customers. I touched on the logic behind this earlier: engineers designing professionally need top-of-the-line tools and features and can afford to pay for them, hobbyists don’t have the same needs or the same pocketbook.
So, marketing wants to have a product that is like candy for any given segment, but as I said, the hardware development team won’t want to design wholly different hardware for each segment. The easiest thing to do is to design with all the bells and whistles and throw some of them overboard for the mid- and low-tier offerings. This is fairly painless to do with software. The Rigol DS1052E had all of the hardware to be a 100MHz scope but the firmware shipped with it was sampling the ADC at half speed for an artificial limitation of 50MHz. They could have redesigned a slower analog frontend, but that comes at a huge cost when changing the sample rate in firmware costs almost nothing (just a bit of software engineering time and testing).
How We Feel About the Upsell
Where Rigol learned their lesson was with the DS1054Z, which ships with everything turned on for about 70 hours (55 for some of the functions) and then cripples those features when the timer runs out. This opens the door to upsell your entry level customers. The DS1032E never had a “purchase” option to enable the latent features… only a “hacking” option for that.
What’s interesting is the way I feel about this countdown timer. I’ve never actually used any of those functions in the last two years. But I feel like it’s a bit shady that they’re going to be taken away from me at some point. I equate it to buying a car you can drive to the mall for the first 70 hours of use. After that you can drive it anywhere you want as long as it’s not the mall. It’s still capable of going there but the software won’t let you do it without an upsell. If the scope had come with those already locked, my attitude would be that this is what I get for buying the entry-level model. Instead I feel like something’s being taken away. Human nature I guess.
I’m Fence Sitting
And now I’d like to hear your opinion. I can’t figure out exactly how I feel about this. In my use case I don’t have a big need for the features that have been locked out. And I certainly wouldn’t have afforded a more expensive model; this one was a stretch for me (and it is my first scope).
Back when the LinkSys WRT54G was new and DD-WRT came out, I flashed the firmware which unlocked some features and I did actually use them. In that case I don’t feel like I slighted the company — after all I paid for the hardware in the first place and used an Open Source firmware to get more out of it.
What have your experiences been with hardware shipped with crippled or unlockable features? Is it good for the user by getting more hardware in the hands of the masses, or are we missing out with hardware that’s far more capable than it’s allowed to be?