Решил я развеять слухи о том что зыза 3000 преходит в сервисный режим с порта USB. Во первых, что бы активировался порт USB должен стартануть ЦП..., а он ну ни как не может это сделать на брикнутой консоли Далее я просто зацепил крутой осциллограф к среднему выводу батарейки пандора и воткнул её в 3000 брик и записал их разговор. Известно, что со старой батарейкой 3000 не стартует....но ....смотрите сами http://www.youtube.com/watch?v=T4mQofU37sg, что записал осциллограф. Короче зыза общается с батарейкой упорно на предмет получения ключика для перехода в сервисмод. Делаем выводы....нужен ключик для перевода 3000 в сервис мод, но, он не FFFFFFFF.....а какой? какие будут предложения по подбору ключика? Кто силён в написании прог под винду. Нуно сварганить прогу что бы она по USB через микруху МАХ232 эмулировала флешку батарейки ....со всеми вытекающими последствиями. А точнее сгенерила ключик и дала команду электронному ключу на вкл батарейки....посмотрели... нет сервисмод у 3000....отключаем батарейку...генерим новый ключик ...и так далее до победного конца. Кто готов написать такую прогу? Электронную начинку я беру на себя .
Boryan добавил 20-04-2010 в 11:33
народ давай подтягивайтесь в тему. неужели не интересно мозгами поработать? Мои мысли по поводу батарейки для 3000....что могли в ней изменить Сони? Применить другой ключик...слишком просто...перебрать 4 байта учитывая что код только может быть типа 0хAA AA AA AA или 0хАВ АВ АВ АВ, это не сложно. Это не в правилах Сони...уж если рубить концы, то конкретно. Я думаю что они тупо увеличили код до 8 байт, и он так и остался 0хFF FF FF FF FF FF FF FF. Что это даёт? Во первых, процессор стандартной батарейки не может дать зызе код длиннее 4 байт, а вот их специальная батарейка может выдать код длинной 8 байт. В итоге... и волки сыты и овцы целы... Мужики, подумал я тут и понял эмулировать флешку батарейки пока рано. Нужно написать прогу снифер под винду, ну типа писать протокол обмена с батарейкой. Записать один протокол с 2000 а второй с 3000, и сравнить команды запроса на серийник, если они одинаковые то возможно ключик так и остался 4 байта, и тогда перебор нам поможет. А вот если разные...то нужно думать как заставить батарейку выдать 8 байт.....или тупо заставить прогу снифер поработать за батарейку и отвечать за неё ...ведь если будет записан протокол, то что нам составит труда выплюнуть его обратно с нужным нам ключиком?
Код Описание Данные Ответ от батареи Примечание
0x01 запрос оставшегося заряда нет energyleft_mAh:u16
0x02 запрос температуры нет temperature:u8 cercius degree, min/max value unknown
0x03 запрос напряжения нет voltage_mV:u16
0x04 запрос тока нет current_mA:short positive if charging battery
0x07 запрос ёмкости нет capacity_mAh:u16
0x09 запрос оставшегося времени нет timeleft_min:u16 XMB showing not this value
0x0c запрос серийного номера нет serialno:u32 suspected
0x80 запрос аутентификации? 9byte 16byte encrypted data/reply
0x81 запрос аутентификации? 8byte 8byte encrypted data/reply
0x05 ответ от батареи нет NAK, BCC error and so on??
0x06 ответ от батареи да ACK, with reply data
Yoti,
Писать не обязательно. Главное выдать результат чтения прошивки на какую нибудь ногу(и), а считать с неё(их) уже не проблема.
Для примера можно воспользоваться простыми протоколами UART или I2C.
UART реализация например для AVR спокойно укладывается в 490 байт.
Так как нам полной реализации UART не нужно, то приемную часть можно вообще выкинуть и тем самым еще уменьшить размер.
Yoti, нужно писать в 501 чип ..они сейчас используются во всех батарейках кроме галимых где используется 9202 чип. Сейчас выложу все доки по 501
Boryan добавил 04-11-2010 в 02-05 aaa111, да, правильно! использовать нужно UART..по нему легче всего законектить чип...сейчас у меня 501 подключен к компу именно по этому протоколу..
Boryan добавил 04-11-2010 в 02-31
все доки по 501 чипу http://zalil.ru/29917279 там есть схема программатора и интерфейса UART.....я использовал всё тот же клайн. Вернее шнурок на PL2303...распайка такая...Tx-1я нога...Rx-5 нога....DTR-2 нога...питалово для NEC берём с внутреннего источника питания у пэлки...это либо 17, либо 4 нога. Нужно написать прогу которая по UART сможет инициализировать чип ...работать с ним поблочно ..стирать и записывать. И ещё обрабатывать инфу с чипа когда с него будем тащить дамп... Ну и написать прогу дампер для чипа ... Единственно пока под вопросом нужно узнать как снимается бит защиты. В нэках бит защиты ставится не для защиты от чтения ,а для защиты от стирания и перезаписи либо блока, блоков, всей флешки. Время не было на подробное изучение доков...но вроде как этот бит снимается программно и легко.
Последний раз редактировалось Boryan; 04.11.2010 в 14:31.
Причина: добавил, подумав
Думай прежде чем писать и не будет бреда нет 501 это и есть всё в одном и флешка и контроллер...Блин, ну ты чего чудишь? ...Есно раз есть контроллер он наверно работает по какой то программе ..а прога эта пишется в флеху контроллера...Я же тебе советовал доки посмотреть...а то выходит что ты даже не имеешь представления малейшего что есть контроллер...
Репутация: 158 
(весьма и весьма положительная личность)
Доки то глянул мельком, посмотрел на объем и терминологию, закрыл
Получается мы читаем программу с флешки и следуя твоему предыдущему посту, пишем в флешку... Глюк выходит, либо там две флешки
Alex14435, ты знаешь что такое бутлоадер? Это маленькая прога которая пишется во флеху и тем самым даёт доступ к её содержимому. В качестве примера можно взять сотовые телефоны. Вот аналагичную фичу можно применить и в нэках.
Boryan добавил 05-11-2010 в 01-20
Зы флешка одна. Структура написания программ для микроконтроллеров такова. В начале как правило текстовая инфа..Типа кто и когда писал прогу, какой контроллер, назначение проги, назначение портов...и т.д и уж дальше идёт сама прога. Но это описание занимает какой то объём памяти. И есно его нужно выделить в памяти контроллера. При старте контроллера он начинает читать свою флеху с нулевого адреса и далее последовательно читая её содержимое ...выполнять прогу которая находится во флешке. Но нам нужно куда то поместить наше описание и так что бы оно не мешало. Для этого существует общее правило. В нулевом адресе пришется адрес куда нужно перескочить. Например пишем 0х100....и соответсвенно при старте контроллера он увидит в самом начале что ему нужно перепрыгнуть на 0х100 адрес и он это незамедлительно сделает пропустив при этом около 100 байт. И в итоге в нашем распоряжении есть около 100 байт для резерва и засовывания туда нашего описания. Иными словами есть область памяти которая ни как не влияет на работу контроллера. Вот в неё и пишется бутлоадер с самого нулевого адреса...ну что бы он сразу стартовал.
Boryan добавил 05-11-2010 в 01-37
Возможен и более плохой вариант...прога начинается с нулевого адреса без всяких там описаний и резервных байт. Тогда как и в первом варианте пишем наш бутлоадер и читаем флеху. Если наш бутлоадер хорошо оптимизирован и занимает меньше 256 байт..то мы потеряем от исходной прошивки всего 1 блок=256 байт. Думаю это не смертельно. А если он занимает например 256х3...то есть три блока, то мы уже потеряем прилично от исходной прошивки. В этом случае нам потребуется второй аналогичный чип. В первый блок. в нулевой адрес мы пришем адрес перехода в чистое место флешки ..который мы узнали из первого дампа...и в этот адрес пишем наш бутлоадер....читаем флеху и в итоге теряем 256 байт как и в случае с оптимизированным бутлоадером. Потеря 256 байт в этом случае неизбежна.
Последний раз редактировалось Boryan; 05.11.2010 в 13:37.
Причина: добавил, подумав
Мужики что думаете насчет того чтобы записать игры в нанд PSP GO программатором ?
а какой в этом смысл? без подписи они все равно не запустятся.
к тому же, они вроде и так там хранятся... хотя, может я и ошибаюсь..
hax0r добавил 05-11-2010 в 02-22
по поводу бутлоадера... на первый взгляд-не сложно на асме написать. Только вот отвык я что-то на аглицком доки читать) после 20 минут голова пухнуть начинает) по поводу UART-ни разу не писал,ниче сказать не могу..
Последний раз редактировалось hax0r; 05.11.2010 в 14:22.
Причина: добавил, подумав
Репутация: 158 
(весьма и весьма положительная личность)
Я думаю что происходит считывание с флешки через программатор (контакты программатора внизу)
Alex14435 добавил 05-11-2010 в 09-17
Или просто контакты флехи припаяны к нормальным контактам к которым можно подключить что угодно, опять же программатор
Последний раз редактировалось Alex14435; 05.11.2010 в 21:17.
Причина: добавил, подумав
Ну да, похоже это кроватка программатора. И судя по количеству контактов, они идут на программатор.
Не думаю, что у флехи есть место под бутлоадер, хотя скорее в чип умышленно не льётся бут, т.к. нафиг это никому не нужно в целях безопасности. А тем более скорее стоит бит защиты.
Вообщем. На сисконе не нужно заливать бутлоадер, т.к. по любому придётся сливать прошивку через программатор. А затем HEX можно перекомпилировать в BIN, тогда код станет читаемым. Хотя вроде в чипе он и так в бинарном формате лежит.