In the video, the phone appears to be in some kind of holder that has vents on the side. Possibly with some active cooling with a fan.I foresee a problem with the phone getting too hot and software starts lagging, could be dangerous. I get that now when using the phone for Android Auto...
OPENPILOT 2019 CHEVY BOLT PORT
This documents my efforts to add support for the 2019 Chevy Bolt to comma.ai OpenPilot open-source self-driving software.
Good progress has been made, but the support is not ready (and may never be ready) to merge into the main OpenPilot source.
If you want to try this you will need to use my fork of the OP source. Please be aware that this is a Work In Progress and may be broken from time to time.
Current status: Lateral Control Working*
* Power Steering control module still faults after some length of time (up to an hour) requiring a complete shutdown of the car to resolve.
OpenPilot has previously been ported to the 2016-2018 Chevy Volt so long as it has Adaptive cruise control (ACC) and Lane Keep Assist (LKAS) . On the pre-2019 Volt it was possible to implement through the OBD-II port with a community developed “Giraffe” (Giraffe is the generic term for an adapter / extra wiring required to make it work).
The Volt has an ASCM that must be bypassed in order for OP to control the car; additionally some tomfoolery is required to power on the radar module.
The Bolt does not yet support ACC at any trim levels. LKAS and Forward Collision Avoidance (FCA) are available with the Driver Confidence II package – this package is required to get anywhere. If you don’t have it, this will never work.
Additionally, GM has added a Serial Data Gateway with “Cyber Security” filtering that blocks important messages from the OBD-II port (this applies to the 2019 Volt as well). We must interface the unfiltered CAN busses through other connectors in the car.
The Bolt does not contain an ASCM – all the self actuating functionality is handled directly by the Forward Facing Camera (FFC) module. Because of this, it is possible to intercept the required CAN busses from the FFC connector.
- comma.ai EON Devkit
- comma.ai Grey or White Panda
- A 2019 Chevy Bolt with the Driver Confidence II package
- This OBD-II extension cable (Unless you want to figure out the pins yourself, use this one specifically)
- 6 feet (or so) of CAT-5 cable
- several feet of security wire (TODO: get AWG)
- At least 1 male 34825-0124 Molex connector (I’d get 2)
- At least 1 female 34824-0124 Molex Connector (I’d get 2)
- At least 12 terminals for the female Molex connector (I’d get at least 24 – you will likely make some mistakes)
- Soldering iron, solder, recommend some heat shrink tubing
- Patience and a steady hand
(Insert diagram here)
The Bolt’s FFC connector pinout:
Pin Wire color description
1 BK Ground
3 RD/GY 10A Fuse B+ F45DA 12v
4 WH Switched to ground, air bag coil, LED indicator on wheel, steering wheel control switch right??
5 BU Powertrain CAN ECM side, High
6 WH Powertrain CAN ECM side, Low
7 BU Powertrain CAN BCM side, High (steering side)
8 WH Powertrain CAN BCM side, Low (steering side)
9 WH/BU (IGN) 5986 (data link to inst cluster & radio)
10 GY/WH air bag coil, LKAS switch & collision switch (resistance based differential)
11 GN Low speed GMLAN
Obd-II pins (Panda Perspective)
OBD-II cable wire colors (assuming you used the one referenced. You should probably double check in case Amazon switches manufacturers):
1 – Brown
2 – brown/wh
3 – orange
4 – red/wh
5 – green
6 – green/wh
7 – black
8 – black/wh
9 – lt orange
15- dk blue
In our case, CAN1 is the Powertrain CAN Bus. CAN2 is the Chassis CAN bus. CAN3 is connected directly to the FFC’s Powertrain bus wires and requires a 100-120-ohm terminating resistor.
(I will provide more complete instructions later)
- Cut the OBD extension cable in half, remove the outer insulation maybe 2 inches
- Remove 2 inches of insulation from both sides
Here are the connections that need to be made.
OBD-II car port (male) <-> female OBD-II connector
From the OBD-II port we need to run the following signals through the CAT-5 cable:
These need to be connected to the same pins on the female OBD-II connector.
- 3 & 11 – CAN2H and CAN2L (use a twisted pair)
- 7 & 15 – K-LIN and L-LIN (use a twisted pair) (may not be required)
- 4 & 8 – Ground and Ignition (use a twisted pair) (technically ground isn’t required but I’d rather not have the spare wire of a twisted pair floating)
Primarily we need the Chassis bus. Note that this is a filtered Chassis bus – most likely we will tap into the unfiltered Chassis Bus at the Chassis Control Module or the Power Steering Control Module in the future.
I’m not sure the LIN is used – I brought them up for safety.
Camera side Molex (female) <-> Vehicle side Molex (male)
The following pins on the camera Molex connector should be connected straight from the female to the male: 1, 3, 4, 9, 10, 11. Note that we will need to tap into pins 1, 3 & 11. (I was naughty and stripped a small section to wrap wires around – there must be a better way)
On both the male and female Molex connectors, pins 5 & 7 should be connected together, and pins 6 & 8 should be tied together. For the rest of the document when I refer to pin 5, I mean 5 & 7; likewise pin 6 refers to pins 6 & 8.
Have fun crimping those terminals! Do NOT fold the wire over and crimp with insulation – the terminals will not fit in the connector!
Camera side Molex (female) <-> female OBD-II connector
Pin 5 Molex -> Pin 12 OBD
Pin 6 Molex -> Pin 13 OBD
Vehicle Side Molex (male) <-> female OBD-II connector
Pin 1 Molex -> Pin 4 OBD
Pin 3 Molex -> Pin 16 OBD
Pin 5 Molex -> Pin 6 OBD
Pin 6 Molex -> Pin 14 OBD
Pin 11 Molex -> Pin 1 OBD
When you are done you will have a Male OBD-II connector that plugs into the car’s OBD-II port with a cat 5 cable running up to the FFC area.
Plugging it in
- Remove the plastic cover behind the rear view mirror to expose the Forward Facing Camera (TODO Image)
- Get in the car, close the doors, make sure the car is turned OFF and wait for at least 3 minutes for the car to COMPLETELY shut down. Don’t touch anything!
- There is a white retainer clip on the top of the connector going into the camera – slide / pull this out. (It does not come off, just slides out maybe 1/4 inch)
- Press down on the top of the connect and squeeze, wiggle / pull the connector out of the camera.
- Plug the Male socket on your Giraffe into the Vehicle-side connector
- Plug the female connector on your Giraffe into the Camera
- Plug the Male OBD-II connector on you giraffe inte the vehicle’s OBD-II port
- Plug the Panda into the female OBD-II port and hang it over top of the rearview mirror (TODO: Image)
- Plug the Panda into the EON
- Pray we didn’t make any mistakes
This current configuration will disable the forward facing camera entirely if OP is not active. When we either build a proper giraffe (or harness for the Panda Black) there should be an option to bypass OP.
When you start the vehicle the EON should wake up and say something along the lines of “keep your eyes on the road.” If it says “Unsupported car,” please get on the comma.ai discord group in the GM channel for assistance – your car may have a different fingerprint we can add.
Speed (Longitudinal) control is not yet possible!
It is recommended to disable the LKAS while using OP. The system automatically passes through the stock LKAS when OP is not engaged so you are not losing any functionality. (Note: this does not work at the moment)
Get up to your desired speed and activate the cruise control.
Press the cruise control Set or Resume button to activate OpenPilot. If everything works and you are lucky, the EON will have a green border and will start steering the car.
Congratulations! You Bolt is now steering itself…
For a while. There is an issue that the Power Steering Control Module will fault seemingly at random. When this happens neither OP nor the stock LKAS will function until you have shut down the car completely (ie turn it off and wait 5 minutes)
We are actively working on diagnosing the PSCM issue.
We are also working on implementing automatic braking – when complete the car will slow down when you get too close to the car in front of you, but the cruise control will disengage and you will have to manually resume.
Finally we are working on implementing a gas pedal interceptor to enable full adaptive cruise control using OP’s camera.
If you have any questions or need any assistance, please visit the comma.ai Discord group‘s GM channel.
For those of us who are clueless, why don't you summarize what OpenPilot is. Is it a camera? Is it a navigation app? And what is your video showing … I don't know what I'm supposed to be seeing here.Found this today. Wasn't able to find any additional info online...
Edit: Above was a bit ambiguous. I was familiar with OpenPilot in general: I meant I wasn't able to find any info on how to hook this up on the Bolt.
Assuming this comment is key as when you go to the linked web site and put in the vehicle info this is what comes up**Note, I'm told at present you cannot use the Comma2 with GM cars, you need an "EON Devkit" - these are somewhat sparse but can be found under the #For-Sale thread in Discord.
The EON Devkit was cheaper and seems capable but I will ask what it will take to support Comma2 and if anyone is working on that.