https://money.cnn.com/2016/06/20/autos/jeep-recall-anton-yel...
I absolutely hate stateless switches on automotive stuff. Why can't I tell that my turn signal is on by 'feel'? Why do I have to rely on a (too quiet) clicking, or a (too hidden) indicator light?
I have an E70 X5 with the "new style" transmission selector, as well as a Tesla 3 that replicates it on the right side of the column. Thankfully most cars seem to have stuck with the "forward = reverse", "Back=drive" convention; confusing as it sounds, at least it replicates a move from neutral on an automatic with a traditional PRNDL lever.
Both cars also have stateless signals. The E90 and newer BMWs seem to have indicator clicks that are almost inaudible, and in almost every car I drive, the indicator lights are hidden behind the steering wheel, so you never know if the indicator has cancelled or not. On my "bad old world" BMW, at least you can feel the lever click down when it cancels.
The Tesla also has a stateless signal switch, but it doesn't give me the same issues. I think the audible "click" is a lot more distinctive or something. Alas, the green flashy light is way over in the middle of the car instead of conveniently hidden behind the rim of the steering wheel.
I once had a ford rental car with turn signals that made me actively avoid using them. They felt OK, but the clicking of the relay was fake, a recorded sound. All seemed good until you cancelled the indicator. The computer sometimes kept playing the fake clicking sound. It kept clicking for a full click cycle every time you cancelled the indicator mid-click. It was only a fraction of a second, a full second at most, but I always thought that I had failed to cancel the indicator. It was both the smallest and most annoying problem I've ever had with a car.
2nd most annoying: Driving a US-made care in a country using the metric system. The cruise control is incapable of being adjusted a single kph, instead the minimum change is some number of mph. So you are stuck doing either 99 or 101, but never exactly 100 kph. The source of the problem is confirmed where the cruise control can be set to 80 kph, which is almost exactly 50mph. I venture that no BMW has ever had this problem.
Unfortunately, ZN8/ZD8 Toyota GR86 / Subaru BRZ (the new ones!) have regressed to the dreaded mechanically momentary (non-latching) turning signal stalk design.
to me the sound is loud enough to hear it but not so loud it is annoying
That's very odd, given how much emphasis they have (or used to?) about road-feel and other forms of feedback while driving, and BMW's slogan is "the ultimate driving machine".
I've found the following tools helpful: - newtis.info (has literally all the wiring diagrams as well as a bunch of info on how systems are built and work together, though unfortunately the protocols aren't documented) - Esys (be able to flash new firmware to a control unit or modify settings within a control unit, plus it often contains helpful comments in a mix of English and German that explain what the various acronyms are) - German and American BMW forums (bimmerpost, 1erforum.de); aided of course by a lot of German <> English Google translate
https://aos.bmwgroup.com/web/oss/start - you’ll need something like an “icom next” to connect the car but it’ll do e-sys with the ability to install the latest firmwares.
Some stuff (quite limited though) is available through the car data api - i think most f-series and all g-series i think have telematics. I have a 2018 f15 and that works.
https://bmw-cardata.bmwgroup.com/thirdparty/public/repair-an...
With the F and G series ISTA is the "gold standard"
One key difference - you can access all the bolts on the Mazda. Replacing rear shocks was a doddle, i’d done the same job on my old e38 and that was multiple days thanks to combining rust with awkward UX. The mazda had the same rust but was easy and safe enough to access with some heat and no need for universal joints which are never great when you’re using an impact driver.
This type of design was not straightforward for me as well, but in the end this is because a car is topologically not an integrated machine with centralized control like a PC, but more like a network rack kitted with various systems, with user interfaces at the front and networking at the back.
We tend to look at a driver's seat of a car and understand it as an equivalent to VT100, and that is not what it is; the controls in a car are for each discrete systems that shares a chassis. Therefore the control goes to respective systems and communications goes through the network.
Just with the information in these articles we now know how to spoof the shifter mechanism, I’m sure similar processes could be used to determine steering and throttle controls. All these Hollywood plot lines and conspiracy theories suddenly don’t seem so far fetched.
These Gateway modules only allow specific diagnostics-related messages through to the various backing buses.
Now, generally the security on the Gateway module itself isn't great, and diagnostic protocols also aren't very well secured, so there's certainly havoc to wreak. But it's not as simple as "plug in a dongle and send commands" - to do what OP is doing, you need to tap into a wiring harness that's usually buried a bit higher up in the dashboard, at least :)
Usually either the Gateway or the control module itself will disallow sensitive UDS commands like the Hard Reset from the article, as well as adaptation / basic settings and output testing commands which are not safe given the current parameters, as well - for example, I doubt you could send UDS Hard Reset to the gear selector module while the car is moving.
The sole purpose is security. Trust me, the engineers don't want to introduce any more complexity than necessary, and that's why it has been so open for so long. But, in light of hackers exposing these security vulnerabilities, there is pressure to close them. I'm sure there will be conspiracy theories about making it harder to repair cars so you have to go to the dealer. But, that's also not true -- because of Massachusetts' right to repair laws, OEM tools are available to anyone (or any shop) that wants to pay for them (in and out of MA).
The transmission controller and differential speed sensor (or even differential controller on some cars) will be post gateway on the CAN bus.
I've done this on GM vehicles to spoof different vehicle behaviors while evaluating traction control systems.
First off, you learned how to send messages to a gear indicator (after it's been ripped out of the car)
That's not the same as being able to spoof messages from the gear indicator to other components in a real vehicle, and then getting them to affect the transmission.
Realistically even if you could somehow send the transmission an instruction to shift in a way that would cause an issue (like telling the transmission to go in Park at highway speeds), there are multiple layers that would stop you in your tracks. At the lowest level the ZF8 most of these GWS shifters came with would never follow that instruction to start with.
-
I hate fear mongering around vehicle security because it leads to things like Mazda locking down their infotainment Linux box because news reports saying "Mazdas can be easily hacked", when the component in question had no tie in at all to anything safety critical.
The reality is physical access to the car is game over. I feel like your comment is intentionally worded to retort "oh well you just need quick access to the inside, vs getting under to cut the brake lines", but if you stick some random custom OBD II device with remote C&C you're making a much larger target for attention.
People are stealing entire catalytic converters off cars with noisy angle grinders, getting more intimate access to a vehicle is really not that hard.
Edit: thanks to responders, I misremembered how it worked.
As the article states, modern cars employ CAN-bus gateways that act as data brokers. The OBD port usually only gets access to the buses that are relevant for emissions certifications and ordinary shop work and that's it.
The movement to separate and gated CAN buses started with people manipulating their engine controllers, initial exploits targeting the radio and then the avalanche of thieves using OBD to disable alarms and reprogram keys.
In fairness, I throughly hate the car (an X1). Terrible lag, awful throttle response, terrible steering, unpredictable brakes, etc.
But the two candidates for worst feature of the car are
1. The gear selector 2. The indicator lights
Every time I have to engage one of the two I let out a little curse.
I driven stick shifts, autos, rear wheel drive cars, trucks, front wheel drive cars, uHaul trucks, and manual motorcycles.
Ive off-roaded in CA, driven through blizzards, Mediterranean traffic.
This is by far my most hated driving experience.
Great throttle response, minimal turbo lag, precise steering, and highly controllable confidence inspiring brakes.
I can see why someone might not like the shifter and indicator stalk, but they simply haven’t been an issue for me. In fact there’s aspects of them which I prefer.
For handling / lateral dynamics: The X1 is derived from essentially a MINI platform which is FWD-based (transverse engine), compared to the rest of the BMW lineup which is RWD-based (longitudinal engine).
For power / longitudinal dynamics: If GP happened to be driving a 3-cylinder, then of course the turbo lag would be high. OTOH, the 4-cylinder B48 is a venerable engine with negligible lag (again used all across the BMW lineup).
I know that for example turbodiesels (even newish ones) start off pretty snappy but then turbo lag and other lags creep in.
I'd be leery of using this device, with all that complexity, as an input for video games. The latency makes me ugh. Certainly don't want that much "systems" stuff between me and the transmission of a car I'm piloting.
If it's a manual transmission or an ancient automatic, sure, but manual transmission trucks basically haven't existed for a decade or so and every automatic since the mid 90s has an electronic gear selector of some variety.
Somehow the world keeps working just fine. The biggest problem that's come up with them has been when manufacturers decide to screw with the physical interface and make it more likely to inadvertently miss Park, like the Chrysler design that killed Anton Yelchin.
> I'd be leery of using this device, with all that complexity, as an input for video games.
It's less complicated than a force feedback joystick or even a lot of modern gamepads.
> The latency makes me ugh.
The latency is coming from the transmission, not the shifter.
> Certainly don't want that much "systems" stuff between me and the transmission of a car I'm piloting.
Again, it has been this way for literally decades. My 1993 Crown Vic with an AODE transmission had a shift lever based on the computer interpreting ranges of resistance from a potentiometer. The lever was literally a joystick with notches. And as the name suggests, that was a classic AOD transmission with the mechanical valvebody replaced with solenoids and an IBM PC grade processor.
Your 1993 Crown Vic may as well be a 1980s toaster over compared to the 2010+ cars being discussed. The only digital electronics are in the ECU and for the display on the radio. There is a huge difference between a 90s Ford style lever position sensor and the BMW stuff. If the computer doesn't do the right gear for what you want you just move it until it does. The BMW will spit error messages at you.
That might be true of pickup trucks, but commercial trucks are virtually all manual.
This is '80s technology, mind you, with a fairly simple computer grafted on to bring it up to the white heat of the mid-'90s.
Maybe if you're in the earning high-5 figures a year bracket in SF, but for regular people, a car is likely the most or second most expensive thing they own (second to a home). New cars is something for dual-earners and rich folk, for us regular people - and I am a high income earner - new cars, even on finance, is just not an option.
(I'm currently driving a used 2009 Ford Focus, <200K Km on the dial)
> I appreciate where you’re coming from but experiencing the joy of dual clutch automatics and their shifts in BMWs and Audis that I had the joy to diving might change your mind.
Yeah, no thanks. A good manual transmission is a core part of the driving experience.
BMW F Series Gear Selector, Part One: Failures - https://news.ycombinator.com/item?id=31883951 - June 2022 (87 comments)
Many third party companies have made accessories to read information or control devices using it. Cars also have a standard diagnostic port called the OBD2 which you can purchase $10 readers that use bluetooth with your phone.
Cars may have much more electronics but with all the sensors it's very easy to know what part of the system is broken. For example on my mom's 2011 Honda Civic (about 100k miles) her check engine light came on. I read the codes and it was the transmission pressure switch. I purchased one for about $30, replaced it, and everything is running fine.
As to all these new electronic systems and their value:
A 1964 Pontiac Tempest GTI has a 6.4 liter v8 engine that makes 348hp[1]. It goes from 0 to 60 in 4.6 seconds and does the 1/4 mile in 13.1 seconds. It gets 11mpg~
A 2022 Volkswagen Golf R has a 2.0 liter i4 engine that makes 315hp. It goes from 0 to 60 in 3.9 seconds and does the 1/4 mile in 12.5 seconds. It gets 23mpg[2] (26city 30hwy). It also has all modern emissions requirements.
[1]HP numbers were overrated pre 1990s because manufactures would remove accessories during testing.
[2]They changed how cars were rated in the 2000s so the 23mpg would be higher if rated back in 1964
Now, with the silicon shortages, and the ever increasing complexity of vehicle networks, I think things are going to hit a crossover point. Instead of a vehicle full of "microservices", we will probably see more vehicles with some centralized compute unit controlling dozens of sensors and "edge" processors.
It's impossible to fully centralize an automotive computer, but there is a lot of work that can be done to move away from "microservices" to something that is easier to define, develop, and validate
The Tesla (and several other EV manufacturers) approach to car software is highly centralized. Unlike traditional car manufacturers, there are no external component providers that get to run their own proprietary firmware on their own dedicated chips. Upgrading and testing/integrating all these proprietary firmware blobs is a nightmare and is mostly not a thing with legacy car manufacturers. Tesla and other modern EV manufacturers on the other hand provide over the air updates for essentially all software in the vehicle. Reason: all of that is developed in house and shares a lot of the hardware infrastructure.
One big reason car manufacturers struggle so much with chip shortages is that a lot of the shortages are for decades old chip designs still used by various suppliers for things like brakes, the automatic windows, the fuel injection system, etc. Chip manufacturers are reluctant to invest in new production capacity for obsolete chip designs.
The reason Tesla managed to break some delivery records in the middle of these shortages is that they use more modern chip designs and were able to actually switch to a different chip provider. They don't use a lot of different chips for most of these things. More centralized and integrated is the modern design for cars.
Legacy ICE vehicle design is essentially stuck at where they were ten years ago. Most manufacturers are in the process of ramping down R&D around this topic. They'll milk their production lines for a while but attention has already shifted to EVs for most of them. New models (if any) are essentially the same components they've been shipping for a while with minor changes.
Then you don't even need to understand all the messages - just replay what the car sends and figure out which byte in the response is the current gear.
You probably wouldn't even need to figure out the checksums!
No need to understand the protocol or anything - just record a few minutes of data, find when a message repeats (indicating whatever counter mechanism is in use has rolled over), and replay that loop repeatedly.
The only time this technique doesn't work is when a challenge-response algorithm is in use, but car stuff doesn't tend to do that except for some lock/security/firmware update type functionality.