Комментарии 43
Ого, какой большой труд вы проделали! Спасибо вам, за труд. И за то, что сделали программу открытой.
А я ради подключения этого программатора windows запускал периодически. Так ещё он капризный, нужно отключать проверку цифровых подписей, чтобы программатора драйвер корректно установился в Windows 10, иначе программатор после установки драйвера не работает. Каждый раз приходится в Windows извращаться, как нужно где-то драйвер для программатора накатить.
На 4pda можно найти китайские подписанные драйвера, кажется. Хотя, возможно, я с EZP2019 путаю.
Действительно, нашёл только что. Спасибо вам за наводку! А я мучался с не подписанными, несколько лет, и даже не знал о подписанных дровах, хотя на 4pda периодически захожу. Не внимательный, дрова с подписью как-то упустил из виду...
Я встречал чипы 25 серии с двумя секторами памяти, основной и OTP, вроде это было в чипах en25qh64 и qh64a-104hip
Шьются они через программу - Neo Programmer
Ваша программа сможет так же? У меня просто под рукой нету этих чипов, так бы сам попробовал. Спасибо.
Я тоже windows запускал только ради программатора и разлочки USB-4G-свистков от оператора. Кстати HUAWEI calculator я также перетащил в Linux. Сейчас жду с Али программатор на CH347 - по виду такой-же, но обещают гораздо выше скорость чтения/записи.
/
Да, он уже ползет из Китая. Жду.
а может перейти на ch347 -- там SPI побыстрее? https://github.com/aystarik/ch347_vcp
Да, он уже ползет из Китая. Жду.
Поищите в сети описание "serial flash discoverable parameters" (SPI sfdp). Сможете наполнять базу информацией о секторах и т.п. прямо из ИМС.
Очень интересно, спасибо!
Собранные пакеты это хорошо, но может быть возможно засунуть это дело в ppa или snap?
Про ppa думаю, под Red Hat / Fedora / Centos можно использовать репозиторий РЕД ОС http://repo.red-soft.ru/redos/7.3/x86_64/updates/
Не знаю, может поможет. Я когда-то по этой инструкции делал https://assafmo.github.io/2019/05/02/ppa-repo-hosted-on-github.html менин там что-то пришлось переделывать, но незначительно
sudo add-apt-repository ppa:bigmdm/imsprog
sudo apt update
Большое спасибо автору за проделанную работу
Будем пробовать применять в нашем проекте https://openipc.org
Попробовал установить как пакет на Debian и бысто не получилось.
Что-то хочет, а непонятно что.. ;)
./IMSProg: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.12' not found (required by ./IMSProg)
./IMSProg: /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5' not found (required by ./IMSProg)
./IMSProg: /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5: version `Qt_5' not found (required by ./IMSProg)
./IMSProg: /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5: version `Qt_5' not found (required by ./IMSProg)
linux-vdso.so.1 => (0x00007ffc6afb5000)
libQt5Widgets.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5 (0x00007fcac899e000)
libusb-1.0.so.0 => /lib/x86_64-linux-gnu/libusb-1.0.so.0 (0x00007fcac8786000)
libQt5Gui.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Gui.so.5 (0x00007fcac823e000)
libQt5Core.so.5 => /usr/lib/x86_64-linux-gnu/libQt5Core.so.5 (0x00007fcac7d68000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fcac79e6000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fcac77d0000)
Qt_5.12' not found - Странно. Я прописывал в требованиях к пакету предварительную установку QT5. Попробуйте sudo apt-get install qtbase5-dev
Если не трудно, наберите в терминале qmake --version
Очень интересно знать версию QT в системе.
Именно qtbase5-dev меня попросила система установить, при установке пакета
А без гуев оно умеет?
Без гуев есть SNANDer - https://github.com/McMCCRU/SNANDer и ch341a Prog https://github.com/setarcos/ch341prog для SPI
Appimage лежит здесь: https://github.com/bigbigmdm/IMSProg/tree/main/release/build
Покопавшись в коде я обнаружил ошибку в программе SNANDer при
инициализации программатора в режиме работы с микросхемами серии 24Сxxx.
Потом я нашел еще одну ошибку с порядком следования байт при записи и
чтении микросхем MicroWire - 93xxx в 16-битном режиме. Так я понял, что
придется писать программу самому.
Плюс вам за то, что отправили Pull Request-ы с обновлением базы данных чипов в SNANDer, но вот обоснование необходимости писать свою программу какое-то слабенькое. То есть в существующем решении проблема была найдена и локализована, было понятно как её поправить. Признайтесь честно, реальная причина "потому что могу", тут никто не осудит %)
Спасибо огромное за софтину. Прошивка флэшек это была больная тема ради которой приходилось лезть в винду чтобы запустить NeoProgrammer. В линухе же эта тема была просто бедой: flashrom хоть и определяет сам, но требует ему вписать название флэшки, понимает очень ограниченный список флэшек. Вы решили эту проблему. За два десятилетия это оставался один из последних вопросов, ради которого приходилось возвращаться к винде. Надеюсь больше ее больше не увидеть.
Я открыл тикет с пожеланием иметь "Недавние файлы" и чтобы запоминалась последняя рабочая директория в выборе прошивки. В процессе пользования еще пришла мысль, что не хватает лога действий как в NeoProgrammer где можно видеть CRC обработанных прошивок.
ЗЫЖ На Gentoo скомпилилась с полпинка без каких либо проблем.
Спасибо, Сергей. На сегодняшний день я посоветую Вам просто добавить symbol link на Вашу папку (ответил Вам на GitHub). Просто сейчас я бьюсь головой о стену - пытаюсь выложить программу на launchpad.net (UBUNTU) https://launchpad.net/imsprog и пока без результата. Исходный код выложил и уперся в необходимость создания DEB-пакета исходного кода. Если бы кто помог - был бы счастлив.
Достойный труд. +В карму. Есть только предложение к автору (поскольку программы написаны для GNU Linux):
переименовать все бинарники так, чтобы они записывались маленькими буквами и без символов подчеркивания: IMSProg -> imsprog, IMSProg_editor -> imsprog-editor
скрипт IMSProg_database_update.sh переименовать и поместить в /usr/sbin/imsprog-update-database (без расширения имени файла), сделать его исполняемым и убрать из него вызов zenity. Дело в том, что правами пользователей можно управлять посредством /etc/sudoers, и в таком случае лишние программы, которые всего-то вызывают диалоговое окно для ввода пароля не нужны. Тем более что IMSProg использует QtBase, а zenity - относится к утилитам Gnome/GTK (не надо тащить лишнее).
базу /etc/IMSProg.Dat переместить /usr/share/imsprog/chips.dat (так чтобы имя файла само говорило о том, что это база микросхем), ведь это архитектурно-независимый формат и, кроме того, это не конфигурационный файл, а всего лишь база и в /etc ему не место.
скрипт /usr/sbin/imsprog-update-database может выглядеть, например, так
#!/bin/sh
IMSPROG_DB_PATH=/usr/share/imsprog
IMSPROG_DB_URL=https://antenna-dvb-t2.ru/dl_all/chips.dat
( cd ${IMSPROG_DB_PATH} && wget ${IMSPROG_DB_URL} )
а значение URL и имя каталога /usr/share/imsprog фиксировать на этапе конфигурирования исходников с помощью CMake, используя, например шаблон для подстановки фактических значений
/usr/sbin/imsprog-update-database.in :
#!/bin/sh
IMSPROG_DB_PATH=@IMSPROG_DB_PATH@
IMSPROG_DB_URL=@IMSPROG_DB_URL@
( cd ${IMSPROG_DB_PATH} && wget ${IMSPROG_DB_URL} )
Еще есть пожелание сделать так, чтобы прогаммой imsprog можно было пользоваться без графического интерфейса, например, с томощью управления --no-gui
/bin/imsprog --no-gui ....
https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
Как будет время сделаю пакеты для Slackware и RcL.
Поздно заметил комментарий, часть из этого уже сделана. Остальное приму к сведению и потихоньку буду внедрять. Большое спасибо! Много полезных предложений!
С 24 ноября доступен репозиторий UBUNTU
`sudo add-apt-repository ppa:bigmdm/imsprog`
Добавил man руководства, убрал все предупреждения и ошибки lintian, отправил запрос RFS в Debian https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1057076
Ver. 1.1.3 - Исправлена ошибка при загрузке файла, размер которого отличается от объема микросхемы.
Ver. 1.1.4 - Изменена процедура стирания SPI, удалены неиспользуемые процедуры SPI. Исправлено падение программы при чтении/записи чипов большого размера (25Q256/25Q512). Определение пути к udev при инсталляции с помощью pkg-config. Немного ускорена работа программы за счет удаления лишних процедур вывода информации в терминал.
IMSProg — программатор для CH341a в Linux