iam4722202468 / ThinkpadBattery

Open source Thinkpad T420 battery design
MIT License
257 stars 23 forks source link

Do you think this applies to slice battery as well? The "28++" #10

Open TheMrRandomDude opened 3 years ago

TheMrRandomDude commented 3 years ago

I was wondering if this repo would work for external batteries as well. I'm planning to mod one.

I'm mostly using a X230 right now, which can be hacked to work with X220 batteries. I believe Lenovo uses the same controller for same generations (it makes sense), so that got me thinking.

This project is for T420 batteries. It also works for X220 batteries. Would it also work for X220 and T420 slice batteries? (Codenamed 28++ for T420 and 19+ for X220).

What do you think?

I have a working X220 slice for analysis if one turns out to be needed. I don't have an oscilloscope yet, but I'm planning to buy one soon.

iam4722202468 commented 3 years ago

@TheMrRandomDude Yeah I think it might work, I looked in to slice batteries a while ago and iirc they used the same protocol. Might require some small modifications, and you might have to write a driver to display the slice battery remaining capacity.

TheMrRandomDude commented 1 year ago

@TheMrRandomDude Yeah I think it might work, I looked in to slice batteries a while ago and iirc they used the same protocol.

EDIT 1: To not waste your time, I see this is a duplicate of #15.

I'll see to figure out first how the Chinese modified power batteries work.


Hey @iam4722202468 It's been almost two years since I posted this and I've became quite good with electronics now. I just remembered this project as I retired my X230 for a T480 and I realized I'm still facing the same issue - the scarcity of batteries here, plus the eventual issues down the road that the X230 faced with batteries not being made anymore.

I saw some open source BMS board designs with different controllers, and I was planning to redesign it in KiCad to make it fit in place of the original boards (would make different sizes as there's different sizes for different batteries).

I also have a logic analyzer, Saleae logic 8, I was thinking of analyzing the communication between the T480 and T480 batteries.

This is the reason why I tagged you. I will probably soon close this issue and fork the project and send pull requests as soon as I get to doing all this, but one my main question remains -

What is your opinion in regards to newer ThinkPad's (mainly talking about T480 here) - what would be the odds that Lenovo changed anything in the communications standard? I have a feeling this project ThinkpadBattery actually might just work as-is. No idea, figured I'd see what you think first, too.

Hope you're doing good these days. :)

iam4722202468 commented 1 year ago

Doing well! I haven't done hardware in a while, but I still find it very interesting.

Since the T480 is a newer model, it will use a challenge message to ensure the battery is authentic. Without knowing the private key from the battery and sending the correct response, the laptop will ignore any of the information provided by the battery. The X220/T420/etc. generation was the last to not have this requirement, and the X230 can have this requirement removed by modifying the firmware on the EC. I'm not sure how the third party batteries are doing this, they must have gotten the private key somehow, or are refurbishing old T480 batteries. It would be interesting to see one taken apart, and see if the communication between a third party battery is the same as the authentic ones.

As far as I know, the Smbus protocol hasn't changed other than the challenge messages, which are programmed in to the IC's. Even the T420 has the challenge message, but the EC doesn't seem check the response.