Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Ya, that is shockingly scary. It makes me think we need some new standards about software updates to vehicles in general (or perhaps these already exist but were missed for some reason?). I can totally imagine that software used to be this ancillary selling point that didn't need such tight regulation, but as it becomes core infrastructure for the vehicle this is less of an IoT toy, and deserves stricter standards.


How about: you get to say whether you want to update and when and manufacturers are required to very explicitly list all of the changes in an update? That would seem to be an acceptable minimum.


I don't think that Jeep would have sent out a message saying that one of the changes would brick your machine.

It seems that the ability to trivially roll back any update would be a better choice, at least for this. (But I'm sure there are downstream effects I haven't thought about if that were implemented.)


How do you roll back a fatal car accident caused by the faulty update?

Giving user’s control over when the update runs allows them to be in a safe and secure setting when that update happens. Allowing them time, gives them and Jeep the ability to slow roll the update so they can halt it if initial feedback is negative.

I say this as a Mac user who does not allow auto updates for MacOS. I wait a week or so until the chatter validates it as non-breaking. They pushed an OS update several years ago that broke a few things I rely on. So I don’t trust them now, but these things just happen on OS’s with third party software. I expect it. But, I also don’t want to be forced to deal with the headaches immediately. I’d rather let the third parties run updates and advise how to deal, before I have to dive into fixing things. With car firmware, there’s really no excuse for this except poor engineering / processes.


Giving user’s control over when the update runs allows them to be in a safe and secure setting when that update happens

FTFA:

> The buggy update doesn't appear to brick the car immediately. Instead, the failure appears to occur while driving — a far more serious problem

And from the GP upthread:

> There is no way to tell if you received the bad update.

> There is no way to tell if you received the 'fix' either.


Good points, I did miss those. However, if I had this vehicle and I was reading this article today - and had the ability I'm asking for - I would just keep my current version running until they figure this mess out. It's the advantage of letting other people run the updates first, you get to hear about issues before you experience them.


> user who does not allow auto updates for MacOS.

Many security compliances require auto-updates to be on. It's thought of to be a lesser evil, because many (most) users never update their OS/browsers, which is worse.


Well it could be solved on two fronts, you could issue the update and let users know that the update needs to be installed and will be automatically installed if not done by a specific timeframe.

If there are security related updates where the risk is severe then they may auto update.


The point is it’s up to the device owner to make their own risk calculation instead of the benevolent manufacturer


the point was that manufacture is forced to have auto update enabled in name of security compliance. so, this issue needs to be solved by compliance first


Well, my comment was from owner's side. An end-user corporation is the owner of a corporate device like car, so it can decide whether turning it on or off. I just commented that for any serious corporation auto-updates will be turned on, per compliance requirements applied to the corporation.


This is a hypothetical in this situation, car manufacturers are under no such obligation. Also, rules like this tend to get reversed once the true risk is realized- people dying that is. We do all kinds of things for very marginal improvements to security these days


> Giving user’s control over when the update runs allows them to be in a safe and secure setting when that update happens. Allowing them time, gives them and Jeep the ability to slow roll the update so they can halt it if initial feedback is negative.

This does not fix any QA process that is broken. And frankly you should not need to update any control unit firmware after it is sold. The fact that they're even doing this is broken.

Unless your Mac is somehow attached to 5000 pounds of metal going 65 on the highway, the same standards should probably not apply.


> going 65 on the highway

Oh you sweet summer child


> The fact that they're even doing this is broken.

The NASA space probes are constantly uploaded with new software that has greatly increased the scope of their mission.


The NASA space probes can’t plow into a minivan with a mom and her 2 kids inside. There’s an entire different risk level here.


What if the update is to address a safety issue?


The manufacturer needs to issue a recall in that case. They can't have their cake and then eat it too. Either the update is not critical and should not be generally available or it is critical and they should inform their users with the proper framing.


The original software will always have bugs in it, and those bugs will need correction. Software updates to fix/enhance it will also introduce new bugs.

The idea that one can create complex bug-free software is a fantasy. The correct mindset is to learn how to deal with failure. (This is how airliners are designed.)


> What if the update is to address a safety issue?

If they didn't make "safety" right from the first time, why do you think they will do it better the second time, when the fixes are more expensive and the time pressure is enormous ?


