Welcome to Tesla Motors Club
Discuss Tesla's Model S, Model 3, Model X, Model Y, Cybertruck, Roadster and More.
Register

Retrofit CCS compatibility onto earlier (NA) Model 3 - DIY approach

This site may earn commission on affiliate links.
Status
Not open for further replies.
Given that one could figure out which components were missing
And that's likely the major problem. E.g. surface mount capacitors frequently aren't marked with a value, so you might need someone to remove them from a -00- board and measure them. There also may be proprietary or house marked active components that couldn't be obtained from standard sources. (Keep in mind that it's likely that Tesla created a board with missing parts because even they had trouble obtaining them.)

However, I haven't looked into doing this myself. Although I included a "😆" in my message (being skeptical), it would still be interesting to hear about anyone attempting such an upgrade.
 
In a previous life (read: when I was employed) I had access to a surface mount rework station and a technician that could operate it. Given that one could figure out which components were missing from the -80-B version and source them from Digikey or Mouser, it's not beyond the realm of possibility that one might be able to convert it to a -00-B version.
Bigger issue is it's almost guaranteed that the microcontroller will have different firmware on it, and it probably is not trivial to get it to identify itself as an 00-B to install that firmware. It might be doable if Tesla left a debug mode enabled on the MCU, but realistically these things are cheap enough that it's not worth going through all that effort.
 
And that's likely the major problem. E.g. surface mount capacitors frequently aren't marked with a value, so you might need someone to remove them from a -00- board and measure them. There also may be proprietary or house marked active components that couldn't be obtained from standard sources. (Keep in mind that it's likely that Tesla created a board with missing parts because even they had trouble obtaining them.)

However, I haven't looked into doing this myself. Although I included a "😆" in my message (being skeptical), it would still be interesting to hear about anyone attempting such an upgrade.
Maybe somebody has a schematic? 🤷‍♂️ If it's truly a matter of enabling communications via some industry-standard methodology, then those components should be available (in normal times of non-supply chain issues, that is). Especially in single-unit quantities. Tesla may be ordering tens-of-thousands of these parts at a time. Both as a cost incentive (the more you order, the less per part) and to build up inventory destined for future vehicles. The main problem that I see is trying to put on that Qualcomm QFN package, as seen in post #11 in this thread. It looks like a QCA7005 but I could be reading it wrong. Single quantity price is around $28 from what I can find. The NCV735G CAN interface chip is $2.03 (Mouser, long lead time). The HFD4/5-S DPDT 5V relay is $1.38.

Yes, those individual chip caps and resistors probably don't have value markings on them. However, if Tesla is using a recommended circuit design to enable the power line communications, then those values might be found there. I would think that Tesla wouldn't try to "reinvent the wheel", but adapt existing designs for their use. In some cases it might make sense to design your own custom controller and have it fabbed by some silicon foundry but that seems like an expensive path in both time and money. And if a circuit change is required, then that's another round of costs. Better to use off-the-shelf components that have several sources (in normal times) than to be locked into a foundry / contract with minimal choices / chances to move (different semiconductor fab processes from one company to another can require a change in the circuit design layout).
 
  • Informative
Reactions: FalconFour
buyer thinks that they can alter / upgrade -80-B to -00-B version by adding all of the surface mount components that are missing
ahahaa NO 🤣

Not just the components, but firmware... yeah, the car (broadly referring to the complex HW & SW machinery behind the glove box) loads the firmware, but the car knows what firmware to load based on the board's programmed identity. If the board knows it's an -80-, it'll always know it's an -80-.

Maybe in the future... maybe with enough spare boards and enough deep Tesla hackery... it could be possible to "provision" new -00-s by stuffing parts onto -80-s, but the part-stuffing will be the easy part. Convincing it of its new -00- identity would be the hard part!

My first glimpse of a real -80- occurred just a few days ago, et voila:


If it helps anyone curious about the differences...

... oh, my. there are a whoooole lot of missing grains-of-sand parts to contend with on that board. Yeah, I'm gonna just slap the "impossible" label on this, on hardware grounds. Yeah, I'm good at soldering, but I'll tell ya, no human hands are good at managing that many small parts 😂 Unless we're in a survival movie and the only operational station in 1000 miles is CCS, and I have an -80-, then maybe it'd be cost-effective.
 
Last edited:
  • Like
