Кросс-платформенный терминал - SerIO 2.x

Релиз терминала — SerIO 2.2
Изменения:
  1. Исправлено «пожирание» оперативной памяти при выводе данных в форматах SCOPE и CHART.
  2. Оптимизирован алгоритм и скорость прорисовки данных в форматах SCOPE и CHART.
  3. Добавлена функция проверки актуальной версии приложения.
  4. Создан пакет приложения для предыдущих версий Linux(x64) Ubuntu 10,12,14,16,18 и
    других параллельных дистрибутивов — SerIO 2.2 PVL (Previous Version Linux).

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

«SerIO» это кросс-платформенное приложение терминал, предназначено для организации связи и обмена данными через последовательный порт между ПК и различными электронными модулями или устройствами оборудованными UART интерфейсом. Приложение ориентировано на любителей и специалистов в области разработки, конструирования и диагностики различных электронных устройств и систем.

Передаваемые данные могут иметь различные форматы: символьный, десятичный, шестнадцатеричный, бинарный и смешанный, а так же паттерны и произвольные файлы данных. Доступна функция передачи данных в порт по таймеру, с заданным источником и интервалом времени. Принимаемые данные могут отображаться в текстовом виде (символьном, десятичном, шестнадцатеричном, двоичном) и графическом (осциллограмма, диаграмма). Используя профили, можно оперативно изменять настройки приложения под различные задачи и оборудование. Количество создаваемых профилей не ограничено. Для проведения анализа или сбора статистики, предусмотрено создание различных файлов отчетов.


Пример отображения данных в графическом формате
.

Приложение «SerIO» это свободное ПО, распространяется под лицензией GNU GPLv3 или выше, без каких либо гарантий.
Скомпилировано динамически, но включает все необходимые зависимости (библиотеки) для своей работы.
Протестировано на ОС:
     Linux(x64) Ubuntu 20, Mint 20, Fedora 20, Manjaro 32. (Actual)
     Linux(x64) Ubuntu 10, 12, 14, 16, 18. (Previous Version Linux)
     Windows(x32x64) 7, 8, 10.

Инструкция: SerIO-22-manual-RU-Rev1.pdf
Linux: SerIO-22.tar.xz (Actual)     SerIO-22-PVL.tar.xz (Previous Version Linux)
     Распаковать папку SerIO в домашнюю папку пользователя /home/user/ (user — ваше имя),
     Для инсталляции выполнить в терминале: ~/SerIO/install.sh
     Для удаления выполнить в терминале: ~/SerIO/uninstall.sh
     Дополнительная информация в файле: /SerIO/READMY.txt
Windows: SerIO-22.exe
Mac OS: Готовится к выпуску...
Исх. проект: SerIO-22-SourceProject.7z Вопросы по сборке и пр. присылайте в личку или на e-mail.
Хранилище файлов: SerIO archive
  • +5
  • 02 января 2021, 00:00
  • uebe

Комментарии (44)

RSS свернуть / развернуть
Привет. С новим годом!
А ссьілочкой на github не поделитесь?
У меня есть пару идей по добавлению нового функционала, я бьі форкнул ваш проект
0
Приветствую Leon11t.
Я на GitHab еще не «заселялся», исходный проект не стал выкладывать, отправляю по запросу.
А какие у Вас идеи по новому функционалу, если не секрет?..
0
Да сперва по мелочам. Добавить поиск по тексту во всех возможньіх системах исчисления, из подсветкой текста. Логирования в файл (не увидел реализовано ли у вас). Можеш еще виводить им'я вендора СОМ-порта (не номер СОМ1, например Prolific USB adapter), иногда полезно, когда куча всякого оборудования используется из емуляцией СОМ-порта.
Правда я никогда не кодил на QT и незнаю C++.
А если у вас трудности из переносом проекта на github или в целом из пониманием git, то можу немного помочь разобратся
0
Идеи интересные, вполне заслуживают воплощения.
Логирование входящих данных идет не прерывно, в параллельный накопительный приемный буфер. При необходимости сбрасывается в файл в блоке REPORT -> Create As -> «Rx data BIN». Обнуляется, этот буфер, при нажатии кнопки Clear. Все есть в инструкции.
С GitHab-ом просто не разбирался, на все времени не хватает. Но если что, теперь знаю к кому обратиться…
Поставьте Qt, ознакомьтесь со средой, а то нахрапом тяжеловато будет кодить, да еще в чужом коде разбираться. Я ставлю только: QtCreator(среду) + Desktop_Qt_5.15.x_GCCx64(для Linux) или Desktop_Qt_5.15.x_MinGW_8.1.0_32bit(для Windows) и больше ни чего, мне хватает.
0
Я ставлю только: QtCreator(среду) + Desktop_Qt_5.15.x_GCCx64(для Linux) или Desktop_Qt_5.15.x_MinGW_8.1.0_32bit(для Windows) и больше ни чего, мне хватает.
Простите невежду за возможно глупый вопрос. Только недавно приобрел для зспериментов малинку последней 4 версии. Но уже выяснил, что Rasbian заточена под Mono, т.е. NET под Linux. Будет ли работать ваш терминал без установки дополнительных пакетов?
0
Вот честное слово — не знаю.
По идее все зависимости собраны в пакет программы. От Qt framework, точно не зависит. Но вот, на пример, на Ubuntu 16 не работает, сказывается бинарная не совместимость с системными библиотеками, требуется сборка под 16-той версией. Может и тут такая же ситуация…
0
Можеш еще виводить им'я вендора СОМ-порта (не номер СОМ1, например Prolific USB adapter), иногда полезно, когда куча всякого оборудования используется из емуляцией СОМ-порта.
РЕАЛИЗОВАНО ! качаем, переустанавливаем…
VID и PID не стал добавлять, думаю излишне.
0
Крутой софт. Но удивительно видеть, как в 2020-ом году человек программирует без системы контроля версий! и сам собирает бинарники под Линукс!

