Читаем и пишем вейвформы (waveforms)
На страницу 1, 2, 3, 4, 5  След.
 
Найти сообщения без ответов
Начать новую тему   Ответить на тему    Список форумов The-eBook -> Архив форумов устройств -> Explay
 
Автор Сообщение

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 25.06.2010 13:09     Цитата

Внимание! Все написанное ниже тестировалось только с контроллером дисплея Apollo PVI-6001! Как поведет себя с контроллером Epson - неизвестно.
В любом случае автор не несет никакой отвественности ни за что Smile Но старался всё сделать наиболее безопасным для применения.

Что такое вейвформы?

Вейвформ (waveform, WF) - это последовательность изменений напряжения, которую нужно подать на экран, чтобы стереть или вывести на него изображение.
Технология производства eink-дисплеев еще настолько сыра, что параметры полученных экранов очень разнятся между собой. Чтобы заставить изображение на них выглядеть более-менее одинаково, производитель к каждой партии дисплеев прилагает уникальный набор вейвформ.

Где хранятся вейвформы?

В отдельной микросхеме памяти (обычно NOR flash), подключенной напрямую к контроллеру дисплея. Обычный размер вейвформ - 64 килобайта ровно.

Для чего нужно менять WF?

Первый случай, когда WF нужно менять практически в обязательном порядке - это смена дисплея. Особенно если менялся старый ED060SC1 на новые ED060SC3/4.
Еще можно поиграться со сменой вейвформ тогда, когда изображение на дисплее имеет явные артефакты при перелистывании.
Некоторые наборы вейвформ можно найти в этой теме

Как читать/писать WF

В рамках проекта eb600utils я написал утилиты для работы с WF. Скачать их можно по ссылке - http://ifolder.ru/18302327
Запуск выполняется прямо на книжке. Два варианта:

Вариант простой - используя средства для запуска скриптов, которые предоставляет книжка (см. раздел ниже)

Вариант сложный - через подключенный дата-кабель. Подробности его подключения - в теме по дебрикингу. Нужно получить доступ к linux-консоли и прямо там выполнить нужные команды. Учтите, что модуль экрана - einkfb.ko - должен быть загружен.

Чтение WF

Для чтения используется команда wfdump
синтаксис -
Код:
wfdump -s address -l length /dev/fb0 waveform.bin

где address - адрес первого байта читаемого блока, length - его длина (оба параметра могут быть как в десятичном, так и в 16ричном виде), /dev/fb0 - имя устройства экрана, waveform.bin - файл, в который будут записанны считанные данные.
По умолчанию address = 0x0000, length = 0x10000, то есть читаются первые 64кб флэш-памяти - как раз то место, где вейвформы и хранятся.

Запись WF

Во-первых, сто раз подумайте, прежде чем что-то записывать. Обязательно сделайте бэкап старых вейвформ.
Для записи используется команда wfwrite с синтаксисом
Код:
wfwrite -s address /dev/fb0 waveform.bin

где address - адрес в памяти, по которому нужно писать WF, /dev/fb0 - устройство экрана, waveform.bin - файл с данными WF.
Файл пишется весь полностью начиная с указанного адреса

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

Читаем вейвформу
Код:
wfdump -s 0 -l 0x10000 /dev/fb0 waveform.bin

Для PocketBook - читаем серийник
Код:
wfdump -s 0x1F0000 -l 800 /dev/fb0 sn.bin

Пишем вейвформу
Код:
wfwrite -s 0x0000 /dev/fb0 waveform.bin
,
где waveform.bin - файл длиной 64 килобайта

Где взять исходный код программ?

На странице проекта eb600utils на SourceForge

А если у меня контроллер Epson?

Действуйте на свой страх и риск. Судя по коду ядра, Epson работает через эмуляцию PVI, и все должно работать, но черт его знает. Лучше попробуйте взять norread и norwrite из небезызвестного FB-TO-PB.EXE (ссылку не даю, разумеется Smile )
UPD: на Epson работать не будет, более того, книжка умрет. Подробней