Reactions: MLXXXp
From the standpoint of achieving CCS compatibility in Models 3 & Y (or from any standpoint), of what possible good is a Gen4 "80-B" ECU to anyone?
The relatively non-rare occurrence of fried charge port ECUs (original/unmodified 2021+ cars), which I'm SURE someone doing one of these retrofits will eventually encounter as well. I've seen about 3 instances so far of charge port ECUs being fried - 2 coworkers and 1 forum thread so far myself - all of the Gen4 variety. They could only charge at Superchargers, possibly because the SWC/J1772 relay was welded into the SWC position, somehow, maybe? (My guess based on symptoms/my own diagnosis in person at the time)

So for those that don't give a f about CCS or fancy pants, these -80-s are still useful. Just... not as useful as the -00-s :)
 
  • Helpful
  • Like
Reactions: wlee and tps5352
If anyone is curious about the firmware hacking, here's the reference manual for that microcontroller: https://www.st.com/resource/en/refe...ded-power-architecture-stmicroelectronics.pdf

I suspect Tesla will have enabled the censorship mode to disable JTAG and serial access to the microcontroller without the passwords. In another life I was into hacking BMW ECUs and while it wasn't always impossible to recover such passwords, recovering them required you to be able to load unsigned code by another means to enable read access to protected areas of memory and registers. They may have also set the SMK registers to protect a region of memory - and it appears those are eFuses (can't be reset back to the original state). If they happened to store RSA / ECC keys in that area, and those keys are different between the 00-B and 80-B modules - then you're SOL.

When the modules in question cost thousands of dollars, loading custom code has some value, and the OEM goes out of their way to make it difficult to use used modules, it was worth spending some time and effort to break the security. But this is a cheap part, there's little value in being able to flash your own custom "tune" (changing thermistor values notwithstanding), and Tesla doesn't block you from using used modules. And frankly, Tesla appears to be much better at security than the traditional automakers, so I suspect hacking these things is much more difficult, if even possible.

On the off chance that Tesla didn't bother disabling JTAG and the keys don't vary, it'd be a matter of reading the dump from an 00-B module, installing the missing components, and flashing that dump to the 80-B module.

Not at all worth the effort for a $140 part.

The actual soldering does look doable, but most people who are capable of doing it will charge more than just getting an 00-B module
 
Last edited:
Finally got my 00-B board in from Tesla today. Used my bundle of wires (thanks @FalconFour!!)

D8C8A535-3C70-4AB7-B4BA-D2A7D34B3DB6.jpeg


Hardest part of the installation was getting the clip back in.

I did not disconnect the 12V and I used a software update rather than service mode. Worked great and hopefully I’ll test supercharging and CCS with the adapter tomorrow.

I used Harumio and it was very easy to do, and now it looks like no more credentials needed. In addition to the CCS1 adapter, it looks like you can get a chademo adapter through Harumio. They should sell on eBay to reduce the gouging. Perhaps worth telling chademo folks that they can buy an adapter w/o spending a fortune on eBay.
 
I also ordered on the 12th and had proactively sent my account login. They replied that they no longer need the login and are working on the order. Nothing since.
In another thread, a person who used the new methodology where no credentials are needed said they didn’t get any updates until about 8 working days later via an email saying the adapter had been sent and included estimated delivery date. Sounds like I need to be a tad more patient.
 
it'd be a matter of reading the dump from an 00-B module, installing the missing components, and flashing that dump to the 80-B module.
There's also a chance that they use "one size fits all" identical firmware in both versions, that dynamically detects CCS capability.

The main CPU tries to talk to, or otherwise detect the presence of, the CCS PLC comms chip and, depending on the result, operates as and reports the board type appropriately. It could also be something as simple as a pullup/pulldown resistor that's only installed on a -00- board, attached to an I/O pin on the main CPU that is read to indicate that CCS hardware is installed.

If this is the case, then it would only be necessary to install the missing components and the single, common firmware would automatically handle it.
 
  • Informative
Reactions: FalconFour
There's also a chance that they use "one size fits all" identical firmware in both versions, that dynamically detects CCS capability.

The main CPU tries to talk to, or otherwise detect the presence of, the CCS PLC comms chip and, depending on the result, operates as and reports the board type appropriately. It could also be something as simple as a pullup/pulldown resistor that's only installed on a -00- board, attached to an I/O pin on the main CPU that is read to indicate that CCS hardware is installed.