Вообще, в Линуксе принято пользоваться пакетными менеджерами и библиотеки в домашнем каталоге — супер-дурной тон.

Если бы исходники официально лежали где-то (и не на яндекс-диске, где автоматическое скачивание невозможно), я бы портировал эту софтину на FreeBSD. И добавил в тамошний пакетный менеджер.

Мой вас совет, от программиста к программисту: потратте несколько дней на разбирательства с git'ом. Он, увы, не самый простой (тот жеs ubversion проще) но он — победившая система контроля версий, а разработка с системой контроля версий куда менее гемморойна, чем без. Это реально удобно и развязывает руки, например, для экспериментов.

Удачи на этом пути!
0
blacklion, спасибо за высокую оценку.
Вообще, в Линуксе принято пользоваться пакетными менеджерами и библиотеки в домашнем каталоге — супер-дурной тон.
Согласен, пакетная концепция Linux нарушена и имеет свои последствия. Однако, есть много примеров использования похожего принципа распространения, даже среди «сердитых» производителей софта под Linux, к примеру тот же установщик от Qt. Так же, накладывает свой отпечаток многолетнее пребывание в среде Windows, со всеми вытекающими… Да еще привычка, иметь необходимые мне дистрибутивы для off-line установки(переустановки), мало-ли что :)
Если бы исходники официально лежали где-то (и не на яндекс-диске, где автоматическое скачивание невозможно), я бы портировал эту софтину на FreeBSD. И добавил в тамошний пакетный менеджер.
Я обязательно займусь этим вопросом, в ближайшем будущем, в частности заселением на GitHab. А если кто то поспособствует в портировании и распространении — я буду только рад. Приятно, когда твой труд востребован и приносит пользу другим…
Ну и да, будьте снисходительны, все та-ки это мой первый опыт создания кросс-платформенных приложений на С++ и проба Qt-среды в частности. И на Linux я перешел только в апреле 2020 года. Так что я только учусь :)
0
Первый опыт и такое полезное приложение и непростое! Круто! У вас всё получиться!
0
:) Да нет, не в смысле прям первый. Начинал программировать на Assembler-е под DOS и Win95 (то еще занятие было, писать GUI приложения) потом Delphi, затем много лет на MS Visual Studio C#. И вот решил расширить свой кругозор. Основное мое занятие разработка электроники преимущественно на базе МК, в основном на ARM STM32xxx, софт под МК пишу на Си, Assm использую только в критических ситуациях, а утилиты для ПК пишу по необходимости…
0
Следующий шаг — поддержка USB-RS485 и протоколов с «регистрами» и контрольными суммами пакетов данных типа Modbus и Точка-к-Точке
Modbus Tools: Modbus Poll v9.4.0 & Modbus Slave v7.3.0
Год/Дата Выпуска: 2020
Версия: Modbus Poll: 9.4.0; Modbus Slave: 7.3.0
Build: Modbus Poll: 1407; Modbus Slave: 1402
Разработчик: Witte Software
Сайт разработчика: www.modbustools.com

