Корректировка показаний уровня заряда. На примере контроллера bq8030, FW SANYO.

 

В данной статье рассматривается случай, когда после перепаковки новыми элементами с отличной от оригинала "химией", контроллер не правильно вычисляет показания уровня заряда при разряде.
Проще говоря - чип ошибается в определении уровня оставшегося заряда.

 

Исходные данные: Аккумулятор перепакован, работает.

 

1057 001

 

 

Для преведения процедуры корректировки, необходимо прочитать EEPROM и сохранить ЛОГ разряда от 100 % до отключения нагрузки.
По полученному ЛОГу, можно увидеть, что чип некорректно отображает уровень заряда на завершающей стадии разрядки.
Приблизительно на 115-й минуте, есть провал вниз, а со 125-й минуты, контроллер показывает 0%, хотя аккумулятор продолжает работать.
Для вызова необходимого инструментария, в программе следует нажать на кнопку [EDV Level]. Откроется окно пересчёта значений EMF для чипов семейства bq208xx.
В этом окне будет отображаться реальная ёмкость аккумулятора (отданная в нагрузку), которую пересчитала программа по ранее созданному ЛОГу разряда. A.FCC = 5289 mAh и/или A.FCC = 57975 mWh.

 

1057 002

 

Если нажать на кнопку [>>], то откроется окно пересчёта коэффициентов для чипов bqXXXX FW SANYO.

1057 003

 

Далее, следует загрузить в первую таблицу оригинальный файл EEPROM (ранее сохранённый).

Нажмите кнопку [Open EE_1]

1057 004

На основании полученных данных, программа пересчитает необходимые коэффициенты и пользователю необходимо только нажать на кнопку [Save EE_1], расположенную в левой части окна.

Далее, необходимо записать полученный файл EEPROM в чип и повторить цикл заряд-релаксация-разряд со снятием ЛОГа разряда.

1057 006

 

Положительный результат корректировки коэффициентов уже виден.

График разряда приобрёл более "красивый" вид. Отсутствует сильный "провал вниз", но имеет место ошибка в области 0%.

Дальнейшая, повторная корректировка - может помочь, но не всегда. Вероятно, это обусловлено значительными отличиями между данными в оригинальном EEPROM чипа и характеристиками установленных элементов при их замене.

 

В случае, если у Вас имеется другой EEPROM, от чипа, в котором были использованы такие-же элементы, как используемые Вами и график разряда был удовлетворителен, то вы можете воспользоваться методом копирования таблицы коэффициентов из второго EEPROM в первый.

Для этого необходимо:

1) Нажать на кнопку [Open EE_1] и загрузить Ваш оригинальный файл EEPROM.

2) Нажать на кнопку [Open EE_2] и загрузить второй файл EEPROM от чипа, из которого Вы хотите использовать таблицу коэффициентов.

3) Для сохранения нового файла с использованием оригинального файла EEPROM,  таблицы коэффициентов из второго файла и таблицы поправочных коэффициентов - нажмите на кнопку [Save EE_1], расположенную в правой части окна

 

Левая кнопка [Save EE_1], позволяет сохранить данные только из оригинального EEPROM и таблицы поправочных коэффициентов, полученных из ЛОГа разряда.

 

 

 

 

Данный инструмент является расширенным редактором для чипов от TEXAS INSTRUMENTS и RENESAS fw SANYO.

 

Доступен только для лицензии Black_Label(++)

Переход к этому инструменту - нажать на кнопку [>>] в окне SANYO_Tools.

Список чипов, поддерживаемых данным инструментом.

TI_chip:            bq80201, bq8030, bq8050, bq8055, bq8055A, bq9000

RENESAS chip:  20020, 40020, 60020, 045A20

 

Рассмотрим пример использования на чипе bq9000:

 2018.03.03-16.12.36 lenovo l12s4a02 bq9000 bad

Открыть инструмент

1) Выбрать чип => bq9000

2) Нажать [Read SBS]

3) Нажать [Read EEPROM]

4) Проверить соответствие прочитанных дакнных SBS - EEPROM

2018.03.03-16.14.24 lenovo l12s4a02 bq9000 bad

В данном примере видно, что имеется несоответствие в интерпретации серийного номера и даты производства.

Следует выбрать другой вариант декодера содержимого EEPROM.

Для удобства: производить повторное чтение EEPROM - нет необходимости.

Достаточно нажать на кнопку [Load File] и открыть автоматически сохранённый файл, прочитанный ранее.

На рисунке ниже, представлены ещё несколько вариантов декодированных данных.

 

 2018.03.03-16.15.03 lenovo l12s4a02 bq9000 bad  2018.03.03-16.15.15 lenovo l12s4a02 bq9000 bad 

Оба случая имееют некорректность декодирования.

Следует использовать следующие варианты.

