Изучение прошивки МК-161

Во-первых: предлагается поискать на моделях МК-161 из первых партий не залоченный чип W77LE516

Во-вторых: http://www.break-ic.com/microcontroller_read/Nuvoton_Winbond_erase_prote...
может быть у них цены не конские ?

Можно ли без удивительных напряжений (без программатора) считать прошивку с чипа (микроконтроллером или ПЛИС), то есть сделать попытку
и понять, что она читается или не читается ?

В даташите есть какие то диаграммы, но там чёрт ногу сломит, может быть кто то уже знает,
точно какие ноги и как поднимать, чтобы считать прошивку ?

В-третьих: есть несколько приёмов позволяющих обойти защиту. Например там есть бит, запрещающий чтение из внутренней памяти программ. Говорят если после первого клока резко опустить уровень напряжения, а потом снова подать, то бит защиты не успевает защёлкнуться и можно подсунуть на выполнение внешнюю память и считать прошивку байт за байтом ???? Может быть просто приколы с напряжением позволят вывести чип в режим, позволяющий считать прошивку или записать свой LDFLASH (попробовать стереть только LDFLASH), который выведет прошивку через UART ???

Сомневаюсь, что эти не кони действительно читают защищённые камни. По крайней мере разработчик программаторов мне сказал, что такое невозможно. Что деньги берут — тут мало сомнений. :-)

Да, можно экспериментировать со схемами. Попробовать частичную перезапись APFLASH. Но в целом получение прошивки нам не выгодно — проще обвинить в использовании чужого кода, защищённого авторским правом. Это серьёзно бросит тень на нашу прошивку.

Если прошивку никто не доставал, такие обвинения будут беспочвенны.

Болтовня это одно, а доказательства - это другое.

В чипе W77LE516P есть бит запрета чтения. Если чтение запрещено (как в моём МК-161), извне прошивка не читается. Если чтение разрешено, соответствующий программатор её прочитает без проблем.

Конечно же, можно поискать баги внутри прошивки, чтобы всё равно считать ПЗУ. Интересно, например, можно ли передать содержимое APFLASH по RS-232C с помощью собственного загрузчика из LDFLASH, и наоборот. Здесь мы наткнёмся на две сложности — владелец этого сайта не хочет, чтобы мы такое здесь открыто обсуждали. Кооперацию придётся проводить в личке или на другом ресурсе.

Также те люди, которые изучат фирменную прошивку, не смогут участвовать в разработке новой прошивки, т.к. будет угроза судебного преследования со стороны Новосибирска. Всё, что взломщики могут, это публично сформулировать свои находки (опять же, на другом ресурсе) по принципу «чистой комнаты» — без включения кода, который мог бы нарушить авторские права.

На официальном сайте распространяются прошивки в формате ISP. Скорее всего это тот же формат, который фирменный загрузчик LDFLASH принимает по RS-232C, перезаписывая ПЗУ камня. Производитель утверждал, что там используется какая-то криптография. Но всерьёз этот вопрос никто не исследовал, так ли это и насколько эта криптография серьёзна. Возможно и так, что прошивка передаётся открыто по кабелю во время перепрограммирования МК-161 — обмен по RS-232C никто не перехватывал и не анализировал.

Также один МК-161 может перепрошивать другой через RS-232C своей прошивкой. Этот обмен тоже никто не перехватывал. В-общем, непаханое поле.

Да в России эта фигня не работает, замучаются доказывать, что эти коды взаимосвязаны. Точно также можно обвинить вас, когда вы научитесь выводить на экранчик, что вы якобы этот код сдули с официальной прошивки. Проблема в том как стереть только LDFLASH оборвав стирание на середине, возможно сотрётся и защита, а потом накатить свой загрузчик, который прочитает APFLASH. Это не запрещено, на своих чипах делать. Потренироваться на своих чипах, к сожалению у меня один только родной (ещё пара не рабочих) и переходник PLCC44 на DIP который я не знаю работает или нет, и программатор непонятный. Насколько я понимаю W77LE516 требует хитрого напряжения для программирования типа 8 вольт на одной из ног ?

По напряжениям не подскажу. Всегда использовал уже готовые программаторы и новый выбирал специально под W77LE516P. Кстати, камень может сам себя перепрошивать, а в схему МК-161 эта возможность заложена. Как напишем свой загрузчик, можно будет экспериментировать без программатора.

Мой совет — заказать из Китая оригинальные W77LE516P. В России их не найти. Когда придут, прошить и считать. Если получится, можно пробовать считать родное ПЗУ. Но, как уже писал, считаю это плохой стратегией. В том числе из-за юридической сомнительности. Не хотят сами делиться своим кодом, лучше сделать всё без их помощи.

Сам Новосибирск судом за взлом прошивки никогда не угрожал. Они полагаются на техническую защиту и невероятную (по их мнению) сложность создания прошивок, а публичные высказывания были против «копирастов». Против считывания был Сергей «Арбинада», т.к. законопослушен и не хочет конфликтовать с Новосибирском. Да и мне хотелось бы получить низкоуровневый ввод-вывод на МК-161 лицензионно чисто, без декомпиляции собственнического кода. Например, методом научного тыка.

Пока вам идут по почте W77LE516P, могу гонять пробные самопальные прошивки на своём МК-161.

Если думать о Семико, движения прорывного вперёд не будет:)

P.S. Модульность калькулятора отличная идея для использования.
что то подобное было и в таком представлении http://www.forth.cz/Download/mFC/mFC.html

Спасибо за ссылку !!! Чего только уже не придумали, надо изучать и пользоваться.