Please refer to my earlier comment that there is zero chance of making bug-free software.


Counterpoint: You can get close enough that you can run a probe in space for 60 years.


Some probes have had major failures that JPL was able to work around with a software update.


True, but: different budget per unit of code produced.


Hence the famous joke at NASA that you get to launch the rocket when the documentation if piled up would be taller than the rocket itself.

...all of which is just an excuse to show this great picture of Margaret Hamilton [1] lead developer on the Apollo guidance system standing next to (and slightly shorter than) the printouts of the source code https://en.wikipedia.org/wiki/File:Margaret_Hamilton_-_resto...

[1] Who was admittedly quite short apparently


That's a fantastic picture.

I've worked on some interesting software with lives on the line as well and the amount of test code absolutely dwarfed the functional part. I wonder whether at the time of the effort you linked that was already common practice and if it was what the fraction of that code was tests.

Assuming she's 1.65 meters tall and 66 lines per page (quite common back then), at 0.2 mm thickness per page that's 8K pages times 66 lines / page is ~550K lines. Pretty impressive!


on the other hand, if you know your old software is buggy and could cause fatal accident, you release a software update, but for some unknown reasons, the user keeps denying updating software, what would you do ?


In that case you issue a recall, which is the correct way of dealing with potentially fatal manufacturing defects.


Which will be costly. Also, it does not guarantee the user will return your car, right?


It should be costly. You want to encourage companies to make better/safer products that have been well tested. The whole “Move quick and break things” is from the perspective of a completely nonessential social media service. They have no consequences when they break things, although even that has changed as every minute of downtime is lost revenue. Self inflicted financial pain is completely acceptable, if they choose to take that path. Car companies should not.


Yeah, but the user will be liable for not returning the vehicle under a recall.

As for cost, surely you can ask Ford's lawyers who worked there in the 70s to give you a good calculation on life vs recall costs.


Just issuing a recall is not enough. There are countless reasons why someone does not return the product: They maybe simple not know, and there is no way to reach them.

That is why Samsung push update to disable note 7 even after recalling them.


> There are countless reasons why someone does not return the product: They maybe simple not know, and there is no way to reach them.

In Germany we let the Kraftfahrtbundesamt handle this. You are required by law to keep your address updated with the authorities, and all vehicles have to be registered to get a license plate. When a recall for safety reasons happens, the Kraftfahrtbundesamt writes a notification letter, and if you do not respond in time with evidence of having the recall issue remediated by a qualified shop (or doing it yourself and getting a sign-off from a licensed inspector), eventually they write to your local DMV office that can ban your vehicle from the roads, and if you miss that the police shows up at your home and physically removes the license sticker from the table.

And heaven forbid you get actually caught driving the car after having gotten the notification letter from your local DMV. That's automatically felony territory. Our authorities really, really do not mess around.

[1] https://www.kba.de/DE/Themen/Marktueberwachung/Rueckrufe/rue...


As American, I assume most the thread above was assuming US locale and it Seems like a solid case of the all too common “impossible by US status quo standards” when in fact the solution can be quite simple we just lack the imagination or willingness to see what worths elsewhere


> on the other hand, if you know your old software is buggy and could cause fatal accident, you release a software update

No. You test it. And release it if and when it is fully tested. (you know, V-cycle). But we are Agile now and testing is expensive.


You can apply every fancy safety model (V cycle, iso262626, ASIL, MIRSA) and nothing can guarantee you write one-shot bug free software when your software is slightly more complex than just controlling some lights, sensors or actuators.


But you’d catch cases like this where the hardware is immediately bricked during driving. If you didn’t, your tests aren’t up to snuff.

Let’s not let perfection obstruct progress.


>your tests aren’t up to snuff

Yup, my test is not perfect, but "Let’s not let perfection obstruct progress".


Are you suggesting the “does it drive” test after an update isn’t a reasonable test that should be a fairly common sense one to add in?

In all scenarios, tricky bugs will happen. Something inconceivable will go untested. But that’s not what happened here. This is basically functionality being lost that very obviously should have been tested.

In that sense, they could have made progress. Nobody is expecting perfection. You seem to be hung up on the distinction


This is not a case of 'absolutely bug free', more a case of 'not obviously and stupidly broken'.