2018.03.03-16.15.33 lenovo l12s4a02 bq9000 bad  2018.03.03-16.21.21 lenovo l12s4a02 bq9000 repok

Визуально видно, что оба декодера совпадают по основным позициям.

Отличие есть только в полях имеющих отношение к ёмкости и токам заряда.

Для дальнейшего проведения ремонта, можно выбрать второй вариант декодера.

Следующий шаг - нажать на кнопку [Default], программа подставит первоначальные (заводские) значения в нужные поля.

2018.03.03-16.16.08 lenovo l12s4a02 bq9000 bad

Обращаю ваше внимание на две последние строки - здесь можно указать уровень текущего заряда аккумулятора после процедуры записи.

Если вас устраивают автоматически подставленные данные, то можно приступить к записи в чип.

 

5) Нажмите на кнопку [Write].

Внимание !! Важное замечание:

Очень часто, встречается случай, когда в текстовых полях, встречаются стринги с пробелами.  Наличие пробела может интерпретироваться чипом, как окончание стринга, или как реальный пробел.

К примеру, в рассматриваемом случае, есть стринг "SANYO 11"

Если будет использован пробел, то в Manufacturer Name будет отображаться "SANYO 11" , но для аккумулятора необходимо отображение "SANYO".

В данном случае, на вопрос программы, необходимо ответить "ДА" -  будет использовано короткое имя для отображения.

 

124

 

Если у вас подключен аккумулятор DELL, в поле Manufacturer Name , часто должно отображаться "длинное" имя с пробелом. В этом случае, необходимо выбрать "НЕТ".

 

Удачное завершение записи завершается следующим сообщением ( смотреть в нижней части картинки).

Если в чипе была блокировка (LOCK, PF), то программа автоматически удалит флаг блокировки после нажатия на кнопку [Write].

 

2018.03.03-16.16.22 lenovo l12s4a02 bq9000 bad

Результат работы :

2018.03.03-16.17.06 lenovo l12s4a02 bq9000 repok

 

Ускоренный вариант ремонта ( Read + Read + Default + Write ) - окончен !

 

 

 

 

P.S.

"Тонкое" редактирование 

Sanyo_PRO помогает производить изменение базовых параметров DataFlash чипа.

Изменять эти параметры без крайней необходимости - не рекомендуется.

Причина простая - не все ноутбуки корректно воспринимают такое изменение.

К примеру, если поменять имя производителя, то с вероятностью более 50% - ноутбук откажется работать с таким аккумулятором. Тоже самое может произойти при изменении проектной ёмкости, зарядного тока или напряжения для заряда.

Но в некоторых случаях, крайне необходимо произвести такое изменение. К примеру - при замене чипа на аналогичный.

 

Данный инструмент не является однозначно правильным редактором. Это инструмент, который может помочь в редактировании и исследовании.

 

Если внимательно посмотреть на список параметров, то можно увидеть, что некоторые из них, отображены по несколько раз.

2018.03.03-16.21.21 lenovo l12s4a02 bq9000 repok

Дело в том, что в EEPROM чипов, хранится несколько значений и чип (по неизвестному алгоритму) выбирает - с какой ячейки памяти следует использовать нужное значение.

Подробно остановлюсь на нескольких сложных моментах:

Проектная емкость (Design Capacity)  - может храниться в четырёх ячейках в виде мАч и столько-же ячеек памяти отведено для мВтч.

Декодер показывает значения из всех ячеек. Инженер-ремонтник должен самостоятельно определить - какую ячейку следует редактировать. Для этого смотрите - что отвечает чип через команды SMBus. Если чип отдавал в статических данных DC = 2200 mAh, то следует изменять только это значение в EEPROM и соответствующее значение ёмкости 3256 в mWh также. Остальные значения относящиеся к проектной ёмкости , менять не следует.

Ёмкость полного заряда ( Full Charge Capacity)  - отображается чипом через SMBus двумя способами, но хранится в чипе в виде одного из параметров, т.е. или в виде mAh, или в виде mWh. Программа сама определяет - в каком виде хранится FCC и отображает нужную ячейку EEPROM.

Ток заряда (Charging Current) .... Некоторые чипы, в течении периода заряда могут самостоятельно изменить это значение (управление умным чаржером). Программа показывает значения ячеек, которые могут быть использованы чипом. Не редко бывают случаи, когда в EEPROM чипа записано увеличенное в два раза значение тока. На картинке представленной выше, видно, что чип хочет получить зарядный ток 1500 мА, но в EEPROMе записано 3000 мА. Если этот пункт изменить на 2400 мА, то через SMBus, чип будет просить 1200 мА. Смотреть картинку ниже.

Напряжение заряда (Charging Voltage) - аналогично току заряда.

 2018.03.03-16.21.35 lenovo l12s4a02 bq9000 repok

 

 

 

