Hacker News new | ask | show | jobs
by patentatt 1152 days ago
I guess that's what we get when a rotary encoder is much much less expensive than a 4-6 gang potentiometer. And I also feel your pain with the car "booting up" phenomenon. I don't even have a particularly tech-heavy vehicle and upon starting the car the entire infotainment system feels like booting up a packard bell in 1996.
6 comments

> I guess that's what we get when a rotary encoder is much much less expensive than a 4-6 gang potentiometer.

Also a rotary encoder doesn't age in the same way as a potentiometer. A potentiometer can wear out the area being used most heavily while simultaneously developing oxidation on the areas not being used. Eventually this leads to crackling, dead areas on the dial, and other misbehavior.

A rotary encoder on the other hand doesn't wear out in a practical sense. The only part that even could wear is the bearing or bushing supporting the rotating assembly, and if that's specced appropriately for the application it's effectively a lifetime component. It's possible to build a crappy rotary encoder that falls apart earlier than desired, and of course they can still be damaged by abuse, but a well built one should outlast the useful life of the device it's installed in by multiple orders of magnitude.

Relative rotary encoders are much cheaper than absolute rotary encoders, and I expect that's the problem here. If the encoders were absolute, one could make them work just like a potentiometer (because potentiometers are absolute). Relative encoders cannot remember where they were last set because they only sense dp/dt, rather than position itself. So it's up to the software to remember the last position, and everybody knows car companies won't pay software engineers tech company salaries, so by definition car companies get B-level and C-level programmers, and the driver gets weird misbehaving audio in the car.
While you are correct, if the knob was only used for a single task, most car stereos I've used in the digital era give multiple roles to any knob(s) they may have. In the common configuration with one knob on each side the default modes are usually volume nearest the driver and either manual tuning or rotation between presets nearest the passenger, but if you go in to the menus one will usually scroll the menu while the other one changes settings. You don't want to have your volume or station change just because you needed to tweak a setting.
Rotary encoders do fail, they produce the effect of control being unresponsive or “reversed”
Yes, but they don't really "wear out" to get that way, just some debris ends up blocking either the sensor itself or some amount of the openings in the wheel. It's a random event rather than an inherent result of age or wear. It's also often possible to fix simply by cleaning the debris out. Unless it's been physically damaged it's unlikely to need replacement.
Old school wire-wound potentiometers are nearly indestructible.
You can't really use a user facing pot for volume control when you've also got volume control buttons on the steering wheel and keywords for voice control.
Well you can and some kinds of high-end audio equipment are actually built to do this by putting servo motors on the pots so that settings can be stored and retrieved automatically. But that's probably too expensive for a car company to consider.
I can't recall seeing a single car that used a potentiometer for the volume control, and I've had cars from the early 90's all the way to today. They've all used encoders.

Do you have some examples of makes/models that used potentiometers for volume control?

> I can't recall seeing a single car that used a potentiometer for the volume control, and I've had cars from the early 90's all the way to today. They've all used encoders.

That's because the switch happened earlier than that. Go back earlier than the "DIN size" head units of the '80s and '90s to the "shaft" style radios with two large knobs flanking a center section with an analog frequency display and maybe some preset buttons if you're lucky.

The problem is not a rotary encoder, but how the software handles the signals. That's what interrupts are for, the command should make it into the software queue basically instantly, ensuring commands aren't lost.
Shut up with your Silicon Valley nerd talk!

Good old reliable polling. That's where it's at. 2 second response for a volume knob should be quick enough for anyone!

Oh great, why don't you just implement automotive user interfaces in PHP? ;)

"I'm not a real programmer. I throw together things until it works then I move on. The real programmers will say "Yeah it works but you're leaking memory everywhere. Perhaps we should fix that." I’ll just restart Apache every 10 requests." -Rasmus Lerdorf

"We have things like protected properties. We have abstract methods. We have all this stuff that your computer science teacher told you you should be using. I don't care about this crap at all." -Rasmus Lerdorf

Is the problem that the same systems are used for car media and potentially other systems and that encoders "can" be more flexible if they need to be?
Packard bell comment made me laugh :)