It's not perfect but seems reasonably easy to implement and would certainly help. If the user needs to approve each update and can see what the changes are most updates will either be skipped or delayed long enough that catastrophic bugs will only hit the small subset of cars that update immediately.

I would bet most updates, especially from a company this bumbling, will be more along the lines of increasing telemetry or pointless UI changes than releasing actually useful features and bug fixes.


You might not accept an update with a bunch of changes that didn’t sound relevant to you.

I certainly wouldn’t accept one while I was still driving the car!


The update didn’t happen while people were driving. Rather, the bug took time to occur, well after the update had been applied.


It has become convenient for manufacturers to treat software/firmware differently from hardware, and we should fight that. If you buy a car, phone, or a TV, you buy an appliance, not "hardware stored at your place with software/firmware controlled by us".

OTA software updates should be a convenience, not a requirement, never be automatic, and be otherwise treated just like a visit to a car repair shop.

Similarly, no manufacturer should be able to tell you "oh, but it's a software problem" if your thing doesn't work as expected (I had Apple tell me this, for example).


Exactly. It has become accepted that manufacturers can sell us complicated systems before they're "done" and software is the excuse. It should not be acceptable, and if done well we could see incentives against this behavior causing manufacturers to sell radically simpler, safer, and more maintainable systems.

In this case, it appears somehow that an infotainment system update impacted the drivetrain. In my fully "fly by wire" computerized vehicle from 1999 (M-B E300), even if it somehow could receive OTA updates, these systems are physically separate. The ABS system is a different module from the transmission controller, which is different from the engine controller. They all communicate over CAN, but the only way one could crash another is if somehow it responds poorly to incorrect CAN messages.. And even if these computers crash the mechanical components they control will probably keep working more or less.. What has happened in the intervening quarter century that made it possible for this failure to happen?


> Similarly, no manufacturer should be able to tell you "oh, but it's a software problem" if your thing doesn't work as expected

Well, they should if they provided you with the hardware and you got the software from someone else. But that's the other problem: They prevent you from doing that, and then if their software is crap or they decide to turn off the servers, what do you do?

Watch for some carmaker to try to say that the car only had a 10 year warranty and then brick them by turning off some servers after they're over 10 years old, or just go out of business with the same result. It's a travesty that people even put up with that for electronics.


Release notes won't help a user figure out whether the update is going to brick their car the day after they install the update.

The solution here is that the manufacturer needs to test their damn update before any of their customers get them.


> How about: you get to say whether you want to update and when and manufacturers are required to very explicitly list all of the changes in an update?

Huh ? What a stoopid idea. Who would protect your security ? Who will protect the children ? /s


There is no need to invent new regulations. We already have criminal liability, endangerement from gross negligence, and manslaughter!

I do not see reason, why CEOs of big companies should be exempt from this!

If bus driver makes mistake, or someone drives drunk.... They get punished. This is the same thing!


> There is no need to invent new regulations.

The current regulations are written for a time where cars didn't have rolling computers in them. And even then, the regulations don't account for Tesla-style linked systems. So I say we do need new regulations.


Haven't cars been substantially computer controlled for decades? Electronic fuel injection has been common since at least the'90s.


Yes but it's fairly recent that cars are receiving software updates on their own. Usually if there was an update, it would be from a recall that would necessitate going to a dealer to apply the changes, not something that is auto-downloaded and applied without the owner's awareness.


And even then, the car is at a dealer and not your garage or some random shop. So it can potentially make the OEM liable if the update goes sideways.


Yes and we have the NHTSA (unless it's already been neutered by the chaos) who can accumulate statistics and issue recalls.


NHTSA's power is simultaneously very broad and narrow. They're empowered to investigate potential safety issues after the fact, but this may not be a safety issue in the very pedantic sense often used. NHTSA can proactively set standards, but the standards they've set (FMVSS) largely ignore modern electronics. So on and so forth.


NHTSA has been involved in recalls of OTAs that involve safety issues in the past, sometimes for things more minor than this, as long as it is something that affects safety equipment. e.g. stereo recalls because the backup camera took too long to display when shifted into reverse.


i'd venture a guess - you've never seen "Fight Club" :)


> It makes me think we need some new standards about software

No way. Testing is expensive. /s




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: