Skip to content

Battery: BYD Atto 3

Daniel Öster edited this page Jan 23, 2025 · 4 revisions

Caution

Working with high voltage is dangerous. Always follow local laws and regulations regarding high voltage work. If you are unsure about the rules in your country, consult a licensed electrician for more information.

BYD Atto 3 battery pack information

Important

If the Atto 3 pack is sourced from a crashed vehicle, the battery could be locked. This means it will refuse to activate the contactors AND no updating of SOC%. We estimate SOC% from battery voltage to workaround this issue. In this state, the battery BMS is still alive, balancing cells and receiving and sending CAN messages. Modifying the contactors switching is possible, as per info below. If the battery is not crashed, the contactors will turn on via CAN when the Battery-Emulator is started.

The extended range nominal 60.48 kWh BYD Atto 3 blade battery pack is 1.2m wide by 2.1m long and 120mm high, weighing 402kg. The battery chemistry is LFP (LiFePO4). The battery configuration is 126s1p, estimated capacity of fully charged pack is 126 cells at nominal 3.2V x 150Ah connected in series = 60.48 kWh. Fully charged the pack produces total voltage of 445V max (3.5V/cell) and at 10% SOC, about 405V (3.2V/cell), as measured and monitored by OBD2 CarScanner during charging.

Viewed from the front, left is the low voltage connector, central is two refrigerant lines and right is the HV connector, with +ve on RHS.
Unplugged on scissor jack as below.   With reference to a description of the disassembly of a battery pack (courtesy of Brendon_M on https://forums.aeva.asn.au/viewtopic.php?t=8323 & https://www.youtube.com/watch?v=x5kw-EgxRs4) the 96cm long cells are arranged parallel to each other across the breadth of the pack with BMS balancing boards covering the terminals down the driver’s side in RHD countries. The 10 localised BMS balancing boards, comprising 3x 14s boards and 7x 12s boards, appear to be powered from the cells themselves as there are only 2 data wires coming out of the contactor block at the front and linking each board in a daisy chain fashion. Each board also has a temperature probe going into the cells. These report directly to the BMS motherboard, which lies directly behind the low-voltage connector. The red highlighted 10-pin connector is wired to the low-voltage connector at the front of the battery.

The front connectors end of the battery also includes the contactor block. There is a well-hidden 800V/350A fuse near the positive contactor(coil:12VDC/contactor:250A) on the RHS of the block, along with a mini pre-charge contactor (coil:12VDC/contactor:10A) and a pre-charge resistor, which is underneath the HV connector. There is no Tesla-like pyro fuse that blows when airbags are deployed; the system just opens the contactors. On the LHS of the block is the BMS motherboard to the left of the LV connector plug, alongside the negative contactor (coil:12VDC/contactor:250A) situated just below the LV connector.

Video example

Here is a great video made by "Flying Tools" showcasing how to connect the BYD Atto 3 battery

https://www.youtube.com/watch?v=YBYWBapnnyM

Battery specifications

LV Connectors

The Atto 3 HV battery is an independent domain, with its own CAN bus, which interfaces with the overall 8-in-1 integrated electronics. All technical descriptions are in Chinese which still requires availability and translation. Hence this initial attempt is based on what empirically can be identified from the LV connectors, namely the square 4x4 that connects directly to the front end of the battery, as well as the wires from the associated plug to the 10x1 connector on the battery BMS motherboard. Two views of the accessible wires into the battery through the 4x4 square connector are presented, showing a total of 7: The front pins of the connector are shown below, with 7 of the 8 pins used.

The backend of the receiving connector into the battery shows that most of the wires change colour, except 12V+, which duplicates, as shown in the following two photos: Interestingly, there is no wire to pin7 on the external LV side. However, there is a black wire internally, running to pin8 (?) on the BMS motherboard. We currently assume that LV pins 14&15, both earths, reduce to single wire to BMS pin7 (?). Hence, the resulting 9 internal wires plug into a 10-pin connector, one (#4) of which is not used. Pin#1 also does not directly connect to the outer LV connector but may be associated with the contactors (+12V?). ``

Connection diagram

The connection diagram is derived from the wiring in the discussion above. Most of these designations require confirmation, although the CAN-H and CAN-L have been properly assigned.

Contactor Block Modification

In the event of the battery being locked, the pre-charge and two contactors can be wired to manually switch on, or preferably to automatically activate via 3 SSRs with the GPIO pins on the Lilygo board (see https://github.com/dalathegreat/Battery-Emulator/wiki/Contactor-Control-via-GPIO-pins). When accessing the internals of the battery, wear the appropriate safety gloves and follow safe procedures to avoid shorting across HV terminals. To access the contactor block, first remove the top cover, which fortunately is not sealed down; ~ 76 screws and 2 central top bolts require removal. In the pictorial description that follows, details of the full removal of the contactor block is shown, to identify the various parts. With connection points identified, it is now not necessary to remove the block as these 12V connection points are accessible from the top of the block. This current protocol involved connecting 3 circuits individually to the precharge and two contactor relays. This was achieved merely by wiring in extra lines on top of existing wiring connector points. With hindsight, a more effective alternative is included in the discussion below. https://github.com/juancruz1953/Images/blob/main/Atto3ContactorBlockRewire.pdf

Parts list

Here are some of the part numbers and purchase links, incase your battery came without them

Part Product Link Notes
LV connector AliExpress 19pin 1192800MB 1192800FB BYD
HV cable OEM numbers: 1364774600 & SC2EM215300A

Example, high voltage cable # 1364774600

How do I know if I have a crashed&locked battery?

If the contactors do not engage when sending CAN towards the battery, the pack is most likely locked.

Another way to check is to inspect the "More battery info" on the webserver. This page contains the SOC% value sent by battery (SOC Highprec). If this value stays the same when charging, discharging, the battery is locked.

Estimated SOC or measured SOC?

When Atto 3 packs are crashed hard, they lock themselves and stop updating SOC%. Our initial implementation instead estimates SOC% via battery voltage. This solution is bad, since putting load on the battery will make the reading swing, this making it impossible to use the whole battery.

This has now been improved, we added a configurable option to the BYD-ATTO-3-BATTERY.h file. If you are certain that your battery is not crashed hard, you can remove the line USE_ESTIMATED_SOC, and the code will then instead use the periodically transmitted SOC value. ℹ️ If your battery IS locked and you remove this line, SOC% will stay stuck at the value it had when the battery was crashed and airbags popped.

image

The "More battery info" page also now shows what is used. It will either show Estimated from voltage OR Measured by BMS , based on the configuration

image

How do I unlock a crashed battery?

We are aiming to add battery crash-unlocking to the software. For this, we will need to get a CAN log from when a "BYD VDS2100 Diagnostic Tester Scan Tool" is used to unlock a locked battery. Once we have this info, we can implement it to the software. So if you have access to one of these tools, let us know!

Clone this wiki locally