Создание корпуса (отработка технологии) на основе 3d принтинга (или фрезерования) и модуля клавиатуры - это общая задача. Создание ультрамалопотребляющей модели на STM32L4 (MSP430 ???) - это одна из основных задач. Я тут нарыл библиотеку Decimal64,128 на Си, вероятно её несложно портировать на STM32, для начала просто в лоб, потом может быть использовать какие то особенности и узкие места прописать на асме (не говоря уж об истории с ПЛИС ускорителем).

Но я бы не снимал задачу создания чудо девайса на основе ПЛИС или с ПЛИС как сопроцессора, т.к. это действительно новая идея, никем из калькуляторных производителей не реализованная. Ранее конечно ПЛИС кушали очень много и такая идея годилась разве что для настольных машин (а там уже были ПК), сейчас с доступными мощными LiPo аккумуляторами можно задуматься об использовании FPGA в наладонном устройстве.

Можно взять за основу STM32, а ПЛИС подключать как модуль-ускоритель, тем более у меня имеющиеся ПЛИС как раз оформлены как компактные CORE платки. Они выпускаются серийно китайской компанией Waveshare. Скорее всего схемотехнику можно передуть (там должна быть референсная схема) и выпускать их самостоятельно. Тогда сзади клавиатурной платы можно сделать разъёмы для втыкания ПЛИС модуля. только высота будет как у шилда воткнутого в ардуину, что не есть гут. Надо подумать как избавиться от этих высоких разъемов.

По поводу дисплеев, думал над словами Арви, что Миландр нельзя выбрасывать за скобки. В калькуляторах базовая графика весьма примитивна. Что если создать некий HAL и драйверы для каждой модели экранчика, для ПЛИС дополнительные модули, упрощающие работу с экранчиком. Есть ещё дешёвые LCD панели, у которых нет своего драйвера, но они большие и могли бы подключаться к ПЛИС для демонстрации на аудиторию или взамен мини-монитора, ПЛИС идеально подходит для таких штук.

Потом ещё звук. Насколько я понял публику, всем хочется девайс с RTC, который был бы мог работать по расписанию, просыпаться по таймеру, что то делать и засыпать обратно, выполняя функции органайзера и средств автоматизации (полить цветы, покоромить котов, спустить с цепи робот-пылесос и т.д.). Звуковые оповещения пригодились бы, значит надо поставить пьезо пищалку и порт для вывода аудио.

К сожалению я только программист, разводить платы можно сказать не умею (но буду пытаться),
по идее конечно надо делать многослойную материнскую плату сразу с STM32 и FPGA, с полем
SMD мембран для клавиатуры и дисплейчиком на шлейфе. Но как и мне другим самодельщикам наверное будет сложно получить экземпляр такой платы. Надо попробовать хотя бы первый этап обойтись ЛУТом (фоторезистом), чтобы изделие было полностью воспроизводимо на коленке :-)

Мне кажется, что дисплей надо брать такой как в DM42. Я себе, кстати, купил два таких - один для хобби экспериментов, а второй - на случай, если я грохну свой DM42

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

И что там с драйвером дисплея ? (он встроенный?)

На дигикей.

Дисплей с последовательным интерфейсом, подозреваю, драйвер встроенный.

Недешев, конечно, но по контрасту лучший из ч/б трансрефлективных, что я видел вживую.

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Дисплей хорош. Но мы опять скатываемся в «лучшее на планете» из «лучшего, что можно собрать на отечественной комплектухе». Когда разные цели, совместная работа невозможна.

Та как вы владелец, с вас драйвер (софтверный) :-)

:)
Надо попробовать с Ардуины этот дисплей захелловордить, наверное

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

Да, прототип высокоуровневый, как что рисовать, живущий на Ардуине - это дело богоугодное :-)
Вообще трансфлективные низкопотребляющие(???) экраны - это православная труЪ вещь :-)
Но и e-Ink заманчив тем, что выключил питание совсем, а он всё ещё показывает. Значит этот девайс может периодически включаться, обновлять информацию, если необходимо и вырубаться. Для органайзера какого нибудь лучше не придумаешь. Экранчик же от швейцарца хорош тем, что на нём можно в игрухи рубиться с высоким FPS :-)
Не, ну так вообще можно докатиться до двухэкранного ПМК типа Ётафон-161 :-)

высокие FPS нам ни к чему :)

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/

2.7 дюймов (264x176 пикс.) двухцветный (красный и чёрный), стоил 1200 рэ. 4 дюйма (400x300 пикс.) чёрно-белый будет стоить 1600 рэ. Это вдвое дороже чем Миландровский (???) Правда тот всего 128x64 и без подсветки почти бесполезен и не может показывать не тратя энергию. И не уверен, что FPS у e-Ink ниже чем у миландровского :-)

Кстати стоило бы учредить проект замены дисплея на МК-161, представьте себе выбрасываем миландровский дисплейчик и ставим e-Ink, на сколько станет удобнее, меньше сажать аккумулятор и вообще симпатичнее. Хотя ну его, этот МК-161, для экспериментов конечно можно использовать, но ориентироваться на него в дальнейшем опасно. Думаю его производство УЖЕ свёрнуто и СЕМИКО дальше не будет их производить, а если будет то опять на этом 8052, который уже ничем не полезен, ни низким потреблением, ни производительностью. Лучше уж был бы Z80, можно было Jupiter ACE портировать :-)

Уважаемый digitalinvitro, припоминается, нашел неплохой дисплей для своего МК61 в МК51 корпусе

---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/