Всем привет. Есть акб от ноута dexp(1908+24с02), время работы было около 10 мин. Подкинул новые банки, время работы от акб увеличилось где-то до 25 мин. В общем чуда не произошло. подпаялся напрямую к 24с02 и 341 программатором она считалась, только там кроме названия платы контроллера похоже все зашифровано Короче у меня пока тупик.... Может тупо купить новую батарею, считать eeprom и прописать в старую?
stalex8282, Думаю там не зашифровано, надо вычислить в каких битах находятся какие значения, переводя их из hex в dec.
Сам хочу слить (не выпаивая) через Arduino, такая же пара 24C02+NT1908 и искать данные показатели, для этого надо слить эти показатели в UBRT:
Далее жмем пункт "q2060, 24cXX" -> 24c02 -> Load -> грузим свой eeprom.bin и получаем таблицу значений и их адресацию, но это для примера,как всё организовано, надо эмпирически вычислять для своего.
Вот пример как переводить:
Серо-зеленые биты 7B 01 -> переставляем местами -> 01 7B -> в инженерном калькуляторе переводим в dec = 379
Для этого дела купил еще такой же, как у меня, убитый в 0 АК, сейчас пробую банки поднять и с двумя eeprom легче искать.
Последний раз редактировалось sakatgg Вс май 26, 2019 23:47:10, всего редактировалось 1 раз.
Открыта удобная площадка с выгодными ценами, поставляющая весь ассортимент продукции, производимой компанией MEAN WELL – от завоевавших популярность и известных на рынке изделий до новинок. MEAN WELL.Market предоставляет гарантийную и сервисную поддержку, удобный подбор продукции, оперативную доставку по России.
На сайте интернет-магазина посетители смогут найти обзоры, интересные статьи о применении, максимальный объем технических сведений.
sakatgg, я уже догадался... нашел человека, который смог считать через "B2W" текущие данные с моего АКБ.
До EEPROM он кстати не смог добраться, я ему скинул свой дамп чтоб он его поправил. я его залил на "флешку". В результате уже больше часа сижу в ноуте, а заряда осталось 72%. Теперь самое интересное... прикрепляю правленый дамп и все что мне удалось выяснить путем сравнения нового и старого дампа)) Правда он мне еще и дату выпуска поправил, но я ее не смог вычислить пока. Подозреваю, что это 4е ba (4 строка последние 2 столбца), но могу и ошибаться.
Вот эти параметры были изменены: DesignCapacity: 6000 mAh FullChargeCapacity: 6000 mAh CycleCount: 0 Date: 2019.05.26 yyyy.mm.dd
Продукция MOSO предназначена в основном для индустриальных приложений, использует инновационные решения на основе более 200 собственных патентов для силовой электроники и соответствует международным стандартам. LED-драйверы MOSO применяются в системах наружного освещения разных отраслей, включая промышленность, сельское хозяйство, транспорт и железную дорогу. В ряде серий реализована возможность дистанционного контроля и программирования работы по заданному сценарию. Разберем решения MOSO
подробнее>>
контроллер при прошивке памяти и при замене банок полностью отпаивал начиная от старшего плюса. припаивал в обратном порядке (от минуса). фотку завтра скину (сегодня тестирую акб). да память не выпаивал)) прям на плате подпаялся и она считалась и записалась. только считывал и записывал без банок!!!
Как рассчитать дату: 2014.09.11 yyyy.mm.dd Год 2014 - 1980 = 34 х 512 + месяц 9 х 32 + день 11 = результат 17707 (DEC) в десятичном виде Переводим в HEX - 452В Date: 2019.05.26 yyyy.mm.dd DEC - 20154 HEX - 4EBA В зависимости от программатора не забываем про Byte swapping.
Прочитал свой EEPROM с разьема АК (от ноута DNS), не выпаивая, с помощью Arduino Uno, АК подключил (с подвязкой 4.7к к +5В) на А4 (SDA) и A5 (SCL). Сначала потренировался на внешней 24C02 на макетке, затем с АК считал по адресу 0x0B
Инструкция по считыванию EEPROM, может кому прогодиться:
1. Прошиваем на Arduino Uno скетч read_epromm_fin (приложил). Брал здесь, убрал запись и вывод лишних столбцов. 2. В терминале выделяем и копируем столбец в буфер Ctrl+C 3. Вставляем в Notepad++ 4. Ко все значениям с одним разрядом дописать 0 , перед ним, т.е. до 2х разрядного, пример: 1 -> 01 5. Там же -> Правка -> Операции с пробелами -> Символ Конца строки в Пробел (столбец выстроится в линию) 6. Копируем в буфер 7. В WinHex Edit -> Cliboard Data -> Paste Into New Files -> ASCII Hex, если всё правильно, то вставиться нормально весь буфер.
З раза слил, с интералом в нескольких минут, приложил EEPROMы, может кто подскажет где и что? Есть некоторые участки, не изменились, возможно какие то константы. Хотя возможно это и не с 24С02, может какая память контролера. Надо для полной уверенности слить еще через прогер, как выше писали..
sakatgg, Вы что-то похожее видите в своих дампах как у stalex8282 ? Прочитайте програграмматором еепром,а потом разбирайтесь с Arduino Uno. Явно видно что мусор получился.
Добавлено after 9 hours 59 minutes 34 seconds: sakatgg, Почитайте документацию на похожие контроллеры BQ2040 и BQ2060,и про байт SEAL. Он не даст прочитать дамп по шине,если не снять SEAL. Где он находится в дампе от 24C02+NT1908 я не знаю,нет такого контроллера уменя,чтобы поискать. Если найдёте,то поделитесь с сообществом.
stalex8282, Не помню если чесно,давно было.Описание SMbus,DataSheet`ы на контоллеры,может где ещё. У старых НР/Compaq батарей,было по другому,с середины 1979 и по пол года.
Прочитал свой EEPROM с разьема АК (от ноута DNS), не выпаивая, с помощью Arduino Uno, АК подключил (с подвязкой 4.7к к +5В) на А4 (SDA) и A5 (SCL). Сначала потренировался на внешней 24C02 на макетке, затем с АК считал по адресу 0x0B
Это адрес микроконтроллера, он не отдаст просто так вам данные с 24с02, он поднимает свою шину I2С для работы с памятью, поэтому у вас данные разные. Подключайтесь к 24с02 напрямую, только так можно считать память или программа нужна, которая может работать с памятью через мк.
он поднимает свою шину I2С для работы с памятью, поэтому у вас данные разные
Да, по совету otus, даташит на похожий глянул, там две шины.
Скетч для Arduino UNO здесь выложили. Инфу считал, но вот например, эту инфу, только CELL3 показывает, остальные 0 и -1.
Код:
#define CELL4_VOLTAGE 0x3C // Indidual cell voltages don't work on Lenovo and Dell Packs #define CELL3_VOLTAGE 0x3D #define CELL2_VOLTAGE 0x3E #define CELL1_VOLTAGE 0x3F
Вот в UBRT правильно показывает на всех 3х ячейках. Там параметр Cell V. v.02, с другими версиями уже не то кажет.
Так понимаю для скетча нужно прописать регистры для версии v.02 - где эту инфу найти? Даташита нет, но авторы UBRT ведь знают эти параметры.
P.S. Есть еще такой же АК (за 100р взял, хозяин говорил что типа новый, не пользовался) , разряжен был в 0 на всех банках. Вытянул где-то за неделю I=40мА до 3.7В на каждой U на разьеме не появилось, предохранители целы, по I2C не видется. Подал с ЗУ на разьем - заряжается, потом отключил ЗУ - U на разьеме осталось.
Но самый прикол - по I2C всё также не видется и U пит. на 24L02 нет !!!, на SDA и SCL - уровни 3.3В. На первом АК на 24С02 U пит 3.3В есть.
К ноуту пока не подключал, надо АК вытянуть до 4.2В малым I и разрядить.
Чип контролера залит силиконом, прозвонить пока не получилось, но кажется питание на EEPROM подается с контролера NT1908, не напрямую.
Какими-то извилистыми путями ходим. Раз были в ноль разряжены все ячейки,то можно былож снять и прочитать еепромину. Отсоединить элементы,прогнать им тест с нормальными токами заряда по правилам и разряда. Была бы ясность что со внутренним сопротивлением элементов. Не будет от таких элементов толку,в один прекрасный момент умрёт просто внезапно. Силикон счищается без особой премудрости. Я бы отключил элементы по правилам,заменил бы их резисторами по 470 ом и с ограничением тока подал номинальное напряжение батареи,раз боитесь за предохранитель.Можно и полевик, управляющий пережёгом, снять или хотя бы лапу поднять. Сейчас похоже надо отключить общий плюс элементов и снова соединить (перезапустить контроллер),но можно и блокировку словить. Был бы дамп еепрома начальный,можно было бы и увидеть изменения если что случиться.
Последний раз редактировалось otus Пт май 31, 2019 08:42:39, всего редактировалось 1 раз.
Производители контроллеров не соблюдают спецификацию SMBus, а просто берут оттуда что хотят и делают сами как хотят и не делятся с пользователями информацией, только с другими производителями, например батарей. Поэтому и появилось 13 версий размещения информации в регистрах. Авторы UBRT написали сотни релизов, вычитали тонны спецификаций и работали с реальным оборудованием и нормальными инструментами. У вас же есть логический анализатор, сравните записи разных версий и поймете где что лежит.
sakatgg писал(а):
U на разьеме не появилось, предохранители целы, по I2C не видется. Подал с ЗУ на разьем - заряжается, потом отключил ЗУ - U на разьеме осталось.
Если напряжение осталось, заряжайте через разъем, потому что напрямую вы заставите контроллер заблокироваться или сжечь предохранитель. Нельзя соединять 2 выхода напрямую. Схемотехника может позволить отключать питание памяти, если она не требуется, посмотрите схему батареи, скорее всего там есть контакты типа SYS_ BAT3_DETECT# эти сигналы для контроллера батареи и хаба материнской. Скорее всего изза них не отвечает шина. А что вы хотите сделать то?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения