o-gs / dji-firmware-tools

Tools for handling firmwares of DJI products, with focus on quadcopters.
GNU General Public License v3.0
1.45k stars 405 forks source link

MAVIC 2 battery error #274

Closed heda-praimfaya closed 1 year ago

heda-praimfaya commented 2 years ago

First I would like to thank you for the tools. Second I encountered an error while trying to repair my Mavic 2 battery. Any help will be highly apreciated. Here it is what error I got:

root@raspberrypi:/boot/dji# ./comm_sbs_bqctrl.py -vvv --dev_address 0x0b read BatteryStatus Opening i2c:1 Raw write: DATA=22 3e Chip detection failded: TimeoutError: [Errno 110] Connection timed out Auto-selected chip: SBS, Generic chip with SBS support Warning: Could not open chip definition file 'comm_sbs_chips/SBS.py' Reading simple command at addr=0xb, cmd=0x16, type=uint16, opts={'subcmd': None} Error: TimeoutError: [Errno 110] Connection timed out Traceback (most recent call last): File "/boot/dji/./comm_sbs_bqctrl.py", line 3681, in main() File "/boot/dji/./comm_sbs_bqctrl.py", line 3648, in main smart_battery_system_read(po.command, vals, po) File "/boot/dji/./comm_sbs_bqctrl.py", line 3015, in smart_battery_system_read v, l, u, s = smbus_read(bus, po.dev_address, cmd, opts, vals, po) File "/boot/dji/./comm_sbs_bqctrl.py", line 2569, in smbus_read v, u = smbus_read_simple(bus, dev_addr, cmd, cmdinf['type'], resp_unit, retry_count, po) File "/boot/dji/./comm_sbs_bqctrl.py", line 2044, in smbus_read_simple v = smbus_read_word(bus, dev_addr, cmd, resp_type, po) File "/boot/dji/./comm_sbs_bqctrl.py", line 1537, in smbus_read_word bus.i2c_rdwr(part_write, part_read) File "/usr/local/lib/python3.9/dist-packages/smbus2/smbus2.py", line 658, in i2c_rdwr ioctl(self.fd, I2C_RDWR, ioctl_data) TimeoutError: [Errno 110] Connection timed out

The program works because when trying to read the other battery that I have it can read it ok! This battery functioned ok since 2 weeks ago when for no reason stopped working. I tried to revive it by charging-discharging it but when plug into the drone I receive the same message : Battery signal error. I understand my BMS is kinda heavily broken and I am looking for any solution that would help me get the BMS up and running. The battery is charging when plugged into the charger. Otherwise is not starting at all. If I remove the battery while charging it can operates for couple of seconds but it shutdown almost immediately. Thank you

mefistotelis commented 1 year ago

Based on the description, it's a HW issue on the battery board. Need either a new board, or a component level repair. For component level diagnosis, probably best to compare resistances with another good battery. Though if there are issues contacting the BMS chip, then there is most likely something wrong with that chip.

Closing.