Chevy Bolt OBD2 PIDs Project
Are you a gearhead who loves data? OBD-II PIDs are “on-board diagnostics parameter IDs”, where we can pull very low level data and statistics from the car to create custom dashboards that we can see on our phones/tablets, and log for future reference. Here is a list of known (and some unknown) valid OBD-II PIDs for the Chevrolet Bolt, useful for creating custom dashboards, preemptive monitoring, monitoring a lot more energy details, logging, and more!
Read this whole update first please.
The December 2020 update extends the set of known PIDs from ~60 to ~240 (excluding the 96 cell voltage ones and the duplicated fahrenheit ones). I have also added fahrenheit ones for EngineLink users (Torque will auto-convert units). In order to better arrange and use this vastly extended list, the names of many of them have been harmonized. Unfortunately, as a result, you should clear before importing the new list, otherwise the two lists will merge with a lot of duplicates and be messy. This will result in your dashboards having a lot of Missing PID errors. So please take screenshots of your dashboards first, and you will need to recreate them. I’m sorry, but I felt that the inconvenience of needing to recreate the dashboards would pale in comparison to the extensive increase in PIDs and having them better organized. I would like to share common dashboards, so please let me know if you’d like to share yours!
As you can imagine with quadrupling the list, there are a lot of new interesting ones, and I’ve grouped them together much better than before. Of particular note, DCFC requested current, all HVAC details, all pump details, cooling fan, a lot more pack/module/cell ones (SoC variation, battery resistance, high/low voltages, etc), more high resolution currents and voltages, a pile more charging related ones, a bunch more temperature sensors, and transmissions ones including torques. Warning – those torques need to be validated and some are currently incorrect! I will test these next week, but I didn’t want to hold up the list release. All items in the spreadsheet (not CSV) have updated dates, so you can see which ones are new.
I have added a ‘-‘ prefix section to PIDs that aren’t as interesting, but that we know what they are. Of particular note here are the Phase U,V,W currents. At first I was really excited, but quickly realized they’re useless. These currents will swing from 0 to quite +ve or -ve thousands of times a second, so the readings are just all over the place. There’s also apparently sensors to see how much pressure is applied to the shifter in X and Y directions. Two buttons for the side shift button on the sensor, and you can get voltage readouts for each one. Want to know the history of why one-pedal driving was disabled, or why the contactors were opened? Now you can! Whoo! Useless data…
The ? prefix is more extensive now and covers items that I know what they are but may be broken, or unsure of the formula. The google spreadsheet has a notes column with a lot of commentary on all the PIDs, especially what I’ve noticed with the unknown ones. Perhaps we can work together to decipher these. Note that some PIDs are actually broken – even GDS2 gives bad data for them.
I know that a lot of the short names are too long. I need to work at figuring out really short versions of them, but again, didn’t want to hold up the list release.
I am tempted to duplicate all the ! ones as * ones as well, again for ease of use, but that’s less critical. I may need to modify the script that produces the CSV to do that.
Expect more updates later this month.
(the shared google doc sheet is linked under “about this project” section at the bottom)
Please feel free to poke around the rest of my site while you’re here!
- Read everything on this page! No, really, READ EVERYTHING.
- Get an OBD2 adapter and app (see below)
- Download the CSV directly to your phone containing the PIDs – do not view or open in excel
- Import into your app (See below for instructions).
- Customize your dashboard and logging as you desire! (share your dashboards with us!)
- Download CSV from link below
- If you imported the PIDs before the Dec 2020 update, clear all PIDs
- Open Torque, and take screenshots of all of your displays. Unfortunately you will need to recreate many of them.
- main menu (sprocket in bottom left corner), Settings, Manage extra PIDs/Sensors
- Upper right corner … clear list
- Use Astro File Manager (or any file management app) and find the CSV file that you downloaded.
- Select or long press, find the share option and click it. This may be in a context menu or a share button up top.
- Torque should show up in the list of targets to share to – select it and you’re done!
- Use Astro File Manager (or any file management app that can show hidden directories)
- Go to the downloaded CSV and copy it
- Navigate to /internal storage/ (could be /sdcard/ or any number of options)
- Navigate to .torque (this is a hidden directory)
- Navigate to extendedpids (if this directory doesn’t exist, either create it, or do steps 3,4 and return here)
- You should be in /internal storage/.torque/extendedpids/
- Paste the CSV file there
- Open Torque, main menu (sprocket in bottom left corner), Settings, Manage extra PIDs/Sensors
- Note that you may need to clear set first (especially if you imported before the Dec 2020 update)
- Upper right menu, add predefined set, and the CSV file should be one of them
- Back one menu to Data Logging & Upload
- Select what to log
- Choose everything with ! and whatever else you’d like
- Back up one menu, enable “Log when Torque is started” and “Only when OBD connected”
- Enable “Synchronous logging”
- Your choice on “Rotate logfiles” – rotating has one file per trip. This can be onerous if you take a lot of trips.
- Customize your dashboard as you desire 😀
- From the real time information screen, keep swiping from the right to get to an empty page
- If no empty page, go to the top level menu, general preferences, number of dashboard screens, increase
- Back on your dashboard screen, sprocket in bottom left, layout settings, toggle edit layout mode
- Now every time you touch the screen, adds a new display element.
- Select what to add and type of display!
- You will likely want to change the number of decimal places for several digital display items. For cell voltages, you’ll want 3 decimal places. Currents and Voltages you can put 1 or 2, SoC Raw you’ll want 3. Most others you’ll actually want 0 (such as temperatures, RPMs, wattages, etc.
- To do this, long-press on a display, select Display Configuration, and then Number of Decimal places.
- Read the instructions that came with the adapter! Most require you to pair through the app, and not through iOS bluetooth menu.
- Make sure that inside EngineLink you select the correct adapter type. The LELink adapter should choose LELink, Carista should choose Carista, and all others should choose Viecar as the connection type.
- Download CSV from link below.
- Connect your iPhone or iPad to your computer
- Open iTunes
- Click the icon on for your phone/iPad
- From the menu on the left, select “File Sharing” (old version was “Apps”)
- Click on EngineLink in the list under the Apps column
- Open Finder on Mac
- Click on your iPhone in the Locations section of the sidebar.
- Click on the Files Tab at the top of the screen.
- Expand EngineLink in the list under the Name column
- Drag your csv document onto the Documents area, or click the Add “File” button at the bottom of the Documents list, then select your csv file
- On your phone/iPad, open EngineLink
- Scroll over to a blank space on the dashboard, then long press
- Choose a display type (e.g. small digital)
- Click Edit in the upper right corner
- Click Load PIDs in the upper right corner
- Scroll all the way to the bottom, and your custom file should be listed at the bottom. Select your new file.
- Now, you can select a PID from your new file to add to your dashboard!
The !?*+- prefixes are so that they are distinguished from the scanner-built-in codes, and to affect sort order, so that things are grouped together usefully.
! are the most important PIDs, easiest to add and log this way
* are the remaining interesting set
? are the unknowns, could be entirely unknown (bottom section), or ones that I think are close
+ are the Battery Cell voltages
– are the ones which aren’t as interesting
Please ensure that you have read all directions and installed all necessary apps before downloading the CSV.
Also, please consider uploading your data to me to collect! See below for this.
When you download, make sure to long-press and save so that it doesn’t open in anything. In Safari you can long-press and select the “Download linked file” option at the bottom. In Chrome (Android), long-press and select “Download link”. Ironically Chrome on iPhone doesn’t seem to allow this.
The full Google Sheet is also available with notes and timestamps – don’t use this one for import though.
How You Can Help
We are still trying to determine as much as possible about the PIDs of the Bolt!
If you are on Android with Torque, please consider uploading your data to our site. The volume is very low (5-10MB/hour) and I will be building out the ability to view logs on my site as well as live data… eventually maybe.
In Torque, from the main screen:
- Bottom left sprocket icon
- Data Logging & Upload
- Scroll down to Realtime web upload
- Enable Upload to webserver
- Web Logging Interval: set to every 5 seconds
- Enable Only when OBD connected
- Webserver URL: http://allev.info/torque/upload_data.php
- User email address: please set this to your email
Also would help:
- On the main screen, bottom left sprocket icon
- Vehicle Profile
- Edit the one for your car
- Make sure that you have a unique profile name, like the name of your car
- Optional: set weight to ~1680kg or ~3700lbs, vehicle type CUV
- You can enable advanced options, and set drag coefficient to 0.308
Thank you in advance!