UPD 2018.07.04

Примеры использования.

Чип Renesas 20020.

2018.06.14-11.50.27 acer ac14b13j r2j240 20020 bad

 

2018.06.14-11.50.21 acer ac14b13j r2j240 20020

 

2018.06.14-11.51.53 acer ac14b13j r2j240 20020 repok

 

Чип Renesas 045A20.

2018.07.04-11.23.45 sony vgp-bps48 045a20 good

 

2018.07.04-11.25.50 sony vgp-bps48 045a20 good

 

2018.07.04-11.26.40 sony vgp-bps48 045a20 testok

 

Lenovo ID Writer

 

Предназначен для записи в чип идентификаторов батареи , а также идентификационного ключа, который используется при аутентификации батареи ноутбуком.

Поддерживаемые чипы: bq8055A, bq9000_T1, bq9000_L1.

 

Данный инструмент вызывается нажатием на кнопку [Lenovo ID].

 

lenovo id writer 000

 

lenovo id writer 003

 

Подробное описание - по предварительному запросу. 

 

 

 

 

 

 

 

 

 

 

 

 

DataFlash and FlashRom Editor.

Предназначен для чтения, редактирования и записи данных в чипы RENESAS

На момент написания статьи, редактор поддерживает чипы:

RAJ240 045A20 (FW LGC)

 R2J240 20F020 (FW LGC).

 

Редактор открывается после нажатия на кнопку [DataFlash Editor] в основном окне программы.

 

045a20 lgc lenovo 001

 

В открывшемся редакторе, следует произвести выбор чипа из списка вручную, или произвести Авто-Детектирование.

Используйте кнопки [Manual Select] или [Auto Detect]

 

045a20 lgc lenovo 004

 

Чтение данных.

После нажатия на кнопку [Read Data Flash], появится окно с предупреждением.

Внимательно прочитайте и обратите внимание, что для чтения данных из чипа, программа автоматически переключит чип в режим Boot_Mode.

Чип будет находится в этом режиме для проведения процедуры записи.

Автоматический выход из режима Boot_Mode - не предусмотрен. Пользователь должен самостоятельно переключить чип в Normal_Mode, нажав на кнопку [Out_Boot] на вкладке PRO. 

 

045a20 lgc lenovo 005

 

Содержимое памяти чипа состоит из четырёх областей:

ROM, FlashRom, RMA и DataFlash.

ROM - область в которой хранится микрокод управляющей программы. Допускается чтение и запись.

FlashRom - область статических данных для работы микрокода. Допускается чтение, редактирование и запись.

DataFlash - область динамических данных, которые изменяются в процессе работы чипа. Допускается чтение, редактирование и запись.

RMA - обоасть для храниения слепков состояний чипа во время аварийных ситуаций (блокировок). Допускается чтение и очистка.

 

045a20 lgc lenovo 006

 

FlashRom находится на вкладках редактора Page1 - Page11 .

 

045a20 lgc lenovo 007

 

 

RMA занимает одну страницу.

 

045a20 lgc lenovo 008

 

DataFlash - на вкладках редактора DF_Page1-2 -- DF_Page11-12 .(На одной вкладке - две страницы).

Немного теории:

(Этот момент добавлю позже)

 

 

Рассмотрим пример ниже:

После чтения чипа, можно увидеть заполненные страницы DataFlash - Page1, Page2, Page3, Page4, Page5.

Страницы Page6 - Page12 - чистые.

 

Для редактирования этой области, в редакторе разрешено использовать любую из страниц с заполненными данными.

Редактор определит на какой странице производится изменение данных и скопирует полностью эту страницу в область памяти для первой страницы.

Все остальные страницы, в памяти чипа, будут затёрты.

В отличии от процедуры редактирования-записи данных в чипах TexasInstruments, для чипов Renesas, процесс записи начнётся после нажатия на кнопку [Write Data].

После окончания процедуры записи, содержимое таблицы редактора новыми данными не обновляется.

Для просмотра реального состояния памяти - нажмите на кнопку [Read Data Flash].

 

 

045a20 lgc lenovo 009

 

 

 На картинке ниже, для редактирования выбрана последняя страница DataFlash Page5.

045a20 lgc lenovo 014

 

 

 

Прочтённые данные после записи в чип. Обратите внимание, что текущая используемая страница имеет индекс Page1.

Программа записала все изменения на первую страницу.

 

045a20 lgc lenovo 015

 

Для переключения в режим нормальной работы чипа - нажмите на кнопку [Out Boot].

Если необходимо очистить флаги ошибок (убрать блокировку) - используйте кнопку [Clear_PF]

Для полного клонирования чипа, используйте кнопки Read-Write ROM-EEPROM.

 

045a20 lgc lenovo 016

 

 