Приложение A - запуск программ "простым" методом

Простой метод, т.е. без припаивания терминального кабеля. Способ работает на Explay, Orsio и некоторых других устройствах. Не работает на PocketBook (кто знает, как запустить на PB скрипт с правами root - пишите).

Чтение вейвформ - качаем архив и распаковываем прямо в корень SD-карты (точно так же, как при обновлении прошивки). Включаем устройство, ждем окончания загрузки, выключаем. В корне карты появился файл waveform_backup.bin - это и есть наши WF.
После этого файлы update_kernel и wfdump желательно удалить с SD-карты, иначе чтение вейвформ будет выполняться при каждом включении книжки.

Заключение

to be continued... (в т.ч. готовые скрипты для запуска без терминального кабеля)
Просьба тем, кому вышенаписанное интересно, отписаться о результатах тестирования и выложить дампы своих вейвформ.[/url]
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0


Последний раз редактировалось: Eltaron (21.07.2010 18:53), всего редактировалось 4 раз(а)
 
Профиль Сообщение ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 26.06.2010 21:09     Цитата

Ну раз никто пока не рискнул, вот вейвформы от покетбука, вытащенные из их прошивок - http://dl.dropbox.com/u/4166599/waveforms.zip
там и для старых, и для новых экранов
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

Antuan
Член клуба The eBook

Член клуба The eBook



Зарегистрирован: 30.09.2009
Сообщения: 11610


Откуда: Киев

СообщениеДобавлено: 26.06.2010 21:24     Цитата

Eltaron
Я рискнул, но у меня EB500, потому ни чего не получилось, одни нули записались.
Попробовал также nordump, что-то сохранилось. Сравнил с теми, что Вы выложили, совершенно не то.
_________________
PB 360° (v.15.3) | PB Pro 602 Grey (v.2.2.1a fastdrv) | PB A7 (v.1.3.1583) - подарок от PocketBook.
 
Профиль Сообщение ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 26.06.2010 21:39     Цитата

Antuan писал(а):
Eltaron
Я рискнул, но у меня EB500, потому ни чего не получилось, одни нули записались.
Попробовал также nordump, что-то сохранилось. Сравнил с теми, что Вы выложили, совершенно не то.

а как, консольный кабель припаян?
wfdump при работе никаких ошибок не выводила?
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

Antuan
Член клуба The eBook

Член клуба The eBook



Зарегистрирован: 30.09.2009
Сообщения: 11610


Откуда: Киев

СообщениеДобавлено: 26.06.2010 22:11     Цитата

Eltaron писал(а):
а как, консольный кабель припаян?

Без кабеля, я использовал программу poterm.app, это виртуальный терминал для покетов.
Eltaron писал(а):
wfdump при работе никаких ошибок не выводила?

Нет, отработал без ошибок и бодро сообщил, что данные сохранены, но открыв файл увидел одни нули.
_________________
PB 360° (v.15.3) | PB Pro 602 Grey (v.2.2.1a fastdrv) | PB A7 (v.1.3.1583) - подарок от PocketBook.
 
Профиль Сообщение ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 26.06.2010 22:30     Цитата

Antuan писал(а):
Без кабеля, я использовал программу poterm.app, это виртуальный терминал для покетов.

Все *.app работают не от рута, а с правами пользователя "reader". А у него нету прав на такой доступ к устройствам.
Полдня сегодня думал, как это обойти... Так и не придумал
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

Mollari
Активный участник форума

Активный участник форума



Зарегистрирован: 15.11.2009
Сообщения: 197



СообщениеДобавлено: 26.06.2010 22:43     Цитата

Eltaron
А ежели пароль забрутфорсить рутовый? Или старый трюк с init=/bin/sh в загрузчике?
 
Профиль Сообщение ^

Antuan
Член клуба The eBook

Член клуба The eBook



Зарегистрирован: 30.09.2009
Сообщения: 11610


Откуда: Киев

СообщениеДобавлено: 26.06.2010 22:45     Цитата

Eltaron писал(а):
Все *.app работают не от рута, а с правами пользователя "reader"

