Skip to content
/ docs Public

Unofficial documentation of unofficial fixes and tweaks to comma and unofficial openpilot hardware

License

Notifications You must be signed in to change notification settings

ophwug/docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Unofficial documentation of unofficial fixes and tweaks to comma and unofficial openpilot hardware

The comma.ai Discord isn't really a good place to store answers or guidance to questions about repairing and maintaining the hardware. Discord's search is terrible, and the content inside of it isn't accessible to search engines. This is an attempt to document some of the common issues and fixes that were discussed in the Discord onto the public internet so that they can be found by search engines.

This document is a bit long, you may want to put the URL of this document into your 🤖 AI assistant of choice, such as ChatGPT, Claude, or Gemini to ask it questions about the contents of this document.

image

This document may also include links to other non-comma.ai Discords as well.

The format of this document is of a case-by-case basis. Please feel free to add your own cases, pull requests, and solutions.

This is not an official document and is not endorsed by comma.ai. However, it is supported by users and readers like you so please do feel free to make suggestions and submit pull requests!

Also, please do report back if the remedies work or don't work. Discord, GitHub issues, etc. This is a living document!

Be aware Amazon links are Amazon Affiliate links. If you buy something through them, I may get a small commission at no extra cost to you. This helps support purchasing some of the supplies, services, and tools to document these cases.

Table of Contents

Discords and Discussions of Note

There will be links to Discord conversations.

You must join the server with an invite linked for links to channels to work.

This document is generally discussed here and there in #hw-three-3x. However, you're welcome to just make issues and discuss in the GitHub issues of this repository too.

General Notes

  • Always install stock or comma openpilot first to make sure the issue is not software related as a starting point.
    • comma.ai support will not help you if you are not running stock or comma openpilot.
    • The comma Discord (outside of #custom-forks) will only support comma openpilot.
    • If you can't install stock or comma openpilot (like for vehicle support reasons), talk in #custom-forks or visit your fork's Discord and discuss the issue.
  • If your device is under warranty, you should contact comma.ai support first.
  • If your C3X is out of warranty, the rough cost to repair from comma is $500.
    • Unfortunately there is no warranty for the repair.
    • However, search rifkers in this doc under The Blown Fuse Case and apparently they were able to get an extended warranty from their Chase Sapphired Preferred card. YMMV.
  • They do not repair the C3 anymore. They only offer a trade-in program for C3 to get a C3X for $750.
  • A lot of the information in this document is based on user experience and may not be accurate.
  • Mobile Repair, Video Game hardware repair shops, PCB electronics repair places, and other similar operations may be able to help with hardware repairs. Your mileage may vary and to be honest, these devices aren't common but with specific instructions, they might be amenable to helping you out.
  • Unplug and power down the device for 30 minutes before assessing if the issue is persistent.
  • Even if you plan to contract out the repair, you should own a multimeter. They're so handy not just for this but also other home improvement and domestic projects.
  • Make sure the issue is not with your vehicle. Disconnect and reconnect all vehicle connectors back to stock to make sure your vehicle is still operating properly.
  • If you're disassembling something yourself, make sure to have a good clean workspace to keep track of all parts you take apart and to be able to put everything back together without missing pieces. This may mean screw mats and small containers.

Preventative and Recommended Measures

You don't need to do all these things, but they may help extend the life of your device or preserve access.

The comma devices are not invincible. They follow the bathtub curve of failure, just like humans and everything else in life.

Bathtub

On a long enough timeline, all devices will fail.

  • Have a way remove the device from the car when not in use or in high heat.
    • Stock comma hardware is not designed to be removed often as it is meant to be a permanent installation. Removing the device may cause wear to the OBD-C (USB-like) cable in particular.
    • Use a magnetic or quick-remove mount if you want to remove the device often.
  • When removing the device, be careful with the OBD-C cable. In addition to being physically careful with it, hiding it, including the tip from the sun's damaging rays will also help prolong its life.
  • When removing the device, be careful with the OBD-C port. It is a weak point in the design and can be damaged if you are not careful. This far harder to fix than the OBD-C cable. Look into magnetic mounts to minimize the wear on the OBD-C port.
  • SSH in and backup the contents of /persist/comma/id_rsa.
  • Do not use magnetic cable adapters. Use purpose-built magnetic or quick release mounts as OBD-C is far more sensitive to pins connecting to the wrong thing than USB-C.

Hardware Documentation

Official Hardware Documentation

comma.ai keeps public documentation of some of their hardware at https://github.com/commaai/hardware/ .

A non-exhaustive list of stuff there:

Reverse Engineered Community Clones and Alternative Hardware Documentation

This is not official documentation but they may be close enough for reference.

Taxonomy

Just a small incomplete bit of small local documentation on the taxonomy of comma devices, clones, and hardware.

Please refer to their respective documentation for more details.

comma.ai Harness

Harness V3 with relay box, harness cable, and comma power (Shipping since ~June 2024):

Image

Harness V1 with Box that has physical relays (you'll hear clicks under normal operation), the harness cable, and comma power:

Image

Image

Image

Visually and physically, the Harness V1 and V3 are very different. The Harness V3 relay box has a molded non-3D printed enclosure, the relay box itself is much smaller, the harness connector port connecting to the relay/harness box is smaller and thinner, and the comma power portion does not use a CAT6 or Ethernet cable to connect to OBD-2 port. V3 is generally smaller overall. V3 relay box is also solid state and does not have physical relays which helps resist The Bad Car Harness Case.

Harness V1 car harnesses are not compatible with Harness V3 and vice versa. They share the same OBD-C cable and port as an output though.

The comma two is only compatible with the Harness V1. Both Harness V1 and Harness V3 are compatible with the older comma three and newer comma threex devices. Be aware that old versions of openpilot on a comma three device may not work with the Harness V3 as they require Harness V1's comma power, so you should always use the latest openpilot version.

If you're switching vehicles or replacing parts of your car harness portion and if you're a Harness V1 user, you will need to replace the entire Harness V1 with a Harness V3 if you're buying from comma.ai's shop. This is because comma.ai does not sell Harness V1 hardware anymore. Unfortunately, they do not make this explicitly clear on their shop, so you will have to trust this document on this. If you have a more common brand, you may be able to find a Harness V1-compatible car harness from third-party vendors such as Mr. One or Konik.ai.

Note that the vehicle harnesses part after the relay box may look very different for certain vehicles from the pretty shots above, particularly those that intercept at a location other than the camera. They are much longer or can even look like a comma power.

Please see https://github.com/commaai/hardware/ for more details on the harnesses.

Common to all comma devices

The Bad OBD-C Cable Case

OBD-C is a comma.ai standard that uses a OBD-C cable between the comma harness box and the comma device. comma produces, ships, and sells a OBD-C cable but select and many USB-C cables are electrically and physically compatible and can be used in its place.

Preventative Measures:

  • Use a magnetic or quick-release mount to minimize the mechanical wear of the OBD-C cable.

Symptoms:

  • The device does not go into "on-road" mode. It is stuck at the home screen.
    • According to the standard, the IGN line comes out as a combination of SBU1 and SBU2 and one or both isn't making its way through the OBD-C cable properly.
  • You substituted a random USB-C cable from your cable collection (e.g., because the original cable was missing or broken) and the device shows "Vehicle Online" but never transitions to "on-road" mode.
  • You get random errors in openpilot such as, but not limited to:
    • "Car Unrecognized"
    • "CAN Bus Error"
    • "CAN Bus Disconnected"
  • The cable has visible damage such as cracking.
  • The cable has invisible damage such as missing wires or broken wires when viewed with a USB-C cable tester.
    • You must test with a simple USB-C cable tester for this. No exceptions.
  • Power issues are usually not a Bad OBD-C Cable Case, as the cable has 4 redundant pairs of lines and wires for power and ground. While of course some pairs could be broken, that cable can probably still be considered relatively good and usable. If the device is not powering on though, it is likely a Blown Fuse Case.
    • Blown Fuse Case may not be related or is coincidental from wear due to this (See The Blown Fuse Case for more details)
  • Car fuse is blown. While it's great there are 4 redundant pairs of lines and wires for power and ground, there is a flip side in that there is also an increased chance for these to get shorted. You'll need to use a multimeter with the pads exposed by the tester to check for crossed wires.

Check the OBD-C cable for visible and invisible damage. In the image below, TX2+ of USB-C is CAN2_H in OBD-C and is broken. The cable otherwise looks fine externally.

PXL_20250625_151254911 MP

Here is a video demonstration of damage, courtesy of Nabeel and note that Nabeel's case only manifested itself when the cable is shifted a bit and in a vehicle, that is very common:

https://www.youtube.com/watch?v=2NPTUW2f6Os

This image below, from a cable donated by adenta, has a cable that is cracking in the exterior, but all necessary wires are connected. For diagnosis, you must test with a simple USB-C cable tester.

PXL_20250625_062251389

OBD-C Cable Pinout: https://github.com/commaai/hardware/blob/master/harness/OBD-C.sch.pdf

Nearly all pins are expected to be connected. Sometimes people use a cable from their own collection but if it does not work, it is usually due to missing wires/pins. There is not much redundancy for data lines in the OBD-C cable, so if it is partially damaged or incomplete, the comma device will not work properly. The lines are also rather small and thin. USB-C is more tolerant and might even downgrade successfully, OBD-C is less tolerant and cannot.

Simple and cheap USB-C Cable Testers (no smarts, just pin testing, and heed the warnings on it to never plug it into a real device):

Resolution:

  • A quick and dirty solution is to flip the OBD-C cable. This might not be permanent, but it may help you get the device working again. Of course, depending on what is and how it is broken, this may not be sufficient.
  • If the OBD-C cable is damaged, replace it with a new one. The OBD-C cable used for comma three devices is unique with a long angled neck so that the cable is able to plugged into the recessed port of the comma three devices. For best fit and to not obstruct the cameras, you should use a cable that is specifically designed for the comma three devices.
    • If you can't find a replacement OBD-C cable, but need one in a pinch very quickly you can use a USB 3.1 Gen 2 cable or higher (Thunderbolt 3 or 4) as a substitute. These can be found at big box stores or online. They do not have an angled neck so order one from comma or Mr. One in the meantime.
    • It is possible to get use a set of angled adapters with existing cables: https://amzn.to/3TcV389
  • If your installation of the OBD-C cable is pinched, use a USB 3.1 Gen 2 extension cable so it can be routed in a way that is not pinched under the cover.
  • If you are removing the device often, consider using a purpose-built magnetic or quick-release mount to minimize the mechanical wear of the OBD-C cabling. See #hw-unofficial on the comma.ai Discord
  • If the cable is good from testing with a USB-C cable tester, check out The Bad Car Harness Case and The Bad OBD-C Port Case as the issue may be with the car harness.

Vendors:

Examples:

The Bad OBD-C Port Case

This case is much worse than the above and an easy and/or reliable resolution is not really available. It's documented here for completeness. If you've got the skills and have ruled out The Bad OBD-C Cable Case and/or The Bad Car Harness Case, you may want to look at this, but I don't blame you if you give up here.

Preventative Measures:

  • Use a magnetic or quick-release mount to minimize the mechanical wear of the OBD-C port.

Symptoms:

The symptoms are in general very similar to the Bad OBD-C Cable Case but the issue is not with the cable but with the OBD-C port itself.

  • The OBD-C port is physically damaged.
  • You've ruled out the Bad OBD-C Cable Case and The Bad Car Harness Case.
  • The device does not go into "on-road" mode. It is stuck at the home screen.
  • You get random errors in openpilot such as, but not limited to:
    • "Car Unrecognized"
    • "CAN Bus Error"
    • "CAN Bus Disconnected"

Resolution:

If you know how, you know how.

Unfortunately, there seems to be an anecdote about how a reflow only buys a little bit of time.

Examples:

Cases seem to be rare and follow ups haven't been said publiclly. If you have a case that you would like to add, please do so in a pull request or issue.

Resources:

The Bad Car Harness Case

Your comma device connects to your vehicle via a comma.ai harness via the OBD-C cable.

Unfortunately, the harness may go bad, especially on V1 harnesses which use physical relays in the relay box.

Please see the local taxonomy section on the comma.ai harness for identifying the harness you have.

Symptoms:

  • The OBD-C cable is known to be good and/or has been recently replaced. In other words, The Bad OBD-C Cable Case has been ruled out. Please do this first.
  • You get random errors in openpilot such as, but not limited to:
    • "Car Unrecognized"
    • "CAN Bus Error"
    • "CAN Bus Disconnected"
  • You hear unusual noises from the relay box or harness area. Of course, what is "unusual" can vary. Working V1 harnesses will click when the device is powered on and off, but if you hear a constant clicking or buzzing, that is not normal.

Resolution:

  • The below steps are a bit on the economical in hardware side, and you are welcome to just skip forward and just simply get a complete car harness from comma and swap it out for testing if time is of the essence. At worst, you're out the cost of shipping back the hardware (~$10 in US) if it is not the issue.
  • Rule out the Bad OBD-C Cable Case. It is easy and cheap to do.
  • Identify what harness revision you have: V1 or V3.
  • Using a multimeter's continuity test, check your vehicle-specific harness connector's pinout with https://github.com/commaai/hardware/tree/master/harness
  • Harness V1: After testing that the vehicle specific harness connector is good, the only current real way to test it is to purchase a complete car harness from comma and swap it out. You can return the new hardware if this is not the issue.
    • Unfortunately, comma does not sell V1 harness hardware anymore, so you will have to try/buy a complete Harness V3 car harness for this resolution.
  • Harness V3: After testing that the vehicle specific harness connector is good, the only current real way to test it is to purchase a new harness relay box from comma and swap it out. You can return the new hardware if it is not the issue.
  • Test the new harness with your vehicle.

Hopefully that is the issue and it is resolved.

Examples:

The Running Too Old Of An OS Case

comma.ai will only support the latest "release", "nightly", and specific WIP branches of comma openpilot on their hardware. And those branches will cause a recent or newest OS to be installed on the device.

From time to time, comma.ai will "evolve" the hardware for reliability, supply chain, cost reduction, and other reasons. This means that the hardware may not be compatible with older versions of openpilot and the OS. In advance of this, they will update their OS and their openpilot branches to support the new hardware.

By their nature, forks, old branches, and even YouTube instructions for installing openpilot or its various forks may lag behind the latest OS and openpilot version for their base.

Unfortunately, comma does not provide a way for installation to detect and block installation of an incompatible OS or openpilot version. Their view is that you are an advanced user and should know what you are doing. Also unfortunate is the amount of documentation and instructions that are out there that are not up to date, or can't be up to date, or how accessible YouTube videos are but are still out of date. Oh well, the world is not perfect.

Symptoms:

These can be very varied since by its nature, it's very undefined and this is incomplete.

  • You just got your device "repaired" by comma.ai. They actualy really just ship you a newly constructed device.
  • Run a few minutes, and then the screen will freeze and then the device will reset.
    • e.g. Wi-Fi driver out of date
  • The screen is completely visible and a good brightness and other times the brightness is super dark and the screen is barely visible.
    • e.g. Sensor driver out of date
  • The device overheats.
    • e.g. Fan control driver out of date

Resolution:

You must run an openpilot codebase that installs a compatible OS.

  • Uninstall by tapping the screen madly on boot and selecting "Uninstall".
  • If you can't do that, go through The OS is Messed Up Case.
  • Install the latest comma openpilot.
  • If you must use a fork, see the tip below.

Tip

Current Known Status of Some Popular Forks:

Last Update: July 2025

This is a living document, please check in with their communities for the latest status and if you can, help update this section.

  • sunnypilot - Do not install release-c3, install staging-c3-new.
  • frogpilot - Should be fine. They've backported OS changes to their fork's OS.
  • Be mindful of YouTube videos and instructions that are not up to date. It is impossible to update YouTube videos.
  • Last but not least, for fork users, you need to consult your fork's written documentation. YouTube videos or alternative instructions may not be up to date and may not work with the latest OS or openpilot version. They may still be a great supplement to the written documentation though.

Examples:

  • Magnetar's C3X
    • "I've already tried to factory reset and reinstalling and everything. It'll work fine for sometimes a few seconds up to about 5 minutes. Then the screen will freeze for a few seconds and I'll get the reboot with the comma symbol "
  • /u/Unable-Grape2361's C3X
    • "Unfortunately, the replacement unit has been plagued by overheating problems that never occurred with the original."

Common to all comma two family devices

The comma two family is the second generation of comma's hardware, and it is based upon a modified Leeco Le Pro 3 with the battery removed, thermal solution filled in, front camera replaced with IR-filter-less variants and an integrated comma panda PCB providing supporting CAN communication, fan support, and providing supporting hardware/software hacks to trick the phone hardware such as battery emulation and bootkick.

Note

If you're starting out in this community, you should get a comma three or similar device as the communities around openpilot have moved on to the comma three family of devices for ongoing support and current development.

Note

Unfortunately, this section needs to be written. If you have any cases that you would like to add, please do so in a pull request or issue. For now, you'll have to search the #hw-two-eon channel on comma's Discord

The Can't Proceed To Installation Because Wi-Fi Can't Connect To Internet Case On My comma two Case

Image

Symptoms:

  • After setting up Wi-Fi on the comma two device, it fails to connect to the internet and its blocked from proceeding.

Resolution:

Common to all comma three family devices

The comma three family is the third generation of comma's hardware, and it is the first generation to be designed from the ground up by comma.ai.

The Build Error On Boot Case

Symptoms:

  • You get some sort of build error on boot.

Image

Resolution:

This can happen on comma's branches or forks. Try resetting by tapping the screen madly on boot and selecting "Reset". Reinstall openpilot.

The OS is Messed Up Case

Symptoms:

  • The device does not seem to boot or gets stuck for whatever reason.
  • Tapping the screen madly on boot and selecting "Reset" does not get the device back to factory state.

Resolution:

Reflash with https://flash.comma.ai/.

https://flash.comma.ai may not work sometimes. In that case, try using this Windows-specific and Qualcomm software alternative from Mr. One, a C3 clone maker:

https://mr-one.cn/?post=24

Archive: https://web.archive.org/web/20250520040523/https://mr-one.cn/?post=24

The Blown Fuse Case

Symptoms:

  • Device does not power on when connected
  • Device does not stay on
  • The self-resetting fuse's resistance is stuck high. (e.g. 0.3-43 ohms, when it should be about 0.02 ohms at most from the datasheet(s)). Note that 0.3 ohms is just a value seen in some problematic devices; technically, anything above 0.02 ohms is out of spec.
  • With a heat gun applied to the fuses, the resistance gets elevated to bad levels.
  • (V1 harness) relay box sounds like a maraca when shaken on failed boot.
  • There is a large voltage drop across the fuse when powered on. (See dazoe's case below for more details.)
  • Blue light in the back may still blink.

Diagnosis:

The component we're looking at should be able to self-reset but for whatever reason, it doesn't.

It is located near the OBD-C port and next to the SOM. In the image below, it is circled in green.

It may be underneath a heatsink which you will need to remove.

Blown Fuse circled

Image courtesy of posterduck.

Known variants of the fuse to exist:

There may also be other fuses like this nearby, not just that circled green one such as the blue and red ones. You can replace those too if you'll like but that really only the green one probably needs to be replaced. The rest should probably left as-is though one is welcome to measure those too.

Warning

A visual inspection of the fuse is not sufficient for diagnosis. You must use a multimeter to measure the resistance of the fuse to determine if it is blown.

Tip

Measuring Fuse Resistance with a Multimeter

You do NOT need to desolder the fuse for testing. This diagnosis can be performed by anyone with basic multimeter skills.

For those new to using a multimeter, here's how to check a fuse:

  1. Set your multimeter: Turn the dial to the resistance setting (often marked with the Omega symbol: Ω). It is critical to select the lowest possible resistance range (e.g., 200 Ω) to measure the small decimal values of a good fuse. If your multimeter is not auto-ranging and the range is set too high, you may see a reading of "0" even on a good fuse.
  2. Measure lead resistance: Before testing the fuse, touch the tips of your multimeter probes firmly together. The multimeter should display a very low resistance value (e.g., 0.1-0.5 Ω). This is the internal resistance of your multimeter and leads. Note this value down. Most multimeters will beep when you do this.
  3. Power off the device: Ensure that the device is completely powered off and disconnected to avoid inaccurate readings or damage.
  4. Measure the fuse: Touch one probe to each end of the fuse while it is still mounted on the board (in-circuit measurement).
  5. Interpret the reading:
    • Good Fuse: The multimeter will show a very low resistance, ideally very close to the lead resistance you measured in step 2. If your multimeter beeped in step 2, it should also beep now.
    • Blown Fuse: The multimeter will show a high resistance (e.g., 0.3-43 Ω) or an open circuit (OL or ∞), indicating the fuse is blown.
  6. Measure the new fuse: Before disassembling the device and replacing the fuse, measure the new one to make sure it works.

Remember to subtract the lead resistance (from step 2) from the fuse reading for the most accurate measurement of the fuse itself.

Advanced Diagnosis Notes: These instructions may not cover all fuse issues, such as those that might fail only if temperature is elevated or under load. Please look at dazoe's case in the Examples section below for some details. Diagnosing dazoe's C3 was a bit more involved than just measuring the fuse resistance and required more advanced and more dangerous techniques. While this diagnosis can be performed by anyone with basic multimeter skills, actual fuse replacement may require professional help, but can be done in a couple hours DIY with some electronics experience and the correct tools (see below).

Resolution:

To fix this issue, you will need to replace the blown self-resetting fuse with a new one. You can contact a repair service or attempt a DIY repair if you have the necessary skills and tools.

Repair Services:

  • Drago, $99
  • Somebody local who can do board level repair can follow the instructions in DIY Repair below. YMMV on cost.

DIY Repair:

If you're comfortable with soldering, you can replace the fuse yourself.

Look for replacement fuses at trustworthy electronic vendors such as Mouser, Digi-Key, or Newark. Buy a bunch of them as shipping is the real cost.

Required Tools:

  • Multimeter to read resistance
  • 1.3mm and 1.5mm allen bits/keys
  • Soldering iron (with very fine tip) + leaded solder
  • Desoldering wick (with flux)
  • Fine-point tweezers
  • Possibly small cutters if the old fuse doesn't come off easily
  • At least two replacement fuses (for when you destroy the first). See the Vendors section below.

Step 1: Disassembly

Tip

Take photos at every step! Before disconnecting anything, take clear photos of how connectors are positioned, where wires are routed, and the overall layout. These reference photos will be invaluable during reassembly to ensure everything goes back exactly where it belongs.

  1. Remove connectors for easier access: Unplug the GPS antenna U.FL connector, GPS JST connector, fan plug, and the other U.FL connector under the heat sink to completely remove the heat sink. This makes everything much easier to access. They should all re-connect pretty easily.

  2. Handle screws carefully: Be careful with the 1.3mm hex screws for the GPS mount. Use a bit of pressure to properly seat the screwdriver bit before unscrewing to avoid stripping. Apply firm downward pressure while turning.

  3. Remove heat sink: Once all connectors are unplugged, the heat sink can be fully removed for better access to the fuse area.

Step 2: Fuse Replacement

Warning

Handle replacement fuses carefully: If using tweezers to seat the fuse, don't push too hard - they crush pretty easily.

  1. Prepare for desoldering: Desoldering wick with flux is a must-have tool. Add a small bit of fresh solder to each side of the old fuse first, then wick it off. This helps with heat transfer and removal.

  2. Remove old fuse: Even with proper preparation, the old fuse may not come off very easily. In some cases, the top half comes off first, requiring you to carefully scrape the bottom part off with small snips or cutters.

  3. Clean the pads: Make sure to add a small amount of solder to the pads once the old fuse is completely removed (just enough to tin them, not a blob), and ensure all remnants of the old fuse are gone. This makes soldering the new fuse much easier.

  4. Install new fuse: Carefully position the new fuse and solder in place. If pressing down on the fuse to hold it in place, be very gentle to avoid crushing it.

Step 3: Reassembly

Warning

Critical reassembly steps: Missing any of these steps will cause mounting issues or overheating.

  1. Don't forget the plastic plate: There's a plastic plate that goes between the chips and the heat sink. If you forget this, the heat sink will not mount correctly and you'll need to disassemble everything again.

  2. Apply thermal paste:

    • Clean old thermal paste off with a microfiber cloth (not paper towel!) and rubbing alcohol
    • Apply new thermal paste - it's better to use slightly more rather than too little since this device needs all the cooling help it can get
  3. Handle the RF shield carefully: The RF shield (little metal box connected with foil tape) underneath the GPS mount can be finicky. Be gentle and patient when clipping it back in place. Some clips may need to be slightly re-bent if they've deformed.

  4. Route the U.FL wire correctly: When reassembling, make sure to run the other U.FL wire (that goes to the PCB mounted to the heat sink) around the heat sink, not underneath it. There's a small notch in the plastic plate where it should be routed. If run underneath, the heat sink won't mount properly.

  5. Connect the middle U.FL connector: This "other U.FL wire" connects to the middle U.FL connector on the board under the heat sink. Look for an arrow marking on the board indicating the correct connector.

Additional Photos:

Resources:

Examples:

The Screen Doesn't Work or is Dying Case

Symptoms:

  • openpilot still engages
  • The screen does not turn on
  • purple splotches on the screen
  • Screen burn-in

Non-Symptoms:

Image

Resolution:

First, make sure to try to reseat the connection for the screen. If that does not work, you will need to replace the screen.

Inspect the MOSFETs around for any signs of failure. See The Burned MOSFET Case.

Konik.ai has a screen replacement guide for their devices which should be similar for the C3X: https://www.youtube.com/watch?v=ieyz4pxaHxU

The high level instruction is still the same for any device, not even just the C3/C3X. You unscrew everything and try to make sure you don't damage the cables.

  • If replacing with an official comma.ai screen, make sure you take and archive the picture of the QR code sticker as it has color calibration data on it.
  • Comma.ai does not sell replacement screens with case for the C3. Buy a bare screen from them or a third party and have a mobile repair shop replace the existing screen.
  • The replacement options with the "front case" options don't need mobile repair shop help or similar experience as it is a glue-less repair experience.
  • Without "front case", "can be placed with B7000 glue onto the frame" (quote from Konik.ai).
  • You may want to check out The Screen Colors Are Really Off Case as well.

Vendors:

Examples:

The Fan Death Case

Symptoms:

  • The device overheats
  • The fan makes horrible noises
  • The fan does not spin

Not the Korean kind of fan death!

Resolution:

Comma unfortunately does not sell replacement fans by themselves. Users have been replacing them with various fans to differing success. OEM part may be from ADDA, not sure if off the shelf. Mr. One sells a replacement fan with heatsink for the C3.

See also: The Uncleaned Fan Flux Case

Examples:

Vendors:

Reference:

The Uncleaned Fan Flux Case

Symptoms:

  • The fan has inconsistent speed, even when set to a fixed level.
  • The fan's RPM reading is 0 in panda scripts.
  • Disconnecting the fan's blue speed control wire does not cause it to run at maximum speed; it continues to oscillate.

"flux not cleaned on fan pins of comma three rev I - 08/31/21"

flux

Resolution:

After cleaning the flux from the fan pins, the fan should operate correctly.

See also: The Fan Death Case

Examples:

The Poor GPS Signal Case

Symptoms:

  • The device has an alert about poor GPS signal
  • The device seems to not be able to locate itself well on comma connect
  • Environmental Conditions:
    • A magnetic mount is used.
    • The car's windshield is heated.

Resolution:

There are multiple solutions to this problem.

  • Newer openpilot does not care about GPS being an alertable requirement. commaai/openpilot#35585
    • Update to a codebase that has this change.
    • This will still result in wonky map behavior recorded in comma connect but it will not cause an ongoing alert.
  • Hardware issues:
    • Check the GPS antenna connections internally.
    • Make sure the GPS module has power connections.
  • Heated windshields can cause issues with GPS reception.
    • It has not been explored, but there are GPS repeaters that can be used to help with this. Please report if you have success with this.

Examples:

  • Nabeel's C3
    • "I discovered why GPS wasn't working in my C3 after my repair… This… was sitting on my desk... That's the cable that connects the GPS module to the main board."

The Bad or Dead SOM Case

Warning

This section is a WIP and in construction

Symptoms:

  • The device does not boot.
  • The device does not power on.
  • The fuses are good. (See The Blown Fuse Case for more details.)
  • Over serial, the device TODO: fill in with examples of bad boot messages

Resolution:

Note

Fill in with instructions on how to extract keys from the old SOM. https://discord.com/channels/469524606043160576/1346999805624320084/1355086750724128929

Replace the System-On-Module (SOM) with a new one.

Flash it.

Examples:

Vendor:

The Damaged Ribbon Cable Case

Symptoms:

  • "long story short my small brain used way to long a screw to put the ssd in and I heard a crunching sound and this is what I saw"
  • small brain

IMG_1289

Resolution:

Replace the damaged ribbon cable.

Vendors:

Examples:

comma three (C3)

Released: 2021-07-31

Discontinued: 2023-10-12

comma openpilot support dropped: 2025-08-26

https://blog.comma.ai/comma-three-press-release/

The comma three is comma's first device designed from the ground up that isn't based upon a hacked-up cell phone. It was relatively expensive. It was the first with three cameras.

Variants of the comma three may include no SSD but 32GB of onboard eMMC System on Module storage, 256GB of NVME SSD storage, or 1TB of NVME SSD storage.

The only OEM SSD supported is the Samsung 980 Non-Pro SSD. Other SSDs may not work or have other weird unsupported issues; embedded devices are much more picky about SSDs than a desktop or laptop.

Evolutions:

  • Early C3 had dedicated u-blox GPS module
  • 32GB of onboard eMMC storage with no SSDs were introduced later
  • Panda was changed from an internal USB connection to a SPI connection
  • Cameras were changed from AR0231 to OS04C10 near the end of the C3's life cycle.

The dates and times of these changes are not well documented, but they are known to exist.

Resources:

The Swampy No Panda Case

Symptoms:

  • No Panda

Device was in extremely humid conditions and corrosion formed on the Panda's MCU.

Image

Resolution:

Clean the board and remove corrosion.

Examples:

The Screen Colors Are Really Off Case

Symptoms:

  • The screen has been replaced from factory.
  • The colors are off. Too blue.

Resolution:

Take a look at this thread: https://discord.com/channels/469524606043160576/1354453342000255199

There are numerous color_cal files you can install onto your C3 to fix the colors. You may also have success just trying a few different ones if you don't have an official comma.ai screen replacement.

The Burned MOSFET Case

Symptoms:

  • The screen does not power on after being replaced.
  • A burned MOSFET is visible on the board.
Image

Resolution:

Replace burned MOSFET with a new one.

Examples:

The Camera Malfunction Case (C3)

Symptoms:

  • Camera Malfunction Message with specific camera noted.

Resolution:

Replace the malfunctioning camera with a new one. Make sure it matches the other cameras's type e.g. OS04C10 or AR0231. You may be able to find a broken C3 to salvage the camera from. If you can't find a specific type, you may need to replace all cameras with the same type.

Some vendors sell replacement cameras for the C3. Make sure to get the right type of camera for your C3. They may only have one type of camera available, so you may need to replace all cameras with the same type.

Note: This is not possible or very hard to do on a C3X as the cameras are soldered onto the main board. Hence, why this case is only in the C3 section.

Examples:

Vendors:

The NVMe drive not mounted Case

Symptoms:

  • Red error message saying the NVMe drive is not mounted.

Image

Resolution:

Reseat the NVMe drive and clean the connectors with appropriate electronic contact cleaning solution.

Examples:

Resources:

comma threex (C3X)

Released: 2023-10-12

https://blog.comma.ai/comma3X/

The comma 3X is comma's first major hardware revision of the comma three. It has gone through a major cost reduction and is now cheaper to manufacture.

  • Cameras are no longer on separate boards but are now soldered onto the main board.
  • The NVMe SSD has been removed in favor of 128GB of onboard eMMC storage.
  • Speakers have been overhauled to be two speakers.
  • It is significantly lighter.
  • It uses a mount that's smaller than the comma three's mount.
  • A Red Panda is now included with the device, which now includes built-in CAN-FD support.
  • Camera changed to OX03C10

Evolutions:

The No Panda on C3X Case (Software)

Symptoms:

  • No Panda

Resolution:

Run through commaai/openpilot#33016

Note: Use the nightly branch of openpilot. master-ci is not available anymore.

Examples:

The No Panda on C3X Case (Hardware)

Symptoms:

Resolution:

Have comma openpilot installed.

Remove the SOM and reseat it.

Reboot and wait.

Was it possible that the SOM might not be seated properly?

Examples:

The Wide Camera Malfunction Case (C3X)

Symptoms:

  • "Camera Malfunction, wideRoadCamera"
  • "Camera Frame Rate Low, Reboot Your Device"

Resolution:

Unlike the The Camera Malfunction Case (C3), this is a very hard to fix issue on the C3X as the cameras are soldered onto the main board.

Your choices are limited and one of them is not great either.

Examples:

  • prabh123's C3X
    • jyoung8607's log analysis
      • "Took a look at your route. We do get an image from your ecamera, but only intermittently. If and only if you can replicate this on current upstream openpilot I would guess the actual image sensor is okay, but I suspect one of the four CSI data transfer lanes is dropping out. Your best option is probably comma's out-of-warranty flat rate repair service. There have been extremely large changes in camera support code recently, and this hypothesis is not applicable while running potentially outdated forks."
    • Reseating the SOM didn't work.
    • Opted for and produced the hack to disable the wide camera on sunnypilot to resolve issue. Still works.
      • "Yeah, I'm not gonna lie. It's the same on the highway. Right turns in roads are worse, but they were never any good anyway. We always use Pause Lateral on turns, so it's all good"

References

About

Unofficial documentation of unofficial fixes and tweaks to comma and unofficial openpilot hardware

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published