Kia just did this with their EV9 update - it broke CarPlay with a blank screen a few minutes into driving, which then reverted itself a minute later. Another OTA mostly resolved it. Neither of these updates explained what happened or what the fix was.
Let me be a devil's advocate here: you have essentially two options.
1. You write release notes thet contain technical details. Less than 1% of your customers understand them. More than 90% probably won't even care, let alone understand the document. And then there are the folks who get confused or scared and reach out to customer support with weird questions. This generates extra workload.
2. You explain nothing. The release simply is. The technically minded people are mildly annoyed. A few customers affected by open issues wonder if it's fixed now. The rest of them doesn't even care that there is an uodate and carries on with their lives. Customer service continues to complain about the usual bunch of random and weird customer issues.
It's quite natural to start doing (2) in a consumer facing business, isn't it?
Once upon a time, physically shipping faulty software had real costs borne by the organization - production, redistribution and transportation of a physical disc.
Today there’s no disc, no recall - that cost to shipping broken software is gone. We the users pay the price.
The article is a lovely cathartic rant against agile software development methodologies applied in the wrong place in the wrong way, whether or not the software(s) in question used such methods. On of the worst assumptions, I believe, is that the end-user is willing and able to function as testing/QA without detriment to the product and company.
When I bought my car, it had no Car Play or Android Auto. Upon some investigation I found out that both of them were installed on all the current models. It’s just disabled on the cars sold without the option. Some open source software for the car entertainment system flashed on the car was able to turn on the flags to enable various features including Car Play and Android Auto. So a happy story.
Edit: Didn't expect so much interest. Here's more detail. This manufacturer is known for nickel-and-dimed on every option so not much gain in name and shame. Hacking the car's entertainment system is fairly trivial. It's Linux based. Use a UART to USB adapter to connect a computer to the unit. Open a terminal application (like PuTTY) to establish a serial connection. Do a 'dd' to dump the file system to the USB drive inserted to the car's port. To alter the firmware's behavior, unpack the dump into the file system structure, then add an init script to the Linux init (or systemd) to run your script on boot up. Repackage the firmware. Copy it to a USB drive. Plug it in to the car and do a firmware update. On the modified firmware I used, people have added a whole UI into the firmware, which can be invoked with a button combo pressed on the console.
There are nice people who have reverse engineered the firmware, found out where all the feature flags, done all the modification, fixed bugs (yes, the bugs from the manufacturer were fixed), and packaged up the firmware ready to go. You just need to do a firmware update with it.
Even hardware features (heated steering wheel, rain sensing wipers, etc...) are now behind software switches which the car maker can control based upon subscription or trim-level purchase.
All the hardware pieces are installed at build time
As a licensed driver who resides in the Sonoran Desert, can you even imagine the horrific visions that just flashed before my eyes?
We often joke around here that wearing oven mitts is a good way to get our cars started in the late afternoons. It's not really a joke.
I personally have several pairs of gloves, and I never fail to don those gloves when I go out, whether I am walking, riding an e-Scooter, or driving, because even as a pedestrian we must touch so many metal objects that bask all day in the direct sunlight.
Heated steering wheels. What a world we live in today!
As a licensed driver also living in the Sonoran Desert, I absolutely love my heated steering wheel. I live just South of Anthem, and we get a couple of hard freezes per year, and it gets cold enough that people wear gloves certain parts of the year.
I put heated grips on my motorcycle. I thought it seemed dumb, your hands are out in the wind, and the back of your hands will still get cold. Nah, it warms up your whole body and it's a total game changer.
When it's minus -20°C outside, you'll be very happy for that heated steering wheel! For someone living in the desert, I wish there were cooled steering wheels, on the same level as heated/cooled seats, but maybe that's asking a but much.
It's probably a complexity and cost thing: heating the wheel just requires heating wires in the wheel connected to a switch. Cooling requires a some cooling medium getting pumped into the wheel and back out into a heat exchanger or vented outside. You need pipes of some sort inside the wheel and wheel hub.
Living in Australia where it gets hot and also kinda cold, having seats that are both heated and vented is awesome. Cold? Seat gives you a warm hug. Hot? Seat blows cool air to cool itself down after being parked, and to stop you getting sweaty.
>It’s just disabled on the cars sold without the option.
So exactly like software licensing? Most apps nowadays don't even require a purchase to download. The download is free but you need to pay $4.99/month subscription to use, or $99.99 for a "lifetime subscription". The code's are all there. The author just doesn't want you to use it.
That’s not exactly the same. You don’t get to have a car for free with basic driving functionality and then pay for additional features once you realize the car is useful and the people do made it deserve to be paid for their work, which they were willing to meet you have for free in its basic form.
This is something far more heinous, you bought a thing for a lot of money and just in order to extort even more money from you, they simply disable/lock away a feature that you technically already possess.
A better analogy in software might be that you bought a video game for $60,000 and the only way to beat a lower level boss without spending 2,000 hours trying to, is to pay the developers another $5,000 for a super weapon.
this reminds me of the old IBM tabulation machines that were sold in 2 different models at different prices, the cheaper one just had a metal tab inserted to limit the processing speed - you could remove the tab to unlock full speed
Volkswagen Group for example. Most of their brands are like this, Volkswagen, Seat, Skoda. Carplay/Android Auto is in the head unit but you have to
pay 200-300€ to unlock unless it’s part of the trim
level you choose.
Auto manufacturers need to realize that one bad software experience means lost sales of entire cars. Fail to provide a good experience at the cost of your brand for years to come.
We just sold our 2025 Subaru Outback specifically because the software experience was bad.
To exit a climate control modal on the screen you have to find and tap a tiny red "X" box in the furthest corner of the screen from the steering wheel.
God... Subaru's whole interface is a horrific looking clusterfuck. That big-ass screen and it's just a huge waste.
I've driven the 2025 and the 2024. The 2024 not only had all the crappy UI, but the driver assistance features were also alerting you constantly, and they were terrible. I was amazed how much they toned it back and improved it with the 2025.
Still wouldn't buy either of them personally. The constant nags and alerts are so fucking annoying and distracting. The seat belt chimes that don't shut off and get louder and louder make me want to rage so hard. I am religious about wearing my seatbelt, so there's absolutely no reason for it to piss me off so bad.
Cathartic to read this! Just had a very similar experience with a Subaru from the same generation as yours.
While that particular issue isn't solvable, I am open to any advice on coding tools that might allow one to unlock other settings or make changes like "ensure auto-stop is fully disabled across restarts and drivers".
I despise our Outback's climate settings. It seems every time I start the car it picks a random temperature to set each side to. It'll be 30 deg outside and you look down wondering why its getting hotter and the car is set to 30 deg inside.
Auto manufacturers just don't know how to do software. They don't understand it. They treat it like just another line item on the BOM: Like a bolt or a gasket. Source it from the cheapest provider, give them checkbox requirements, and then spoon it into the car on the assembly line somewhere. They don't think of it as an ecosystem to build off of, or as something to make beautiful to compete with other car makers. It's just another costly assembly that they bolt onto the car and forget about.
It's Android Auto and Apple Carplay. Not sure how that's an "isolated HW function". That would be an issue if they put the turn signals or AC controls on the screen only.
Pretty much this. The less software on the car, the fewer problems.
It's practically impossible to test every permutation of code against every system. Maybe AI can help, but practically it'll just mean the software gets more complicated, with more features. And to top it all off, more and more features get regulated, so they have to be there. The rear-view camera requirement in particular, since you need a screen to see the output. And if you have a screen... well it's an already paid cost, so, might as well display other things too.
It all comes down to cost. At scale, testing hardware is appreciably more expensive than testing software. The former requires specialized machinery that costs the soul of your firstborn, and the logistics overhead for each do-over means long iteration times. The latter can be done with a CI pipeline for pennies worth of compute in a fraction of a working day.
It’s an indictment of business attitudes towards customers. It’s not the software’s fault, the software is doing what it was supposed to. The fault lies with the organisation that decided that’s what it should do.
wouldn't that be impossible in this case? since android auto needs to draw to the screen, control infotainment, etc. even a dedicated USB + rocker switch for android auto would still need a software path to do those things
> Everything you create should be an artistic endeavour aiming for perfection.
Amen. If you go to a bakery, you expect them to care. If you hire a photographer, you expect them to care. Software isn’t (usually) a factory line; CRUD may be similar concepts throughout, but everyone is making it themselves.
The most expensive appliances (particularly stoves) are the ones with no LCD screens. "Smart" TVs are often cheaper then dumb ones. People have learned that software does not always make things better. Anything that has code in it I assume will last for about three years. In practice that's a little less then the average but a safe assumption.
I've been lately into mobile apps and i am finding that there is no system which combines these 3
1. AOT
2. JIT (for hot paths)
3. Interpreter for non JIT paths or where you explicitly do not want jit.
Imagine, a system which compiles your app to AOT but when you push OTA update, part of the app are selectively replaced to JIT or Interpreted mode.
it's theoretically possible but nobody seems to be doing it. I found react native / expo eas update but i don't think it's like this, it has a Hermes VM which runs bytecode but it has no JIT so you'll write native code for hot path then you'll need to upload a full update to Android. So, only toy level code performance can be can actually be written in JS?
Much better, patch the parts where AOT calls into JIT or interpreter.
Currently i am using react native and flutter. Flutter's UI framework code is in Dart if you load this whole code into JIT, it will consume a lot of resources on mobile device as the framework is big and does lot of work. If all framework code was AOT and your custom patchable code also comes with AOT but upon OTA replaced by JIT or Interpreted code, crazy performance!
But what if we could run the most of the code in AOT and only run changed code in JIT or interpreted mode? arguably it would perform as good as it does not being complete AOT while also providing react native like fast updates.
AOT will be in base app and it will include JIT or Interpreted OTA updates.
For Apple, JIT can simply be disabled and OTA update can run patched part in interpreter.
But JIT works on Android (well), so this Hybrid system is capable of being much faster than React Native where your JS code only runs in Hermes VM which isn't JIT.
In this system, all your crazy math and algorithms (on hot path) stay easily updatable as this small part can be run on JIT with snapshot saved for next load if it has not changed!
JIT on average is 100x faster than dumb interpreter for language like Dart.
Does it already exist? otherwise i am seriously thinking about building something like this.
Assuming your car has all the functions you care about, and the OTA updates aren't bringing you any bugfixes or feature updates you care about, is there any good reason to update? Or even have it online to begin with? I'm not expecting someone to hack my car; on the contrary, I'd rather have it be impossible for the automaker to reach my car in any way without it being obvious to me (i.e. me flipping a switch to get it online for whatever reason).
If we had a software building code, it could mandate the testing procedures for consumer devices, like a car's headunit firmware. This building code could be backed by an industry body that could revoke its certification from manufacturers if they don't comply with the code. Super-advanced-testing-procedure #1: plug a phone into a test car and check it works before release.
(This software building code is more necessary for software used in critical infrastructure. But it should also be applied to consumer devices as basic protection for consumers against manufacturers breaking functionality the consumer paid for)
Plug one of every combination of vendor, model, OS, and config into the car and check if everything works. That’s what would be required to actually ensure functionality.
His good points here are undermined by the profane, emotional high-cortisol crashout. There’s a place for well-written, witty diatribes and polemics, but throwing F-bombs and F-yous into complaints is not that.
Lewis Black once said that swearing has a point--it is how we express a sufficient level of rage and anger against something extremely dysfunctional. What should we say, he asked: Oh, pussyfeathers?
The practical solution here would be closing the feedback loop with customers. The business does want happy customers, it's important they return to purchase in 5 years. The problem with car companies is that they don't get immediate feedback (telemetry, tickets, etc) when they do push an issue. And they obviously don't have gradual roll outs the way tesla does.
Rather than hamstring all software by requiring DOT testing before firmware updates are published, follow Tesla's model which has been very reliable within the industry
Rather than hamstring all software by requiring DOT testing before firmware updates are published...
I don't know how the rules work in the UK or Ireland where the author is, but the US has no such mandatory testing. Also, all manufacturers have telemetry these days and the ones I'm familiar with all do gradual rollouts (to varying levels of competence). You basically can't do immediate rollout given the scales involved.
Please don't take this as suggesting any of them are good at software, mind you.
You're right the facilities may be there for telemetry & feedback, but none of the Tesla competitors are structured to manage that telemetry and feedback. Often the brands are repackaging software from vendors (e.g. Bosch) that are terrible at fixing things.
Let's face it, this really is about Tesla, vs the rest of the major players (ford, kia, VW etc)
Does MINI make their own software? I thought it was the same as BMWs with another skin. My BMW gets quarterly updates. Only once in the past year I've had it did I notice anything new (new voice assistant), otherwise it just resets my driver screen and sets my interior lighting on full blast every time it updates.
If Android Auto stopped working I'd also be livid because I don't use the built in crap.
Users are complicit. Why did this user install the update? Were they suffering from an issue it supposedly solves? My six-year-old Honda has never had a software update, and in any case "OTA" updates can only be initiated by the user.
They described their car as having "auto-installed" the update.
An update which advertised, amongst other features, that it "rectifies errors and prevents security gaps" and stated "This update is recommended for everyone."
Borderline insane to refer to the user as "complicit" in that case.
Of course, we largely only need to worry about the security vulnerabilities because manufacturers increasingly hook our hardware up to the internet so they can exfiltrate data about us.
Security vulnerabilities get too much credit. It's "think of the children" of the software world. Most updates don't fix any, most vulnerabilities won't get used in the real world against you either, and in many cases the security is for the corporation against the customer instead.
While the users are not at fault, this culture has certainly turned me way more careful and deliberate about applying updates - if it's not broke, I usually don't; big corporations are more suspicious of breaking things and open source are usually good about them; and if there's no changelog or it's very generic, I'll stay away as well.
Not even 13 days ago another article on here was glazing the infotainment system. I even have the article. https://news.ycombinator.com/item?id=48769397 People were attacking the critique I levied towards shallow praise flippantly gravitating to the word consistency, but now I feel vindicated.
Someone in auto industry decided that plugging device, and dependency on core functionality of the car to 3rd party device, that might be lost, have battery died, used for something else, etc is a good way to save money and not do proper software. It's even more bizare now, mid 2026, when software is solved with AI.
It's good that there are some companies, that ban android/apple car since that's an ugly experience for the user.
> Someone in auto industry decided that plugging device, and dependency on core functionality of the car to 3rd party device, that might be lost, have battery died, used for something else, etc is a good way to save money and not do proper software.
On the contrary, having cars stop trying to provide a bespoke more-proprietary outdated piece of software you have less control over, probably have surreptitious telemetry reporting back from, and might have to pay a subscription fee for, and instead just delegate to the smartphone you already have, is a huge and surprising win.
> It's good that there are some companies, that ban android/apple car since that's an ugly experience for the user.
It's a terrible user-hostile loss when cars do that, typically because they want to maintain more control or try to extract more revenue from the user.
If you don't want to use it, don't use it; there's nothing forcing you to do so.
you settle with one failure story for another failure story.
there are companies with amazing software experience, Rivian, Tesla, Nio, Lucid, even gm is start moving into that direction, and WV is buying software from rivian.
> there are companies with amazing software experience
I don't want an amazing software experience. I want an unsurprising experience, ideally the one I already have.
The only thing better than Android Auto would be to just provide a standardized port (and perhaps a wireless standard) for a combination of video output, audio output, touchscreen input, and charging, with optional standardized sensor inputs. Then you wouldn't need two different standards (Android Auto and Apple Carplay), just one, which would also work with any new device that came along to break that duopoly.
you just stuck in this paradigm, this apple/auto surprised me so many times :
- when you need to re-pair Bluetooth
- when you forget the cable to charge and you need to drive
- when you want to share your car to someone and they need to spend 5 minutes to accept every single ToS possible to simply put a GPS
- several people with phones paired before, now you dealing with complete random
you name it.
- you listen music and you need to go out to buy something while others in the car
None of these problems exist if you have a decent, dedicated computer in the car that just works, it knows profiles, it does need you to be always on wire, or on the line.
> standardized port (and perhaps a wireless standard) for a combination of video output, audio output, touchscreen input, and charging, with optional standardized sensor inputs
Emphatically not. I want the head unit to act as a dumb terminal for the phone. My first instinct would be a USB-C docking station supporting DisplayPort video, various interesting USB devices, and a descriptor that makes it clear it's a car's head unit so the device can intelligently offer a car-specific experience.
> there are companies with amazing software experience, Rivian, Tesla, Nio, Lucid
I own a Tesla, and a Ford. Amazing is not how I would describe the Tesla software experience. It lacks features like iMessage for group and for non-phone recipients that I am able to use in my Ford. Even though many people would say the Ford software is otherwise inferior. And if history is anything to go by, there are features in CarPlay today that Tesla will never add to their infotainment system.
> there are companies with amazing software experience, Rivian, Tesla, Nio, Lucid
Are you fucking serious? Tesla's head unit software is barely passable. It's shit.
Nearly half of the screen is taken by useless toy car depictions, and navigation can't even render the full street names because the width of the input field is fixed.
> On the contrary, having cars stop trying to provide a bespoke more-proprietary outdated piece of software you have less control over, probably have surreptitious telemetry reporting back from, and might have to pay a subscription fee for, and instead just delegate to the smartphone you already have, is a huge and surprising win.
I'd agree if it worked.
Android Auto sucks. And I don't like that my auto manufacturer can wash their hands off it by pointing at Google.
> If you don't want to use it, don't use it; there's nothing forcing you to do so.
As long as the car manufacturer gives me basic functionality (radio, stereo, Bluetooth, etc). Nominally they do, but it sucks in a different way from Android Auto. So I have to ping pong between these two.
My prior car's aftermarket Bluetooth receiver was fantastic. The fact that I can't install something like that on modern cars is a huge regression.
why on earth you need an aftermarket receiver of Bluetooth? The cost of the module is few dollars. My cheap ac has bluethooth, just to connect it wifi, i used it once in it's lifetime.
The entire idea that everytime you sit in the car you need to pair your devices, what if you have several devices in the car etc ? it's such a horrible, broken, neurotic idea.
No, it doesn't. It's a very simple streaming protocol.
It's literally a gRPC-encapsulated stream of h264 frames over a USB connection. With touch events and some car-related telemetry streamed back. You can implement it in a weekend: https://github.com/mrmees/open-android-auto
You can create whatever you want, including just streaming videos onto the head unit or making it play Doom while driving (with steering wheel for input).
Given that the (user-facing) software that comes with the car is always broken (modulo Tesla and a few other modern exceptions), it's no wonder people want to replace that software with literally anything else that actually works.
This isn't the auto industry deciding that you need to use your phone. On the contrary, GM and others tried hard to push back on Carplay and AA. This is the buyers telling the auto makers that they want Carplay and AA since they know that that actually works, and they know that the software the car actually comes with will be garbage, or at the very least unfamiliar and not really worth dealing with when you can hook up your phone and let that actually solve the problems the user wants to be solved.
It's insane to me that anyone could be of the opinion that it's good that some automakers ban/don't implement Carplay and AA. It's just taking away user choice. It's hard to believe anyone could have this opinion without either never having driven a modern car, or just being an industry plan.
I can name you tons of things they fix over 5 years i own over the air. The ratio there is very very net positive towards a very good , well polished system, not an other way around.
They even fixed once a semi broken hardware for me. Camera power started acting up. I called tesla they said you can come to service to replace or wait a bit we will release OTA that will decrease a power consumption, in 3-4 weeks they fix my custom problem without going to serive
Uh? I can literally count the times my Model 3 2019 software broke something on one hand:
- when they redesigned the AC controls to make them more visually appealing but less functional (no button borders and no fill)
- when they decided to put air recirculation under auto-control and ignore the user's settings
- when they optimized the cellular connectivity and it took them a while to get back proper reconnect on loss of signal (garages etc)
- when they tuned sentry's sensitivity and there was some back-and-forth for a couple cycles between "record everything" and "record nothing"
None of this made the car undrivable or totally useless. I did hear of reports of early HW4 cars bricking their FSD computer, and Tesla replaced it.
In my opinion it's still a much better experience than the absolute guesswork of "what will my screen display today when I connect the phone? and where will I find Maps again?", based on software updates on the car AND the phone.
EDIT: also agreeing with the sibling comments: my 7 year old car got a lot of extra features since release, and most of them working very well at the first try.
> It's good that there are some companies, that ban android/apple car since that's an ugly experience for the user.
Absolutely nonsensical. Both Android Auto and Apple CarPlay are better experiences than any first party car interface I’ve experienced.
In many ways the auto industry stumbled when they allowed this connectivity, just like phone networks stumbled when they let Apple dictate the iPhone from top to bottom. Good news is those stumbles worked out great for users. We get iPhones without bundled crapware apps and we get cars that don’t require monthly subscriptions for basic functionality your phone provides.
Presumably every car manufacturer can use AI. Yet there are still bugs. If all bugs are solved with AI, and therefore every car manufacturer with access to AI writes bug-free software, the only remaining conclusion is that some car manufacturers don’t have AI yet.
> It's good that there are some companies, that ban android/apple car since that's an ugly experience for the user
Hello, Elon
Seriously this is so wrong. I love being able to carry all my preferences from my phone directly to the car without any additional configuration. Before this, we had to do stupid stuff like entering individual contacts in the cars system.
That’s true, however a properly engineered safety-critical system provides separation between assurance levels, so you don’t need to have the same level of assurance for the infotainment system software that you do for safety-critical displays and controls.
The FAA has historically done a good job on this front with aviation (notwithstanding the 747 MAX debacle, which was a failure implicating flight control software but not a failure of separation of assurance levels). Automotive software and standards and NHTSA is far behind on this front. Cost is certainly a factor; it is not economical to apply aviation safety and engineering standards and processes directly to automobiles. But in the meantime, it is an absolute Wild West for any contemporary drive-by-wire car.
don't know where you sourced your perspective but yea based on the reports ive heard from automotive engineers, coding in autosar is the direct opposite of wild
"Bug fixes and performance improvements "
Even worse than the "reformat" commit message that your bisect landed on.
1. You write release notes thet contain technical details. Less than 1% of your customers understand them. More than 90% probably won't even care, let alone understand the document. And then there are the folks who get confused or scared and reach out to customer support with weird questions. This generates extra workload.
2. You explain nothing. The release simply is. The technically minded people are mildly annoyed. A few customers affected by open issues wonder if it's fixed now. The rest of them doesn't even care that there is an uodate and carries on with their lives. Customer service continues to complain about the usual bunch of random and weird customer issues.
It's quite natural to start doing (2) in a consumer facing business, isn't it?
Or businesses would close to do inventory.
We made do.
Today there’s no disc, no recall - that cost to shipping broken software is gone. We the users pay the price.
The article is a lovely cathartic rant against agile software development methodologies applied in the wrong place in the wrong way, whether or not the software(s) in question used such methods. On of the worst assumptions, I believe, is that the end-user is willing and able to function as testing/QA without detriment to the product and company.
Edit: Didn't expect so much interest. Here's more detail. This manufacturer is known for nickel-and-dimed on every option so not much gain in name and shame. Hacking the car's entertainment system is fairly trivial. It's Linux based. Use a UART to USB adapter to connect a computer to the unit. Open a terminal application (like PuTTY) to establish a serial connection. Do a 'dd' to dump the file system to the USB drive inserted to the car's port. To alter the firmware's behavior, unpack the dump into the file system structure, then add an init script to the Linux init (or systemd) to run your script on boot up. Repackage the firmware. Copy it to a USB drive. Plug it in to the car and do a firmware update. On the modified firmware I used, people have added a whole UI into the firmware, which can be invoked with a button combo pressed on the console.
There are nice people who have reverse engineered the firmware, found out where all the feature flags, done all the modification, fixed bugs (yes, the bugs from the manufacturer were fixed), and packaged up the firmware ready to go. You just need to do a firmware update with it.
All the hardware pieces are installed at build time
As a licensed driver who resides in the Sonoran Desert, can you even imagine the horrific visions that just flashed before my eyes?
We often joke around here that wearing oven mitts is a good way to get our cars started in the late afternoons. It's not really a joke.
I personally have several pairs of gloves, and I never fail to don those gloves when I go out, whether I am walking, riding an e-Scooter, or driving, because even as a pedestrian we must touch so many metal objects that bask all day in the direct sunlight.
Heated steering wheels. What a world we live in today!
Man, when it's freezing outside, it's awesome. I wouldn't buy a car without it now.
So exactly like software licensing? Most apps nowadays don't even require a purchase to download. The download is free but you need to pay $4.99/month subscription to use, or $99.99 for a "lifetime subscription". The code's are all there. The author just doesn't want you to use it.
This is something far more heinous, you bought a thing for a lot of money and just in order to extort even more money from you, they simply disable/lock away a feature that you technically already possess.
A better analogy in software might be that you bought a video game for $60,000 and the only way to beat a lower level boss without spending 2,000 hours trying to, is to pay the developers another $5,000 for a super weapon.
You'd prefer they get nothing for the effort they put into developing the software?
To exit a climate control modal on the screen you have to find and tap a tiny red "X" box in the furthest corner of the screen from the steering wheel.
I've driven the 2025 and the 2024. The 2024 not only had all the crappy UI, but the driver assistance features were also alerting you constantly, and they were terrible. I was amazed how much they toned it back and improved it with the 2025.
Still wouldn't buy either of them personally. The constant nags and alerts are so fucking annoying and distracting. The seat belt chimes that don't shut off and get louder and louder make me want to rage so hard. I am religious about wearing my seatbelt, so there's absolutely no reason for it to piss me off so bad.
While that particular issue isn't solvable, I am open to any advice on coding tools that might allow one to unlock other settings or make changes like "ensure auto-stop is fully disabled across restarts and drivers".
Don't put discrete, isolated HW functions behind a SW powered screen. It's that simple.
It's practically impossible to test every permutation of code against every system. Maybe AI can help, but practically it'll just mean the software gets more complicated, with more features. And to top it all off, more and more features get regulated, so they have to be there. The rear-view camera requirement in particular, since you need a screen to see the output. And if you have a screen... well it's an already paid cost, so, might as well display other things too.
We should kill the reg.
Amen. If you go to a bakery, you expect them to care. If you hire a photographer, you expect them to care. Software isn’t (usually) a factory line; CRUD may be similar concepts throughout, but everyone is making it themselves.
Give a shit about what you make.
I've been lately into mobile apps and i am finding that there is no system which combines these 3
1. AOT 2. JIT (for hot paths) 3. Interpreter for non JIT paths or where you explicitly do not want jit.
Imagine, a system which compiles your app to AOT but when you push OTA update, part of the app are selectively replaced to JIT or Interpreted mode.
it's theoretically possible but nobody seems to be doing it. I found react native / expo eas update but i don't think it's like this, it has a Hermes VM which runs bytecode but it has no JIT so you'll write native code for hot path then you'll need to upload a full update to Android. So, only toy level code performance can be can actually be written in JS?
Much better, patch the parts where AOT calls into JIT or interpreter.
Currently i am using react native and flutter. Flutter's UI framework code is in Dart if you load this whole code into JIT, it will consume a lot of resources on mobile device as the framework is big and does lot of work. If all framework code was AOT and your custom patchable code also comes with AOT but upon OTA replaced by JIT or Interpreted code, crazy performance!
But what if we could run the most of the code in AOT and only run changed code in JIT or interpreted mode? arguably it would perform as good as it does not being complete AOT while also providing react native like fast updates.
AOT will be in base app and it will include JIT or Interpreted OTA updates.
For Apple, JIT can simply be disabled and OTA update can run patched part in interpreter.
But JIT works on Android (well), so this Hybrid system is capable of being much faster than React Native where your JS code only runs in Hermes VM which isn't JIT.
In this system, all your crazy math and algorithms (on hot path) stay easily updatable as this small part can be run on JIT with snapshot saved for next load if it has not changed!
JIT on average is 100x faster than dumb interpreter for language like Dart.
Does it already exist? otherwise i am seriously thinking about building something like this.
Which is never, unless something is broken.
Having rolling releases for a CAR is absolutely stupid.
(This software building code is more necessary for software used in critical infrastructure. But it should also be applied to consumer devices as basic protection for consumers against manufacturers breaking functionality the consumer paid for)
Rather than hamstring all software by requiring DOT testing before firmware updates are published, follow Tesla's model which has been very reliable within the industry
Please don't take this as suggesting any of them are good at software, mind you.
Let's face it, this really is about Tesla, vs the rest of the major players (ford, kia, VW etc)
If Android Auto stopped working I'd also be livid because I don't use the built in crap.
An update which advertised, amongst other features, that it "rectifies errors and prevents security gaps" and stated "This update is recommended for everyone."
Borderline insane to refer to the user as "complicit" in that case.
Someone in auto industry decided that plugging device, and dependency on core functionality of the car to 3rd party device, that might be lost, have battery died, used for something else, etc is a good way to save money and not do proper software. It's even more bizare now, mid 2026, when software is solved with AI.
It's good that there are some companies, that ban android/apple car since that's an ugly experience for the user.
On the contrary, having cars stop trying to provide a bespoke more-proprietary outdated piece of software you have less control over, probably have surreptitious telemetry reporting back from, and might have to pay a subscription fee for, and instead just delegate to the smartphone you already have, is a huge and surprising win.
> It's good that there are some companies, that ban android/apple car since that's an ugly experience for the user.
It's a terrible user-hostile loss when cars do that, typically because they want to maintain more control or try to extract more revenue from the user.
If you don't want to use it, don't use it; there's nothing forcing you to do so.
there are companies with amazing software experience, Rivian, Tesla, Nio, Lucid, even gm is start moving into that direction, and WV is buying software from rivian.
I don't want an amazing software experience. I want an unsurprising experience, ideally the one I already have.
The only thing better than Android Auto would be to just provide a standardized port (and perhaps a wireless standard) for a combination of video output, audio output, touchscreen input, and charging, with optional standardized sensor inputs. Then you wouldn't need two different standards (Android Auto and Apple Carplay), just one, which would also work with any new device that came along to break that duopoly.
- when you need to re-pair Bluetooth
- when you forget the cable to charge and you need to drive
- when you want to share your car to someone and they need to spend 5 minutes to accept every single ToS possible to simply put a GPS
- several people with phones paired before, now you dealing with complete random
you name it.
- you listen music and you need to go out to buy something while others in the car
None of these problems exist if you have a decent, dedicated computer in the car that just works, it knows profiles, it does need you to be always on wire, or on the line.
So a web browser loading a page off the phone? :)
I own a Tesla, and a Ford. Amazing is not how I would describe the Tesla software experience. It lacks features like iMessage for group and for non-phone recipients that I am able to use in my Ford. Even though many people would say the Ford software is otherwise inferior. And if history is anything to go by, there are features in CarPlay today that Tesla will never add to their infotainment system.
Are you fucking serious? Tesla's head unit software is barely passable. It's shit.
Nearly half of the screen is taken by useless toy car depictions, and navigation can't even render the full street names because the width of the input field is fixed.
I'd agree if it worked.
Android Auto sucks. And I don't like that my auto manufacturer can wash their hands off it by pointing at Google.
> If you don't want to use it, don't use it; there's nothing forcing you to do so.
As long as the car manufacturer gives me basic functionality (radio, stereo, Bluetooth, etc). Nominally they do, but it sucks in a different way from Android Auto. So I have to ping pong between these two.
My prior car's aftermarket Bluetooth receiver was fantastic. The fact that I can't install something like that on modern cars is a huge regression.
The entire idea that everytime you sit in the car you need to pair your devices, what if you have several devices in the car etc ? it's such a horrible, broken, neurotic idea.
No, it doesn't. It's a very simple streaming protocol.
It's literally a gRPC-encapsulated stream of h264 frames over a USB connection. With touch events and some car-related telemetry streamed back. You can implement it in a weekend: https://github.com/mrmees/open-android-auto
You can create whatever you want, including just streaming videos onto the head unit or making it play Doom while driving (with steering wheel for input).
This isn't the auto industry deciding that you need to use your phone. On the contrary, GM and others tried hard to push back on Carplay and AA. This is the buyers telling the auto makers that they want Carplay and AA since they know that that actually works, and they know that the software the car actually comes with will be garbage, or at the very least unfamiliar and not really worth dealing with when you can hook up your phone and let that actually solve the problems the user wants to be solved.
It's insane to me that anyone could be of the opinion that it's good that some automakers ban/don't implement Carplay and AA. It's just taking away user choice. It's hard to believe anyone could have this opinion without either never having driven a modern car, or just being an industry plan.
They even fixed once a semi broken hardware for me. Camera power started acting up. I called tesla they said you can come to service to replace or wait a bit we will release OTA that will decrease a power consumption, in 3-4 weeks they fix my custom problem without going to serive
Uh? I can literally count the times my Model 3 2019 software broke something on one hand:
- when they redesigned the AC controls to make them more visually appealing but less functional (no button borders and no fill)
- when they decided to put air recirculation under auto-control and ignore the user's settings
- when they optimized the cellular connectivity and it took them a while to get back proper reconnect on loss of signal (garages etc)
- when they tuned sentry's sensitivity and there was some back-and-forth for a couple cycles between "record everything" and "record nothing"
None of this made the car undrivable or totally useless. I did hear of reports of early HW4 cars bricking their FSD computer, and Tesla replaced it.
In my opinion it's still a much better experience than the absolute guesswork of "what will my screen display today when I connect the phone? and where will I find Maps again?", based on software updates on the car AND the phone.
EDIT: also agreeing with the sibling comments: my 7 year old car got a lot of extra features since release, and most of them working very well at the first try.
Absolutely nonsensical. Both Android Auto and Apple CarPlay are better experiences than any first party car interface I’ve experienced.
In many ways the auto industry stumbled when they allowed this connectivity, just like phone networks stumbled when they let Apple dictate the iPhone from top to bottom. Good news is those stumbles worked out great for users. We get iPhones without bundled crapware apps and we get cars that don’t require monthly subscriptions for basic functionality your phone provides.
Presumably every car manufacturer can use AI. Yet there are still bugs. If all bugs are solved with AI, and therefore every car manufacturer with access to AI writes bug-free software, the only remaining conclusion is that some car manufacturers don’t have AI yet.
This suggests the supply of AI is too limited, and there isn’t enough AI to go around. Solution: build more AI data centres.
Why doesn't op simply ask AI to write software to fix his problem?
Hello, Elon
Seriously this is so wrong. I love being able to carry all my preferences from my phone directly to the car without any additional configuration. Before this, we had to do stupid stuff like entering individual contacts in the cars system.
The FAA has historically done a good job on this front with aviation (notwithstanding the 747 MAX debacle, which was a failure implicating flight control software but not a failure of separation of assurance levels). Automotive software and standards and NHTSA is far behind on this front. Cost is certainly a factor; it is not economical to apply aviation safety and engineering standards and processes directly to automobiles. But in the meantime, it is an absolute Wild West for any contemporary drive-by-wire car.