USBee-PLC-2
0
Ну это уже из области АСУ ТП.
Вы предлагаете разорить, к чертовой матери, производителей специального софта? :)
0
«разоряют» на рутрекере… уж пару десятилетий… до этого разоряли на Осле.
одно дело читать льстивое о своей гениальности в простой задаче, другое понять что это твой уровень и впереди тот же тривиальный Терминал… хотя существует продвинутый логический магнитофон под все популярные последовательные протоколы USBee.
мы так и не сумели своими поделками разорить фирмы… хотя мы и не ставили таких целей
image
исходники… я как то поначалу выкладывал исходники… потом всякие поляко-румыны стали извращать мой исходный код… модернизаторы начали писать про кривость «моей» программы и правильности их реально кривых результатов…
просто прекратил выкладывать исходники и критика исчезла :)
0
Одно дело читать льстивое о своей гениальности в простой задаче, другое понять что это твой уровень и впереди тот же тривиальный Терминал…
Повторюсь. Этот терминал «побочный продукт» перехода в другую среду программирования, т.с. пощупать GUI и т.д… Ни каких глобальных планов на этот проект и рядом не ставил и всяких иллюзий не строил. Пока поддерживаю, для того что бы придать приложению некоторую завершенность. А не как у большинства любителей «по кодить», наляпали и бросили.
Мы так и не сумели своими поделками разорить фирмы… хотя мы и не ставили таких целей.
Из личного опыта, большинство организаций предпочитают иметь дело с продуктами имеющими официальную гарантированную поддержку, а не с дядей «Васей», который сегодня «на колхозил», а завтра пропал и ищи его с собаками, потому что только он знает как все работает.
Исходники… я как то поначалу выкладывал исходники… потом всякие поляко-румыны стали извращать мой исходный код… модернизаторы начали писать про кривость «моей» программы и правильности их реально кривых результатов…
Абсолютно с Вами согласен. Таких персонажей, считающих себя «истиной в последней инстанции», хватает. Я то-же не сторонник выкладывать исходники, начинается бардак и накопление «багов», пропорционально количеству участников в «доработке» :) Выкладываю, в основном, когда проект забрасываю. Основная идея выпуска приложения SerIO под GNU GPL это: самостоятельная сборка под другие платформы, ознакомительные цели в реализации кода под Qt, ну или развитие приложения в других ветках.
0
slackware 14.2 x64


