Huh intersting that that they don't support any of the european Stellantis brands at all, wonder what they do differently that makes them incompatible.
I’m working on integrating with a Jeep Renegade which was designed on the Fiat small-wide platform, and the CAN bus architecture is a non-starter for mainline OpenPilot support. OpenPilot requires every signal needed from/to the car is accessible by tapping at most two CAN buses, both of which must be accessible on the cable to the lane assist camera behind the rear view mirror.
On the Renegade, the adaptive cruise control activation and control signals are on a separate bus from the steering control signals, and the ACC signals don’t get up to the lane assist camera at all. OpenPilot support on this vehicle will require tapping CAN buses in two spots on the vehicle, and this is not a Comma-supported configuration. They want to be able to make a single interposer cable that plugs in between the lane assist camera and your car, and if that’s not possible they will never support your vehicle.
To attempt to support my car I am working on a gateway device that will bridge information from the powertrain bus to the fusion bus so it will be available at the camera (which is on the fusion bus and the chassis bus). But this implementation, which may not actually work but even if it does, will never be accepted upstream. And safety-wise, that’s probably the right choice for the project.
The sad part is I think the only signal that I need that I don’t have at the camera right now to make a safe implementation is ACC engagement. I’ve scrutinized every bit of every message on the chassis and fusion buses available at the camera and there is simply no signal that indicates if ACC is engaged.
One bit is all I need to get lateral control working. Well, assuming that once I start injecting control signals there aren’t other issues, that is. And that is not probably a safe assumption.
Probably because they use a bus that's harder to on-the-fly rewrite or because they sign commands.
comma openpilot do its thing by faking stock self driving unit talking to actuators over the in-vehicle network; a modern car is like a bunch of Pi on a LAN hosting microservices, but on a car specific network standard, usually the one called CAN bus, instead of the 802.3 we're familiar with. The manufacturer stock units is usually a camera unit integrated CPU sitting behind a hump behind the rearview mirror. comma devices tap into the cable going in there, sending out fake commands to other computers handling cruise control, brake, steering, blinker... etc.
This can break two ways: some communication standards like FlexRay are harder to tamper and fake, or some newer cars have tightened security clearly in response to comma doing its thing too well, many following the new EU cybersecurity standards which require commands to be signed and/or each of those Pi-like modules to be crypto paired against each others.
I think Stellantis car always had the first of those two issues of having something difficult that are not strictly anti-hacker hostile architecture. But could be both or I could be wrong altogether. The comma devteam seem to like 2015-2019ish hybrids from such brands as Honda, Subaru, Hyundai and Toyota for the presence of the remote control features in the actuator modules && lack of security getting in the way.
From what I understood, when I looked into it a while ago, some car makers use an encrypted ODB2 (needed by Comma.ai to communicate driving instructions).
See for example: https://autel.us/security-gateways/, 'Automakers with security gateways installed include Stellantis (Dodge, Chrysler, Ram, Alfa Romeo, FIAT, and Maserati), Nissan and Infinity, Mercedes-Benz, and Volkswagen and Audi.'
Toyota TSS3 is in fact encrypted; openpilot users who have TSS3 have to manually extract decryption keys from their cars to be able to talk on the CAN bus.
Comments
Huh intersting that that they don't support any of the european Stellantis brands at all, wonder what they do differently that makes them incompatible.
I’m working on integrating with a Jeep Renegade which was designed on the Fiat small-wide platform, and the CAN bus architecture is a non-starter for mainline OpenPilot support. OpenPilot requires every signal needed from/to the car is accessible by tapping at most two CAN buses, both of which must be accessible on the cable to the lane assist camera behind the rear view mirror.
On the Renegade, the adaptive cruise control activation and control signals are on a separate bus from the steering control signals, and the ACC signals don’t get up to the lane assist camera at all. OpenPilot support on this vehicle will require tapping CAN buses in two spots on the vehicle, and this is not a Comma-supported configuration. They want to be able to make a single interposer cable that plugs in between the lane assist camera and your car, and if that’s not possible they will never support your vehicle.
To attempt to support my car I am working on a gateway device that will bridge information from the powertrain bus to the fusion bus so it will be available at the camera (which is on the fusion bus and the chassis bus). But this implementation, which may not actually work but even if it does, will never be accepted upstream. And safety-wise, that’s probably the right choice for the project.
The sad part is I think the only signal that I need that I don’t have at the camera right now to make a safe implementation is ACC engagement. I’ve scrutinized every bit of every message on the chassis and fusion buses available at the camera and there is simply no signal that indicates if ACC is engaged.
One bit is all I need to get lateral control working. Well, assuming that once I start injecting control signals there aren’t other issues, that is. And that is not probably a safe assumption.
Thanks for the insider knowledge, very interesting!
I really think to buy my next car which is supported by comma
Probably because they use a bus that's harder to on-the-fly rewrite or because they sign commands.
comma openpilot do its thing by faking stock self driving unit talking to actuators over the in-vehicle network; a modern car is like a bunch of Pi on a LAN hosting microservices, but on a car specific network standard, usually the one called CAN bus, instead of the 802.3 we're familiar with. The manufacturer stock units is usually a camera unit integrated CPU sitting behind a hump behind the rearview mirror. comma devices tap into the cable going in there, sending out fake commands to other computers handling cruise control, brake, steering, blinker... etc.
This can break two ways: some communication standards like FlexRay are harder to tamper and fake, or some newer cars have tightened security clearly in response to comma doing its thing too well, many following the new EU cybersecurity standards which require commands to be signed and/or each of those Pi-like modules to be crypto paired against each others.
I think Stellantis car always had the first of those two issues of having something difficult that are not strictly anti-hacker hostile architecture. But could be both or I could be wrong altogether. The comma devteam seem to like 2015-2019ish hybrids from such brands as Honda, Subaru, Hyundai and Toyota for the presence of the remote control features in the actuator modules && lack of security getting in the way.
From what I understood, when I looked into it a while ago, some car makers use an encrypted ODB2 (needed by Comma.ai to communicate driving instructions).
See for example: https://autel.us/security-gateways/, 'Automakers with security gateways installed include Stellantis (Dodge, Chrysler, Ram, Alfa Romeo, FIAT, and Maserati), Nissan and Infinity, Mercedes-Benz, and Volkswagen and Audi.'
None of those busses are encrypted (at least not the majority I am familiar with). The security gateway is just a firewall.
Toyota TSS3 is in fact encrypted; openpilot users who have TSS3 have to manually extract decryption keys from their cars to be able to talk on the CAN bus.
How abhorrent and disgusting of Toyota! >:^(
Presumably it is just that no one has tried to do it all the way yet.
But i know there is some experimental work out there.
https://x.com/comma_ai/status/1956879764829995394
They boast a "one year hardware warranty" (EU mandatory minimum is two) so I don't think they're targeting the European market directly right now.
They support Skoda which is not availabe in the US. Otoh VAG brand so it shares the same platform as Volkswagen which is available there