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

 

 

 

 

 

 

 

 

 

 

 

Lenovo ID Writer

 

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

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

 

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

 

lenovo id writer 000

 

lenovo id writer 003

 

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

 

 

 

 

 

 

 

 

 

 

 

 

Краткое руководство по ремонту батареи ACER_AS10B73_bq20z955 , с картинками.


Исходное состояние:

- PF Status = SUV (контроллер заблокирован)

- Charge Current (ток для заряда) равен нулю,

- Charge Voltage (напряжение для заряда) - равно нулю.

acer as10b73 bq20z955 001 

acer as10b73 bq20z955 002

 Далее действуем по списку:

1) Рассеалить.

        Остановить сканирование и нажать на магическую кнопку [Unseal] на первой вкладке программы (вкладка SBS ), надеяться, что программа знает пароли от этого аккумулятора. Магическая, потому, что она рассеаливает чип, переводит его в FAS=OK, а также автоматически меняет пароли на стандартные для каждого типа контроллеров.

        Если не помогло - открыть BQ_Tools и нажать на [Unseal\FAS bq20], надеяться, что программа подберёт пароли от этого аккумулятора.

Для обладателей лицензии PLUS и выше - открыть BQ_Tools и нажать на [Unseal1], сработает мастер-пароль и чип будет рассеален.

Следует обратить внимание, что FullAccess также присутствует (FAS=OK), если FAS не равен OK, то процедуру Unseal следует повторить,

или сделать FAS=OK любым доступным способом.

acer as10b73 bq20z955 003

 

2) Clear PF.    

Сбросить флаги ошибок из памяти контроллера и затереть их в EEPROM чипа

Для этого следует на первой вкладке программы (вкладка SBS ), нажать на кнопку [Clear PF]. Это вторая магическая кнопка - она убирает флаги из ОЗУ чипа, а также затирает их в EEPROM чипа.

Результат описанных действий можно пронаблюдать , включив сканирование шины и прочитав Status Registers (см. картинку ниже).

- PF Status = чисто,

- Charge Current (ток для заряда)  равен 3520 мА,

- Charge Voltage (напряжение для заряда) равно 12600 мВ.

acer as10b73 bq20z955 004

 

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

Далее, можно менять элементы и перепрограммировать чип под новые параметры.

 

3) Перепрограммирование чипа с сохранением заводских калибровок

Это для ленивых, т.к. Настоящие Мастера записывают в чип исходный "чистый"  SENC, полностью правят в нём параметры и калибруют ток, напряжение, температуру.

Но этот случай сегодня не рассматривается.

 

3.1)  Открыть BQ_Tools, нажать кнопку [Auto Detect].

Если автодетект подключенного чипа не сработал, то следует нажать [Manual Select] и выбрать чип из списка.

После выбора чипа, кнопка [Read Data Flash] станет активной. Нажмите на неё. Должно прочитаться содержимое DataFlash чипа.

 

acer as10b73 bq20z955 005

 

После удачного чтения DataFlash, следует сохранить содержимое в виде текстового файла *.xGG.  Для этого надо нажать [Save xGG].

Теперь можно приступить к редактированию параметров.

 

3.2) Редактирование DataFlash.

Ведите нужное значение и нажмите ЕНТЕР.

 

acer as10b73 bq20z955 007

 

 

acer as10b73 bq20z955 008

 

acer as10b73 bq20z955 009

 

acer as10b73 bq20z955 010

 

acer as10b73 bq20z955 011

 

3.3) Q_max и UpdateStatus

На картинке, представленной ниже, следует указать предполагаемую ёмкость каждой секции.

В данной батарее были установлены элементы Panasonic, ёмкостью 3200 мАч (три группы по два элемента параллельно).

Реальная ёмкость одного элемента равна 3050 мАч. Два элемента, соединённые параллельно составят 6100 мАч.

Во все пункты Qmax*** следует записать значение = 6100. 

Пункт Update Status следует прописать равным 00. Это значение для первоначальной инициализации контроллера.

 

acer as10b73 bq20z955 012

 

4. "Полезные мелочи"

4.1 Удаление флага AutoSeal.

Если чип контроллера ранее был засеален (is Sealed), то после рассеаливания (UnSeal) и перезагрузки (Reset), чип автоматически снова будет засеален.

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

Для удаления флага AutoSeal следует перевести чип в режим Boot_Mode и нажать на кнопку [Dell Seal], затем перевести чип в Normal_Mode.

Чип должен сам перейти в состояние UnSealed + FAS=OK 

4.2 Замена паролей на стандартные.

При необходимости можете записать стандартные пароли. Воспользуйтесь соответствующими кнопками [Change *** key]

 

acer as10b73 bq20z955 013

 

5) Обновление таблиц химии.

Данное семейство контроллеров не позволяет явно указать ёмкость полного заряда (FCC). Чип контроллера в процессе эксплуатации (даже в течении одного цикла), сам, несколько раз, может изменить это значение.

Значение FCC вычисляется на основании некоторых внутренних таблиц, в которых описаны текущие параметры элементов питания.

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

Не редко, после замены элементов на новые, Вы могли заметить, что даже после 5-10 циклов заряд-разряд, значение FCC не увеличивалось до нормы.

Причина в том, что контроллер записал в свои таблицы "очень плохие" значения, и изменять их "в сторону улучшения"  - чип не умеет.

Выход из данной ситуации - обновить таблицы на "новенькие". В программе записаны первоначальные таблицы (номер 100). Несмотря на то, что производитель контроллеров, компания Texas Instruments, рекомендует записывать под каждый тип элементов - свою таблицу химии, на самом деле - вполне достаточно записать 100-ю таблицу и сделать один-два контрольных цикла заряд-разряд.

Данная процедура описана в документации TI при подготовке GoldenImage файла, если у пользователя нет соответствующей таблицы химии под новые элементы. 

Для обновления таблиц, следует нажать на кнопку [New Chemistry]. Программа спросит подтверждение. Если Вы уверены в правильности ваших действий - смело нажимайте на продолжение выполнения процедуры. Время выполнения составляет около 20 секунд, в строке статуса будет отображаться номер таблицы от 1-го до 8-и.

 

6) Перезагрузка контроллера.

Нажмите на кнопку [Reset Chip]

7) Включение алгоритма Impedance Track (c) Texas Instruments.

Нажмите на кнопку [IT Enable]

 

acer as10b73 bq20z955 014

 

 

После проведения всех изменений в DataFlash, можно перезачитать содержимое DataFlash и сохранить его в виде текстового файла *.xGG.

Нажмите на кнопку [Save xGG]. Все сохраняемые файлы складируются в директорию "C:\UBRT_Log\" 

 

Контроль проведенных операций. 

Обратите внимание на параметр MaxError. Он равен 100%.

Это говорит о том, что чип пока не будет правильно отображать уровень текущего заряда и ёмкость батареи.

 

acer as10b73 bq20z955 015

 

8) Калибровка тока покоя, счётчика кулонов, напряжения, тока разряда и температыры (не обязательная процедура)

 

acer as10b73 bq20z955 016

 

 

9) Общая проверка работоспособности.

 

acer as10b73 bq20z955 017

 

 

После двух полных циклов ЗАРЯД-РЕЛАКСАЦИЯ-РАЗРЯД, получена вот такая "картина".

Обратите внимание на параметр MaxError.  Он равен 1%.

Это говорит о том, что чип (якобы) полностью протестировал элементы и при работе будет рапортовать пользователю почти правдивое значение оставшейся ёмкости.

 

acer as10b73 bq20z955 018

 

Работа по перепрограммированию завершена.

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

 

 

Дополнение к статье:

Если в процессе редактирования содержимого DataFlash, параметр MaxError примет значение больше, чем 100%, то есть вероятность, что даже после нескольких циклов заряд-разряд, чип не сможет опустить это значение ближе к нулю.

В этом случае, я рекомендую выполнить следующие пункты:

1. UnSeal, FAS=OK

2. Clear PF

3. New Chemistry

4. Q_Max = "проектная ёмкость"

5. Update Status = 00

6. Reset Chip

7. UnSeal, FAS=OK

8. IT_Enable

Всё. После этих процедур, MaxError должен принять значение 100%. Далее следует выполнить один-два полных цикла с релаксацией 3-4 часа позле заряда.

 

"Релаксация" - отключить аккумулятор от программатора и дать ему отлежаться.

 

Для удобства рассмотрения внесённых изменений, можете воспользоваться встренной утилитой, которая позволяет анализировать файлы *.xGG.

Вызывается нажатием кнопки [Compare xGG] в окне BQ_Tools.

