commaai / openpilot

openpilot is an operating system for robotics. Currently, it upgrades the driver assistance system in 275+ supported cars.
https://comma.ai/openpilot
MIT License
49.22k stars 8.97k forks source link

Can this be used with any car? #7

Closed Osmosis311 closed 5 years ago

Osmosis311 commented 7 years ago

Are all the PID's the same across all vehicles? Can I use this on a Chrysler or a Ford and determine if the seatbelt lamp is on?

andrewbhennessy commented 7 years ago

Most domestics have unencrypted and non-gateway protected CAN-buses. Oddly I can't believe they got the Honda(Acura) to work given that the CAN packets are both encrypted and protected by a gateway(Which works by asking questions--not sniffing data). Porsches and other Germans which also includes Rolls Royce are now using a system called flex-ray that uses fiber but can only be accessed through a dealer port and most likely only shows diagnostic information for techs. I am fascinated by utilizing existing hardware and using it to drive autonomously.

A quick aside about Tesla and the SLOW automotive industry:

All modern cars today have the capacity to be autonomous, but Tesla was the first to market the feature outwardly most likely because of their sweetheart deal with regulators and CAFE standard officials. Other companies Like Toyota were singled out by NHTSA after they let go of a plant in Freemont California angering the UAW. Oddly enough Tesla grabbed this factory while Toyota was used as a scapegoat against failing GM and their actual issues with the Chevy Impale and Failing Ignition systems. The Toyota scandal was a sham and only happened with 30 floor mats in the car. Toyota when Nolo-contendere and despite their setbacks have come back strong. They want to see people fail before they come in.

annerajb commented 7 years ago

What hardware is required on the car apart from a unencrypted or non gateway protected can bus.

I assume the steering should have some sort of servo to allow it to move? Brake pedal sending a can packet for breaking, should be on almost all modern cars correct?

Is there a way to know offhand it the car have the hardware (servo on steering and brake with can packets) without going and sniffing the packets as the readme mentions?

andrewbhennessy commented 7 years ago

When you say servo it is implied that their is an active electric power steering component with industrial encoders and enough power to completely control the wheel and not just assist a driver. Most cars with advanced safety packages and electric power steering should have this system. I think we should look at toyota/lexus next because they have really good radar/camera sensor packages, however with any Japanese foreign there is the issue of a gateway. @geohot when do we get into DMCA violations with reverse engineering?

Osmosis311 commented 7 years ago

I'm just looking to get relatively basic info like seat belt light on and doors open for ford E350 ambulance. Would that be doable?

On Thu, Dec 1, 2016 at 9:28 AM Andrew Hennessy notifications@github.com wrote:

When you say servo it is implied that their is an active electric power steering component with industrial encoders and enough power to completely control the wheel and not just assist a driver. Most cars with advanced safety packages and electric power steering should have this system. I think we should look at toyota/lexus next because they have really good radar/camera sensor packages. @geohot https://github.com/geohot when to we get into DMCA violations with reverse engineering?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/commaai/openpilot/issues/7#issuecomment-264186545, or mute the thread https://github.com/notifications/unsubscribe-auth/AAV_MMJS9fWPAzUvUdhsSph4PUYgIfPEks5rDtmqgaJpZM4LA7Yx .

andrewbhennessy commented 7 years ago

If it is a ford get a can bus analyzer and start sniffing. Basically reverse engineering CAN is you start messing with stuff and you find the address or packet id of the changing event. Takes time and will become difficult when you get into more recent cars. Start with old cars and find the ones that have minimum sensor packages.

matthewleehess commented 7 years ago

Commenting because I used to run a custom car shop, and I've done work upfitting electronics on ambulances.

If you're just looking to grab seatbelt status + door status, you're better off just tapping directly into the sensors themselves.

The doors will have wires in the kick panels that will have continuity with ground while the door is closed, and (+)12V when open. Same can be said for the wiring harnesses under the seats.

Not true for all vehicles, other makes/models may use CANBUS end-to-end. But the Ford E-series should still be using the "older" style 12V system.

Note: When screwing around with the seat sensors and systems, take great care at every step. That is typically directly integrated with the airbag system, and can cause catastrophic results.

If you still wanna go through CANBUS, go for it. Just throwing in my $0.02 about the tried-and-true method.

easyjohn commented 7 years ago

Hi, I just try to understand which hardware I should add to my 1988 car to be able to use this project. I can buy separately electric power steering components from listed cars and mount them. I need some sensors and motors under brake and accelerator pedals. But how I need connect them to comma.ai, since I don't have can bus in car? (i.e. - adapt project for any car)

AadiPapp commented 7 years ago

Hi Can I use this to add ADAS abilities to my Mazda6 2009, Assuming it is missing some of the software and hardware can I supplement them with NEO board and custom APIs with the sensors or add new sensors with new APIs

TK300 commented 7 years ago

@easyjohn I'm trying to figure out the same thing. Got a car from 1986, maybe we are talking about the same model even ;) As we have to put all the necessary component in on our own i wonder if it would be easiert to transfer such parts from existing cars into ours and sniff the input controlls or make it from scratch. I have no idea about the sensors/radar though...

easyjohn commented 7 years ago

@TK300 I'm digging a little, so for an old cars we got a two way to implement a Can-bus:

marcregan commented 7 years ago

I'm wondering if my 2016 Volkswagen GTI with the is a viable candidate... It has ACC & LKAS. I've found very little online about reverse engineering the CAN-buses on this car. Does anyone know if Audi / VW encrypts their buses?

geohot commented 7 years ago

No CAN busses are encrypted afaik. Build a NEO and connect it!

Osmosis311 commented 7 years ago

Is there anyone I can hire to help me with this project? Need seatbelt lamp status for Ford E series.

chintan09 commented 7 years ago

@Osmosis311 I could help you with reverse engineering Ford E.

Osmosis311 commented 7 years ago

@chintan09 that would be great! can you email me? danny.ackerman@gmail.com

thanks!

unverciftci commented 7 years ago

What about Toyota Yaris Hybrid 2013?

ingenieroariel commented 7 years ago

The answer to the original question is Yes to any car that comes with LKAS and ACC.

Since the conversation later went off-topic, can it be closed?

AadiPapp commented 7 years ago

Hi Ariel,

How about cars with no LKAS and ACC. I think the topic is being forced on this conversation.I see no harm in keeping this issue open. The open ended topic hope helps to come up with generic solution for all cars.

Thank you Adi

On Mar 11, 2017 10:07 PM, "Ariel Núñez" notifications@github.com wrote:

The answer to the original question is Yes to any car that comes with LKAS and ACC.

Since the conversation later went off-topic, can it be closed?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/commaai/openpilot/issues/7#issuecomment-285918429, or mute the thread https://github.com/notifications/unsubscribe-auth/ALoEX_UTmGLeGLp5iHbwjubULTJ3fCh9ks5rk2FdgaJpZM4LA7Yx .

ingenieroariel commented 7 years ago

(disclaimer I don't have any affiliation with Comma)

For those cars with no LKAS or ACC I believe the recently released Panda board will be a start. And then solutions like OSCC onceit is more mature and addresses the safety concerns with things like steering torque.

About keeping it open or closed, that's up to the maintainers, I agree the conversarion about generic solutions needs to continue, here or elsewhere.

AadiPapp commented 7 years ago

@Ariel Thank you and totally agree with you.Looking fwd to George's talk on Panda board at SXSW :)

On Mar 12, 2017 5:51 PM, "Ariel Núñez" notifications@github.com wrote:

(disclaimer I don't have any affiliation with Comma)

For those cars with no LKAS or ACC I believe the recently released Panda board will be a start. And then solutions like OSCC onceit is more mature and addresses the safety concerns with things like steering torque.

About keeping it open or closed, that's up to the maintainers, I agree the conversarion about generic solutions needs to continue, here or elsewhere.

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/commaai/openpilot/issues/7#issuecomment-285979714, or mute the thread https://github.com/notifications/unsubscribe-auth/ALoEXzjXUSN4Tft82ku7KnF79TXiKkfFks5rlGjGgaJpZM4LA7Yx .

ajarrard commented 7 years ago

@easyjohn @TK300 Have you all found out anymore on this issue? I too would like to bypass the car's system and adapt this for use on an older car by adding my own motors and sensors.

robertcw-3rd commented 6 years ago

So I’ve got a 96 Chevy Camaro z28 that I’d love to get auto cruse control / whatever it’s called to have the car auto follow the traffic in front of me. This would be outstanding in Orange County and LA traffic, especially on 405.

The car did come with cruise control from the factory, but it’s a 90’s Chevy, so I doubt this will be possible.

lockman73 commented 6 years ago

I have an 08 Toyota Prius. Outs both, Electronic Power Steering, and Brake by Wire. If any of the older cars are compatible, this should be one.

Unfortunately, I don't know where to begin.

QTRBENZStageIIautDvO commented 6 years ago

Hello everyone. I have a lot of questions. But first off, Im new to this! But the idea has been eating at me for a very long time. I feel like everything I've seen, read and believe to understand- is I can make my commuter a possible level 2 driving car with this program. If anyone is still here. ( been 4 months since a comment so I feel this is still fresh. ) could and would anyone help me with some serious questions concerning my vehicle. Thank you very much in advanced!

bugsy924 commented 6 years ago

https://github.com/commaai/openpilot#supported-cars

bbsmithy commented 5 years ago

Most domestics have unencrypted and non-gateway protected CAN-buses. Oddly I can't believe they got the Honda(Acura) to work given that the CAN packets are both encrypted and protected by a gateway(Which works by asking questions--not sniffing data). Porsches and other Germans which also includes Rolls Royce are now using a system called flex-ray that uses fiber but can only be accessed through a dealer port and most likely only shows diagnostic information for techs. I am fascinated by utilizing existing hardware and using it to drive autonomously.

A quick aside about Tesla and the SLOW automotive industry:

All modern cars today have the capacity to be autonomous, but Tesla was the first to market the feature outwardly most likely because of their sweetheart deal with regulators and CAFE standard officials. Other companies Like Toyota were singled out by NHTSA after they let go of a plant in Freemont California angering the UAW. Oddly enough Tesla grabbed this factory while Toyota was used as a scapegoat against failing GM and their actual issues with the Chevy Impale and Failing Ignition systems. The Toyota scandal was a sham and only happened with 30 floor mats in the car. Toyota when Nolo-contendere and despite their setbacks have come back strong. They want to see people fail before they come in.

Hey @DannyBoyBroadSword, i'm interested working on a port for flex-ray you mentioned it can only be accessed through a dealer port have you come across anyway to get around this? On the bounty page for comma ai it mentions this dev kit might be useful https://www.digikey.com/product-detail/en/DEVKIT-MPC5748G/DEVKIT-MPC5748G-ND/6073409?utm_campaign=buynow&WT.z_cid=ref_octopart_dkc_buynow&utm_medium=aggregator&curr=usd&site=us&utm_source=octopart do you think this could be used to build an adapter? Thanks