If this is the case, then it would only be necessary to install the missing components and the single, common firmware would automatically handle it.
Easiest way to test that would be to swap a cpu from the 80-B board to the 00-B board and see what it reports. Perhaps I sing one that’s already broken for some other reason.
 
That would save them a ton of scrapped boards
That wouldn't be their primary reason for having common firmware for both part numbers. It would be to simplify software development and/or inventory. Maintaining one firmware version could be less work than two, even if it just means having only one resulting binary file to deal with. If the firmware (at least the initial version) is burned into the CPU chip before installing it on the board, you only have to inventory one part and there's no chance of a mix up resulting in installing the wrong (physically identical) part on a board.

Probably the only drawback of single, dynamically configuring firmware is that it could take up slightly more code space and run slightly slower for some functions, due to run time tests and decisions that the code has to make. As long as the CPU has sufficient code space and speed to handle it, this isn't a problem.
 
  • Like
Reactions: FalconFour
I'm just wondering if anyone in Canada has ordered the CCS adapter from Harumio

How bad were the FedEx or DHL add on charges?
Brokerage, duty and taxes
Oops, replied to a reply instead of you...I'm in Alaska, not Canada, but sometimes they seem a little similar... The shipping was $39 and the Harumio fee was $5. I ordered mine May 3rd and recieved it May 12th.
 
  • Helpful
Reactions: Randy-12
So For Example:

pxl_20220513_185240604-jpg.803899

Unplug each of the connectors and remove the ECU, note there are alignment fingers in the metal surface to prevent the ECU from spinning on it's bolt. After plugging the connectors into he NEW ECU be sure to test it before you start re-installing everything. Then simply put everything back in the reverse order you removed them above. The plastic clip (see photo above) can be disassembled into two parts, the hole part should be threaded thru the two liner pieces and into the metal body of the car and then the plunger part inserted into the hole part to lock it in place.
OK, looks like I got it working too on my 2018 Gen3 Model 3 and I took some photos:

7057B9B6-C44B-4742-80D1-9A1DBBEAB81A_1_105_c.jpeg
6EE51BCF-9E46-403A-AD19-01E6F5495398_1_105_c.jpeg
FD5BB3EF-D99F-479B-B0D0-0733E83B95CE_1_105_c.jpeg
5AB2AF8F-AA20-4148-B237-6C53492865C0_1_105_c.jpeg
45315E58-FB18-4F17-A8C5-5B99711023FB_1_105_c.jpeg
7988EB27-A6F3-4A95-A4FE-16F9819A3DFE_1_105_c.jpeg
8BEE993A-1185-4087-8656-C31A0272F853_1_105_c.jpeg
F20EB94C-61F4-4873-B5A2-3558243F3FF3_1_105_c.jpeg


I installed it first and then drove to the service center as I had lots of charge to get there, put it in service mode after connecting to their Service WiFi and then selecting re-install software, I then went inside and complained about a previous repair during the update. On the way home I stopped at a CHAdeMO charger, and Supercharger, and then plugged in when I got home.

Unfortunately I seem to be having the issue I read about here before. When I pull the charger plug out of the car the flap doesn't auto shut. Is that common? Is that always true?
 
Unfortunately I seem to be having the issue I read about here before. When I pull the charger plug out of the car the flap doesn't auto shut. Is that common? Is that always true?
haha! No, it's not common, but it happens often enough for me to have also observed it within my first couple of uses. I'm kinda getting the hang of what triggers it - maybe getting in/hitting the brake to start, while the charge port is still in its "delay after unplug, before closing the door" time window. At that point, if you trigger this bug, it'll just stop listening to commands (like "hey dummy close the door" from the screen) until you get out and "remind it of its present state" (hey uh, check your fly) by pushing the door down a bit (don't worry - it's a torque clutch, it's meant to take a bit of force handling).

It's also something I've seen on Gen4 cars, so I've always chalked it up to "Gen3 is just slightly better-oiled than Gen4".

For day-to-day use, since I did this upgrade first around Feb, I've not noticed it happening with any significance. Just occasionally, usually when I'm in a hurry to get out of a charging spot.

BTW, it still auto-closes, just after a delay - maybe the delay has changed.
 
  • Helpful
Reactions: tps5352
Status
Not open for further replies.