мало сохранил - результат схож с запуском в режиме автозапуска ближе к концу дампа видно серийник 00000000 - при запуске в серво-режиме там ffffffff ...
Всё тоже но батарейка в режиме автозапуска :
stasik007, Спасибо! Молодца! Это с гипертерминала?
Я поясню мальца. Стас пришёл к выводу что серийники FF.... и 00..... не читаются самой зызой и ей они вообще по фигу А коды эти имеют значение для контроллера самой батарейки и дескать контроллер батарейки увидев эти коды в своей флешке тупо выдаёт определённую команду из своего списка зызе....в 3000 видать новые команды....Не знаю насколько верна эта версия...но Стас уверен что это так...
Последний раз редактировалось Boryan; 22.04.2010 в 02:06.
stasik007 добавил 22-04-2010 в 02:20
серийник увиденный на дампе передайтся примерно через 30 сек после начала общения с батарейкой - тоесть после того как всё стартанёт и обо всём договорится!
5A0201A2A505 - с этого начинается разговор в обычном режиме батарейки
A50A061EBB17 - сервис
A50A06F8D4EB - автозапуск
эти цифры одинаковы и при повторных запусках.
А ТEПЕРЬ, БРОСИВ ПЕРВЫЙ ВЗГЛЯД, ЕСТЬ ИДЕИ!... ?
Последний раз редактировалось stasik007; 22.04.2010 в 02:21.
Причина: добавил, подумав
stasik007 добавил 22-04-2010 в 02:20
серийник увиденный на дампе передайтся примерно через 30 сек после начала общения с батарейкой - тоесть после того как всё стартанёт и обо всём договорится!
5A0201A2A505 - с этого начинается разговор в обычном режиме батарейки
A50A061EBB17 - сервис
A50A06F8D4EB - автозапуск
эти цифры одинаковы и при повторных запусках.
А ТEПЕРЬ, БРОСИВ ПЕРВЫЙ ВЗГЛЯД, ЕСТЬ ИДЕИ!... ?
Всем привет для начала. У меня нет псп
Но недавно зав. отделением попросила посмотреть почему сломалась у сына её. Прошил, стало интересно. Сейчас в руках 3001 с оф 6,31. Аккумулятор по старинке пандореный.
Из высше написаного Стасом, а перевод в bin видели что дает?
последовательность нулей и едениц и к чему это ты написал?
5A0201A2A505=10110100000001000000001101000101010010100000101
A50A061EBB17=101001010000101000000110000111101011101100010111
A50A06F8D4EB=101001010000101000000110111110001101010011101011
хотя ..посмотри внимательно на 0 и 1 ...мож ты там чего то увидишь и расшифруешь нам ..например цифровую подпись соней )
5A0201A2A5050600D106785A0203A0A504061D10235A0B80028BB72A472664D440C7A5120648D869
81196B0DC3016FF008971..........................
старт с тойже батарейкой но в сервисном режиме:
A50A061EBB1728D3F40080EB5A0201A2A5050600D406755A0203A0A504061D10235A0B80029224A9
7C31DC6D962DA51206183B2AF3A1B7F344C0C22F8188.................................
06B5CB2076BCD594BF50
Всё тоже но батарейка в режиме автозапуска :
A50A06F8D4EBE74E2682E4D25A0201A2A5050600CF067A5A0203A0A504061910275A0B800239822F
569705F3E168A512061FF98C6BC9ECC............
Для начала разобрать что здесь кто кому говорит. Есть такая вот периодичность.
stasik007, Чем подслушал?
Последний раз редактировалось Klerikus; 22.04.2010 в 09:17.
5A0201A2A5050600D106785A0203A0A504061D10235A0B80028BB72A472664D440C7A5120648D869
81196B0DC3016FF008971..........................
старт с тойже батарейкой но в сервисном режиме:
A50A061EBB1728D3F40080EB5A0201A2A5050600D406755A0203A0A504061D10235A0B80029224A9
7C31DC6D962DA51206183B2AF3A1B7F344C0C22F8188.................................
06B5CB2076BCD594BF50
Всё тоже но батарейка в режиме автозапуска :
A50A06F8D4EBE74E2682E4D25A0201A2A5050600CF067A5A0203A0A504061910275A0B800239822F
569705F3E168A512061FF98C6BC9ECC............
Для начала разобрать что здесь кто кому говорит. Есть такая вот периодичность.
stasik007, Чем подслушал?
Обратил внимание на куски очень похожие 5A020. Похоже начало пакета. Возможно заголовок. Я бы даже сказал, что заголовок это именно 5A0, а дальше 2 байта это уже код операции наверное. 200B
lport3, так это байты с терминала. Там серийник уже складывается по другому.
А здесь он выложил дамп чипа памяти батарейки. Он состоит из 256 байт.
Серийник записывается по адресу 0х0F, 0х0E, 0х13, 0х12
Он же говорит, что сначала пандорил, а потом распандорил и прописался уже другой серийник.
В памяти батареки постоянно меняются данные. Они там записываются и корректируются со временем, чтобы делать калибровку батареи по мере старения.
Так-же, у меня были данные, где записываются данные о циклах заряда/разряда и состоянии заряда батареи. Просто винт сгорел и всё потерялось. Но это не трудно заново вычислить...
Нужно зарядить батарею на 100% и снять дамп. Потом разрядить её, пока не упадёт на одно деление и снова снять дамп, и ещё раз, разрядить на деление и опять снять дамп. После сравнения видно будет, в каком месте это меняется и записывается.
Так-же можно вычислить циклы заряда. Поставить на зарядку, будет гореть оранжевый огонёк и снять дамп. Как загориться красный огонёк, ещё раз снять дамп. Ещё когда горит зелёный, тоже снять дамп и все эти смещения можно вычислить.
Таким образом круг поисков сузится.
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 22.04.2010 в 20:45.
А я думал, он дал дамп с эфками в номере,
а "номер поменялся" - имеется ввиду после пандоры.
Чтобы понять что-куда в протоколе надо десятки логов,
и и-то это определит только направление для поиска.
То, что лежит в еепроме - полбеды, есть контроллер а у него
своя прошивка. Вот если ее слить и раздизить, тогда
считай дело в шляпе. А так, видится мне это малоперспективным.
lport3, вот смотри. Упирается всё в том, что мы пока точно не знаем, какой серийник должен быть в ответе. Не знаем какой длины и возможно вообще сменили в 3000 его месторасположение.
А если мы запишем серийник и снимем дамп памяти батареи, то будем знать каждый байтик.
Теперь, мы терминалом снимем такой-же опрос батареи, но уже на 3000 модели. И точно так-же, как я выше разложил всё по полочкам, разложим разговор терминала.
Мы точно вычислим, какую область памяти батареи отсылается в ответе в качестве серийника. И найдём в дампе эти байты. То есть, мы уже теоретически точно можем подтвердить местонахождение и длину серийника.
А по коду запросов-ответов можем составить картину сервисных ответов или обычных, сравнив с уже имеющимися.
Я уже прикинул, что коды идут однобайтовые (3-ий байт). И их не так уж много. В ответ возвращается код 06, а за ним данные, не считая последнего байта.
Рассмотрим первую строку: 5A 02 01 A2
Тут всё ясно...
5A - хедер запроса
02 - длина строки в байтах
01 - однобайтный код запроса (они пронумерованы по спецификации)
A2 - последний байт корректирующей контрольной суммы
Заметь, в ответ всегда батарея вставляет код 06
Серийник батареи запрашивается кодом 0С
Кодом 80 запрашивается может заряд батареи и в ответ получает 16-байтный код. Скорее всего код двубайтный 80 08.
После второго опроса серийника уже запрашивается другой код 80 02, т.е. вероятно после второй проверки, убедившись в правильности, срабатывает следующая инструкция.
Кодом 81 08 возможно запрашивается цикл заряда и возвращается 8-байтный код.
Затем переходит на другую схожую инструкцию 81 0A
И остались коды 02, 03, 04, 07, 09 и 0B. Вот и вся арифметика =)
Прошу любить и жаловать, Ваш Добро пожаловать в наш Чат в Telegram
Последний раз редактировалось ErikPshat; 22.04.2010 в 21:47.
а это начало старта в обычном режиме
5A0201A2
A5050600D10678
5A0203A0
A504061D1023
5A0B80028BB72A472664D440C7
получается что батарейка начинает свои фразы с А5 а зыза с 5А и фраза начинающаяся батарейкой с A50A06 является командой к запуску - ЭТО ФАКТ!
остаётся выяснить о чём болтает со своей батарейкой 3000 (на днях дадут - попробую)...
1-ый байт в фразе - это кто передает
2-ой байт в фразе - длина сообщения
последний байт в фразе - это чек сумм, его можно вычислить самому...
позже отпишу как вычислить если надо, пока занят слишком
ну а дальше само сообщение
Последний раз редактировалось dn3d; 22.04.2010 в 12:40.
Причина: добавил, подумав
1-ый байт в фразе - это кто передает
2-ой байт в фразе - длина сообщения
последний байт в фразе - это чек сумм, его можно вычислить самому...
позже отпишу как вычислить если надо, пока занят слишком
ну а дальше само сообщение