main$ ./SerIO
./SerIO: /usr/lib64/libQt5Core.so.5: version `Qt_5.15' not found (required by ./SerIO)

main$ ls -l /usr/lib64/libQt5Core.so.5
lrwxrwxrwx 1 root root 20 Oct 28 22:19 /usr/lib64/libQt5Core.so.5 -> libQt5Core.so.5.12.8*

main$ pkgls qt5
qt5-5.12.8-x86_64-sl14.2
0
Версия ОС какая?
Программа распакована в /home/user/?
0
Круто! Добавить бы еще возможность кастомного задания скорости на лету (не через конфиг) и управление сигналами квитирования — и было бы вообще огонь! )
0
Поздновато идеи подкинули, я уже опубликовал версию 2.1
Изменение(ввод) скорости «на лету» добавлю в следующей версии. А вот про управление сигналами квитирования — можно по подробнее?
0
ссылку на Яндекс-папку, а не только на отдельный файл,
чтобы можно было видеть и выбирать актуальную версию в папке.
0
вот это:

0
Понятно… Скорее всего, индикацию управляющих сигналов и пр., реализуется с версии 3.x. Планируется переработка интерфейса с использованием авто-масштабируемых контейнеров.
0
github.com/probonopd/linuxdeployqt
Я етим не пользовался, но должно решить проблему из установкой на линуксе
0
браузер у меня тут тупит, поэтому оставлю коммент «как есть»

не запустилось по очевидной причине старая версия кути (другой на sl14.2 уже не будет)
[code]
qt5-5.12.8-x86_64-sl14.2
-->
qt5-5.15.x
[/code]
0
Slackware 14.22 x32
0
Slackware 14.2 x64 / patch
0
sunjob, не знаю чем могу помочь, но я пробовал ставить Qt Creator с GCC 5.15.2 на Ubuntu 16 и собирать SerIO. При этом, количество зависимостей(библиотек) было подцеплено(CQtDeployer) гораздо больше чем под Ubuntu 20 и приложение без проблем работало на Ubuntu 14,16,18 и 20 (x64). Может это Вам поможет? Собрать?
0
да тут проблема в том, что slackware14.2 старая (под нее ментейнеры уже не собирают ни чего из «потока», пилят только slackware14.2+/карент версию), поэтому и версия кутей старая (самому у собирать кути это достаточно геморойно, без гарантий что после нескольких часов/суток танцев это счастье соберется без проблем а на заткнется на чем нибудь, особенно, если «старый стек библиотек/компиялторов»… :o)

установлено
qt5-5.12.8
а нужно
qt5-5.15.х
вот и вся проблема: о)

так бы на 99% все запустилось: о)

спасибо
0
Так, а если я поставлю на Ubuntu16(х64) пакет Qt5.12.х и попробую собрать, правда править код придется… Может быть прокатит, как думаете?
0
ск.всего, прокатит, но… из-за меня одного, думаю, не стоит: о)… ну так, если по человечески…: о) уже сделано более чем: о), есть результат, исходники открыты сообществу, это главное: о)

п.с. если сделаете и у меня запуститься, беру на себя обязательства отрапортовать об все чЁ думаю по этому поводу: о)
0
Попробую, на следующей неделе… Сообщу сюда же…
Да, к тому же многие обращались по поводу пакета SerIO для старых версий Linux, типа Ubuntu 14,16 и параллельных тех годов сборок. Люди по разным причинам не могут перейти на новые версии. У кого то спец. ПО стоит, у других проблемы с «железом» и оборудованием и т.д… А так как люди проявили интерес, к моему продукту, думаю что нужно пойти им на встречу и для меня это будет полезный опыт…
0
Лет так 10-15 назад кьют версий 3 и 4 очень даже хорошо собирался, я собирал в устаревшем уже тогда линуксе (ASP 9.2, ЕМНИП) и в винде.
0
p.s.
причем данная версия сдернута с каррент версии, я пытался адаптировать qt5 из каррент ветки (ну а вдруг прокатит, не факт, нопопробовать следовало)

так то в slackaware 14.2 стоковая кути вообще старая: о)
0
sunjob, поставил на VBox Ubuntu 16 (x64), на нее QtCreator + комплект(5.12.8). К стати, онлайн установка Qt на старые версии Linux-ов больше не прокатывает, собирают под новой платформой, QtCreator не запускается. Пришлось качать и ставить из Qt архива.
Программный код и несовместимость со старым комплектом 5.12.х я поправил, выйдите на меня через e-mail: tvm-system@yandex.ru, я вам на проверку, перед публикацией скину пакет «SerIO 2.2 PVL» (Previous Versions Linux).
0
sunjob, попробуйте: SerIO-22-PVL-Beta.tar.gz (комплект Qt 5.12.8).
0
привет! у менЯ какая-то неэпическая фигня, ни с какого бразера не качается с яндеха

забабахай, плиз, сюдова
dropmefiles.com/
0
Крутая штука, с прошлой версии тут же взял на вооружение. Сообществу очень нужно, 1.9 помер десять лет назад и имеет кучу багов.

+1 к просьбам выложить на гит.
0
Первые впечатления о программе очень хорошие. Вызвал затык только такой момент, что нельзя просто вкл/выкл выбранный порт одним кликом. У меня этот порт используется для своих нужд своей утилитой. И вашей мониторю данные для отладки. Естественно ни та не другая не могут подцепиться, пока предыдущая порт не отпустит. И когда это приходится проделывать несколько раз к ряду, ощущается неудобство в плане заминки на выбор порта. Мне кажется выбор порта, как и скорость можно делать разово. А потом только кнопкой вкл/выкл к нему цепляться.
0
Хорошо, сделаю рядом чек-боксом порта кнопочку…
Скоро будет опубликована версия SerIO 3.0, можно сказать успели в последний вагон перед релизом :)

Поглядывайте эпизодически, ориентировочно через недельку-две.
0
Спасибо большое. И за программу. Теперь одна из основных в моем пользовании. Так и за отклик в плане моих хотелок.
Что касается обновлений. Там в настройках у меня стоит Auto-check version. Если я правильно понял, то программа каким то образом мне сообщит о выходе обновлений?
0
Спасибо большое
Не за что, пользуйтесь на здоровье и другим расскажите! :)
отклик в плане моих хотелок
Ваше предложение вполне заслуживает внимание. Сам не однократно попадал в ситуацию — когда нужно было оперативно «отпустить» порт для программатора и вернуться обратно в терминал. Лишние действия с чек-боксом, в такой задаче, сбивают и тратят время.
в настройках у меня стоит Auto-check version
Да, если Auto-check включен, будет сообщение о новой версии.
0
В новой версии, будет: «ресайз» интерфейс, поддержка двух портовой(канальной) работы с портами и пр…
0
Не очень разбираюсь в терминах. Это случайно не пассивная прослушка com порта? Имеется ввиду снифинг usb/com трафика какого либо девайса общающегося с компом? Я не сильно в тонкостях разбираюсь. Там вроде какой то программный затык в плане того, что ось не дает подцепиться к порту третьему устройству после того как на порту висят два.
0
Это случайно не пассивная прослушка com порта?
Нет. Просто будет возможность работать с двумя устройствами(портами) параллельно, отображая данные в одно окно, с маркерами канала и времени приема данных. А так же отправка в порты, в оба или по отдельности.
Цели не стояло делать всякие «сниферы», этот терминал ориентирован на разработчиков, а не взломщиков :)
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.