Файлы для сравнения:  xGG_до_ремонта и xGG_после_ремонта.

 

acer as10b73 bq20z955 019

 

 

 

 

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

 

 

 

 

 

Исходное состояние:

        Контроллер заблокирован, элементы разряжены до 1300-1400 мВ каждый, корпус аккумулятора не вскрывался.

        Состояние управляемого предохранителя пока не известно.

Задача:

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

 bq30z55 001

 

Для восстановления следует получить доступ к программированию чипа:

      - Остановить сканирование и нажать на кнопку [Unseal] на вкладке SBS.

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

Результат будет отображен в строке состояния. Надпись "Pack is Sealed" изменится на "Pack is Unsealed, FAS=OK".

 

Далее следует запустить "BQ Tools"  ( нажать на кнопку [Texas Inst.] )

В открывшемся окне необходимо выбрать чип контроллера с которым работаете. Можно указать вручную или произвети автоматическое детектирование ( кнопки [Manual Select] , [Auto Detect] ).

После удачного детектирования чипа, нужно перейти на страничку калибровки ( нажать кнопку [Calibrate]

bq30z55 003 ClearFPIToff

 

 Далее необходимо прочитать состояние регистров чипа.  Установите галочку возле надписи "Keep Refreshing Registers".

На приведенной выше картинке видно, что в регистре "Operation Status 2", флаги CHG и DSG не активны - ключи заряда и разряда заблокированы, также активен флаг PF - это индикатор блокировки.

Флаг SEC1 не активен, флаг SEC0 активен - это индикатор того, что чип находится в режиме FAS (Full Access).

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

Дело в том, что после снятия флага PF, чип через непродолжительное время, проанализирует состояние элементов и может сам перезапуститься, что приведёт к автоматическому "засеаливанию" (SEC0 и SEC1 оба активны).

 

Далее, следует подключить на разъём аккумулятора источник тока.

Используйте стабилизированный по току и по напряжению Лабораторный Блок Питания

На блоке питания установите следующие параметры :

            ТОК = 100-150 mA

            НАПРЯЖЕНИЕ = напряжение заряда для данного аккумулятора (16800 mV)

 

Зарядку элементов можно произвести путём принудительного отпирания одного или обеих ключей - CHG и/или PCHG.

Для того, чтобы открыть зарядный ключ следует:

- снять флаг PF  -- нажмите кнопку [Clear PF]         

- запретить чипу управление ключами (выключить флаг GAUGE, регистр "Manufacturing Status") -- нажмите кнопку [IT On-Off]

- включить режим ручного управления ключами (выключить флаг FET , регистр "Manufacturing Status") -- нажмите кнопку [FET Control Mode]

 Должна получиться такая картинка:

bq30z55 004 ClearFPFEToff

 

Теперь можно управлять ключами заряда и пред-заряда (CHG и PCHG соответственно).

Для этого нажмите на  соответствующую кнопку - [CHG FET On-Off] или [PCHG FET On-Off]

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

В этом случае следует повторить всю процедуру.

1. Рассеалить (FAS =OK)

2. GAUGE и FET = Off

3. PCHG или CHG - On

И так несколько раз, пока напряжение на элементах не поднимется до нужного значения.

Для удобства пользования, возле кнопки [FET Control Mode] есть кнопка [FAS]  - она дублирует кнопку [Full Access].

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

 bq30z55 005 CurrentON

 

После повторения этой процедуры несколько раз, напряжение на элементах поднялось выше 2700 mV, чип перестал "выпадать в ошибку" и позволил нормально зарядить элементы выше 3000 mV.

Для завершения процедуры восстановления, следует отключить ручное управление ключами (фаг FET) и передать управление чипу (флаг GAUGE)

На картинке ниже, представлено правильное расположение флагов после описанных действий.

bq30z55 007

 

Если Вы всё сделали правильно, то после подачи команды RESET (кнопка [Reset Chip] ), чип должен выйти на режим нормальной работы самостоятельно.

 

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

         Данный контроллер позволяет управлять в ручном режиме ключами : Заряд, Пред-Заряд, Разряд, а также ключем для оплавления предохранителя (Fuse_FET )!!!

Для проверки работоспособности ключа  Fuse_FET, используйте кнопку [FET Fuse On-Off]

Кнопка снабжена предохранительной галочкой.

Не используйте эту кнопку без надобности - иначе Вы оплавите предохранитель.