nordump что-то сохранил, но это явно не вейвформы, больше похоже не кусок программного кода, часто встречается
Код:
Linux
pocketbook
2.6.18.2
#750 Thu May 6 11:35:57 EEST 2010
armv4tl

_________________
PB 360° (v.15.3) | PB Pro 602 Grey (v.2.2.1a fastdrv) | PB A7 (v.1.3.1583) - подарок от PocketBook.
 
Профиль Сообщение ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 26.06.2010 23:08     Цитата

Mollari писал(а):
Eltaron
А ежели пароль забрутфорсить рутовый? Или старый трюк с init=/bin/sh в загрузчике?

а тама нету пароля ни у одного юзверя
init= конечно сработает, но чтоб до uboot'а добраться потребуется хирургическое вмешательство Smile

Я когда увидел, что у покетбука прошивка подписывается RSA-ключом, а софт работает не из-под рута, долго удивлялся, зачем так наворочено. Счас, блин, понял Smile

Antuan писал(а):
nordump что-то сохранил, но это явно не вейвформы, больше похоже не кусок программного кода, часто встречается
Код:
Linux
pocketbook
2.6.18.2
#750 Thu May 6 11:35:57 EEST 2010
armv4tl

ага, у меня он точно так же работает
просто мусор из системной области какой-то
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

Antuan
Член клуба The eBook

Член клуба The eBook



Зарегистрирован: 30.09.2009
Сообщения: 11610


Откуда: Киев

СообщениеДобавлено: 27.06.2010 01:08     Цитата

Eltaron писал(а):
просто мусор из системной области какой-то

Или кусок загрузчика uBoot, он ведь записан в NOR.
_________________
PB 360° (v.15.3) | PB Pro 602 Grey (v.2.2.1a fastdrv) | PB A7 (v.1.3.1583) - подарок от PocketBook.
 
Профиль Сообщение ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 27.06.2010 08:09     Цитата

Antuan писал(а):
Eltaron писал(а):
просто мусор из системной области какой-то

Или кусок загрузчика uBoot, он ведь записан в NOR.

нет, uboot в NAND'е
его через nandread /dev/mtd0 можно прочесть, если хочется Smile
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

Gubin_ss
Бывалый участник форума

Бывалый участник форума



Зарегистрирован: 08.02.2009
Сообщения: 106


Откуда: Омск

СообщениеДобавлено: 20.07.2010 17:17     Цитата

Здравствуйте Господа!!! Может подскажет кто нибудь из корифеев, как переписать вейформу на EB100, тобиш Explay V1 или Orsio 721, заранее спасибо, всем успехов
_________________
Если чайка летит жопой вперёд, значит ветер сильный "Народная примета"
 
Профиль Сообщение ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 21.07.2010 10:42     Цитата

Gubin_ss
Сколько лет, сколько зим Very Happy

А вот неизвестно. На орсиевском форуме пытались, но ничего не вышло.
У тебя ведь явно кабель на ком-порт спаян? Попробуй в терминале wfwrite запустить. Судя по всему она вылетит, но интересно с какой ошибкой
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

DmitryZ
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook



Зарегистрирован: 29.12.2006
Сообщения: 295



СообщениеДобавлено: 21.07.2010 16:37     Цитата

Eltaron, добавь плз в первое сообщение - ни в коем случае не пытайтесь перезаписать вейвформу на эпсоновском контроллере! На самом деле там вейвформа расположена по адресу 0x1000, а начиная с 0 там некая command area, которую если повредить, то девайс умирает совсем, спасает только перепайка SPI флешки. И формат вейвформ там совсем другой, по нему вообще никакой инфы нет.
 
Профиль Сообщение ICQ ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 21.07.2010 18:54     Цитата

DmitryZ
фигасе... добавил
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

Gubin_ss
Бывалый участник форума

Бывалый участник форума



Зарегистрирован: 08.02.2009
Сообщения: 106


Откуда: Омск

СообщениеДобавлено: 22.07.2010 14:50     Цитата

Чёрт побери, подумал может быть попробовать на cybook NB100 попробовать прошить, на них визплексы стоят, и вайформу перешить может сама прошивка, но не нашёл я прошивки то, забанены все ссылки, может у кого осталась?
_________________
Если чайка летит жопой вперёд, значит ветер сильный "Народная примета"
 
Профиль Сообщение ^

radugaif
Член клуба The eBook

Член клуба The eBook



Зарегистрирован: 16.12.2004
Сообщения: 1001


Откуда: Деревня Moskow

СообщениеДобавлено: 30.07.2010 12:22     Цитата

я выложил набор рабочих Waveform's для Lbook
Собственно подходят для эксплей и орсий на PVI контроллере
тут собственно самые последние, середнячек , самые лучшие из старых и для LG матриц-

http://ifolder.ru/18708390



********************************

ищу инфу как их подписать для прошивки Покета 301 на PVI -
там вроде что-то MD5 128 bit должна быть но цифири не те - так что как она просчитана не докумекаю.

если менять содержимое WF а Хэш оставить старым - покет пишет что прошивка битая и WF не меняет.

может кто поможет ?

http://ifolder.ru/18714274

это рабочие waveform's для Покета.. но старые .

Требуемый просчета Хэш в начале файла.
_________________
Ремонт электронных книг в Москве.
 
Профиль Сообщение E-mail ICQ ^

Eltaron
Заслуженный участник форума

Заслуженный участник форума



Зарегистрирован: 13.01.2009
Сообщения: 280


Откуда: Екатеринбург

СообщениеДобавлено: 30.07.2010 16:20     Цитата

radugaif писал(а):
ищу инфу как их подписать для прошивки Покета 301 на PVI -
там вроде что-то MD5 128 bit должна быть но цифири не те - так что как она просчитана не докумекаю.

там цифровая подпись через, кажется, AES 128
Не зная ключа (а его только покетбук знает) ничего не выйдет. А подбирать без квантового компьютера бессмысленно Smile
Проще swupdate крякнуть, чтоб он мог ставить прошивки, подписанные кем угодно
_________________
Siemens C55 + ReadManiac -> Siemens SX1 + BReader -> Fujitsu-Siemens Pocket Loox 720 + Haali Reader -> Explay TXT.BOOK 3.0
 
Профиль Сообщение ^

DmitryZ
Кандидат в члены клуба The eBook

Кандидат в члены клуба The eBook



Зарегистрирован: 29.12.2006
Сообщения: 295



СообщениеДобавлено: 30.07.2010 22:26     Цитата

Вейвформу на покете подписывать не нужно, подпись проверяется только для файловой системы и ядра. А MD5 ессно нужно пересчитать.
 
Профиль Сообщение ICQ ^

Gubin_ss
Бывалый участник форума

Бывалый участник форума



Зарегистрирован: 08.02.2009
Сообщения: 106


Откуда: Омск

СообщениеДобавлено: 16.09.2010 13:15     Цитата

Здравствуйте господа программисты. Тут небольшой вопросик, записать вайформу с флешки, это надо просто переименовать в update_kernel

mount -o remount,rw /dev/mmcblk0
mount -o remount,rw /dev/mmcblk0p1
DIR=$(echo $0 | sed s/`basename $0`$//)
${DIR}wfdump /dev/fb0 ${DIR}waveform_backup.bin
sync
mount -o remount,ro /dev/mmcblk0
mount -o remount,ro /dev/mmcblk0p1

wfdump в wfwrite. Больше ни чего править не надо? Confused
_________________
Если чайка летит жопой вперёд, значит ветер сильный "Народная примета"
 
Профиль Сообщение ^
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов The-eBook -> Архив форумов устройств -> Explay Часовой пояс: GMT + 4
На страницу 1, 2, 3, 4, 5  След.
Страница 1 из 5

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах

© The-eBook, 1999-2014. © Design by Prohorenkov
Syndicating News | Powered by phpBB © 2001, 2005 phpBB Group.
Хостинг предоставлен компанией DatForce     Яндекс.Метрика