12.07.2019 19:59
Occul
 
Напомню, что в сети то ли сами Штрихи, то ли аффилированные специалисты дают ссылку на опенсорсную dfu-util и упоминают линукс в качестве платформы, пригодной для обновления. Но вот подробностей я не нашёл.

Поскольку есть нюансы, маленькое howto:

Обновление прошивки ШТРИХ-ON-LINE под Linux

Использовался старый комп с установленной ОС: 4.15.0-50-generic #54~16.04.1-Ubuntu (Ubuntu 16.04 LTS x64).
Все обновления установлены.
Всё операции проводились только через vnc и ssh.
На компе есть 2 юзера, админ и обычный (продавец в реальности на торговой точке).
В моём случае нужен тест драйвера на раб.столе продавца, поэтому у меня wine установлен в профиле "продавца" (wine ставится под каждого юзера отдельно, да, есть префиксы, но мне так удобнее) и запускаю я его под "продавцом"

1. Подключаемся к машине через vnc, устанавливаем DrvFR_4.14_749.exe (нужна только первая галка в опциях установки)

Тут без разницы, работать через vnc или ssh, что удобнее.
2. Добавляем юзера в группу dialout: sudo adduser <your_username> dialout
3. Прописываем ком-порты для wine:
смотрим порты:
sudo dmesg | grep tty
Наш VCOM (касса должна быть не в режиме RNDIS!) должен первично определиться как ttyACM0.
Прописываем под юзером из под которого будем запускать Тест драйвера!
Прописываем: ln -s /dev/ttyACM0 ~/.wine/dosdevices/com1
и запасной (потом появится): ln -s /dev/ttyACM1 ~/.wine/dosdevices/com2
Открываем "реестр" и прописываем в нём: nano ~/.wine/system.reg
сразу после #arch=win64 добавить:
[Hardware\\Devicemap\\Serialcomm] 1231984861
"Serial0"="COM1"
"Serial1"="COM2"
На этом настройка wine закончена, но необходимо перелогинить юзера из-за добавления его в группу dialout. Выходим и заходим заново.

4. Теперь dfu-util. Скачиваем только один файлик dfu-util по ссылке:

Можно из консоли, можно закинуть через scp, как удобнее.
Теперь туда же надо закинуть файл прошивки.
Я работал через ssh под админ аккаунтом.
переходим в рабочую папку: cd /dfu
Всё готово.

Теперь сама прошивка.

Одно окно ГУИ через vnc с залогиненным "продавцом", другое окно ssh c залогиненным админом (в правами sudo). Можно делать всё из vnc, там открыть терминал и стать админом (su admin/root и т.д.)
5. Запускаем Тест драйвера, настраиваем подключение: COM1/115200. проверяем - Проверка связи.
6. Сохраняем таблицы: Таблицы-Импорт/Экпорт-Прочитать-Сохранить
7. Переходим в раздел 17.Прочее - Команда. Вводим "FE ED 00 00 00 00" без кавычек, - Передать. касса переходит в режим DFU и зажигает красную лампочку на 30 сек.
8. Переключаемся в окно терминала и вводим: sudo ./dfu-util -D upd_app.bin
У меня выдало следующее:
Код:
dfu-util 0.8

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to 

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 1fc9:0089
Run-time device DFU version 0100
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 0100
Device returned transfer size 2048
Copying data from PC to DFU device
Download        [=========================] 100%       491520 bytes
Download done.
state(2) = dfuIDLE, status(0) = No error condition is present
Done!
9. У кассы красная лампочка начинает мигать, кассе требуется техобнуление.
На этом этапе прежний USB-интерфейс отваливается, появляется второй с новым идентификатором - ttyACM1. Для этого мы прописывали COM2 выше.
Переключаемся в Тесте драйвера в настрйоки и выставляем COM2/4800. Проверяем связь.
10. Выполняем техобнуление. Настройка свойств - Сервис - пункты 01,02,03
11. Переключаемся в Тесте драйвера в настрйоки и выставляем COM2/115200. Загружаем обратно таблицы Таблицы-Импорт/Экпорт-Открыть-Записать.
12. (В моём случае) Переключаем USB обратно в RNDIS режим для нормальной работы магазина. Если не нужно, то после перезагрузки надо перепрописать настройки на COM1.

https://storage.olegon.ru/supermag/u...07/dfu-util.7z
(0,11Мб)
24.07.2019 02:47
Occul
 
Штрихи, красавцы, изгадили Тест драйвера, крайняя версия DrvFR_4_14_772 не работает под Wine.
Так что пользуемся 749-й, другие между этими не проверял.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.