Результат работы.

 

045a20 lgc lenovo 017

 

 

 

 

 

 

 

 

 

 

 

NT1908, 24c02 Tools

Для ремонта аккумуляторов на базе чипа NT1908, выпаивать микросхему 24с02  нет необходимости! Достаточно подключить аккумулятор через штатный разъём и нажать несколько кнопок: [Unseal], [Read EEPROM...], [Default], [Write EEPROM from...].

Программирование осуществляется через "ev2300" или "LPT_адаптер".

Чтение и запись чипов 24сХХ - доступно для Free версии.

Чтение и запись чипов NT1908 - доступно для Red_Label версии.

Данный инструмент вызывается нажатием на кнопку [bq2060, 24cXX].

 

NT1908 001

 

Далее в списке микросхем следует выбрать NT1908.

NT1908 002

 Назначение кнопок:

[EEPROM] - отображение на экране окна для прямого (ручного) редактирования содержимого EEPROM

[DataFlash] - отображение на экране окна DataFlash (декодированное содержимое EEPROM)

[Read Status] - чтение состояния Status_Registers чипа

[Unseal] - снятие флага SEAL

[Seal] - установка флага SEAL

[Read SBS] - чтение текущих параметров батареи

[Reset and Unlock Chip] - снятие блокировки (LOCK) и перезапуск чипа (RESET)

[Read EEPROM from Chip] - чтение содержимого EEPROM и отображение в виде таблицы

[Default] - установка основных параметров "по умолчанию"

[Load EEPROM from File] - загрузка таблицы EEPROM из файла

[Save Table to File] - сохранение таблицы EEPROM в файл

[Write EEPROM from File] - запись содержимого EEPROM из файла непосредственно в чип.

[Write EEPROM from Table] - запись содержимого таблицы EEPROM в чип

 

Пример использования:

1) Нажмите [Read SBS] для отображения текущих параметров аккумулятора.

2) Нажмите [Read Status].  В поле Manufacture_Access будет отображено состояние регистра SEAL. Если ячейка подсвечена розовым цветом, то EEPROM чипа защищён от чтения-записи. Необходимо сделать процедуру Unseal_Chip.

3) Нажмите кнопку [Unseal].

Программа автоматически произведёт процедуру Unseal_Chip используя несколько известных паролей, которые могут быть использованы в данной серии чипов. Результат работы будет отображаться в  строке статуса, под табличкой EEPROM.

Если результат будет отрицательным, то пользователь может указать другой пароль в окошке над кнопкой [Unseal]

 

 

NT1908 003

 

После удачного проведения процедуры Unseal_Cip, можно прочитать содержимое EEPROM.

4) Нажмите на кнопку [Read EEPRM from Chip]. Результат чтения - в таблице справа, будет показано содержимое EEPROM.

В окошке слева (столбик EEPROM) - декодированные основные параметры батареи (должны совпадать с прочитанными через SBS).

5) Нажмите [Default] - программа произведёт изменение основных параметров автоматически.

6) Если Вы хотите указать другие параметры, то введите новые данные в соответствующие ячейки (столбик NEW_Data, изменения автоматически транслируются в таблицу EEPROM). 

Для особо-продвинутых : возможно редактирование непосредственно в самой таблице EEPROM, обратное преобразование в таблицу декодированных данных - отсутствует. 

 

NT1908 004

 

NT1908 005

 

7) Запись новых данных в чип производится из таблицы EEPROM !!!  Нажмите на кнопку [Write EEPROM from Table].

8) Если в чипе есть блокировка, то после записи новых данных, необходимо нажать на кнопку [Reset and Unlock Chip]

 

Процедура восстановления завершена. 

 

 

NT1908 006

 

 

Тонкая настройка параметров батареи. Редактор DataFlash.

После удачного чтения содержимого EEPROM из чипа, или загрузки EEPROM из файла, программа автоматически декодирует все параметры и отобразит их в виде таблицы DataFlash

Пользователь может произвольно изменить любой параметр, путём редактирования соответствующей ячейки в таблице. Во время редактирования, программа контроллирует правильность изменения выбранного параметра. Если введённое значение не удовлетворяют критериям правильности, то программа подсветит выбранную ячейку розовым маркером.  Когда введённый параметр будет удовлетворять всем критериям, программа подсветит ячейку зелёным маркером.

 

 

NT1908 007

 

Внимание !!!  Когда маркер подсветится зелёным - в этот момент, программа автоматически произведёт изменение в таблице ЕЕПРОМ.

Запись в чип НЕ ПРОИЗВОДИТСЯ !!!

Для записи в чип, необходимо вернуться в меню EEPROM и нажать на [Write EEPROM from Table] 

Результат работы показан на картинках ниже.

 

NT1908 008

 

NT1908 009