Ethernet to rs232 linux

Содержание
  1. /dev/blog
  2. 25 июн. 2013 г.
  3. Проброс последовательного порта по сети в Linux (serial over ip)
  4. Ссылки
  5. Входные данные
  6. Способ 1: socat
  7. Способ 2: RFC 2217
  8. Сервер
  9. Клиент
  10. TTYredirector
  11. Способ 3: Serial to Ethernet Converter
  12. Протокол для общения по serial порту.
  13. Fedora 28 и moxa uport 1150.
  14. Не могу заставить работать USB RS232 converter
  15. Mochip 9865 RS-232 на Centos 7
  16. RS232 через ethernet
  17. Проброс последовательного порта
  18. Актуальность ноутбука с com портом
  19. USB-RS232
  20. Алгоритм обработки экранирующих символов при работе с последовательным портом.
  21. Каким образом скорость tty 38400 это baud:2258?
  22. Linux Mint 13 и APC SC620.
  23. USB -> RS-232 ломает ответ устройства
  24. QinHeng Electronics HL-340 USB-Serial adapter (USB-to-COM)
  25. sftp через UART
  26. Выбор кабеля для RS-485
  27. Перестал грузиться драйвер для USB-RS после установки setserial
  28. Кнопка на com-порте. Какие два контакта RS-232 DE-9 надо замкнуть?
  29. Помогите новичку.
  30. Как пробросить com порты (RS-232) с компьютера под управлением debian linux на компьютер под управлением ms windows
  31. RS232 через ethernet

/dev/blog

25 июн. 2013 г.

Проброс последовательного порта по сети в Linux (serial over ip)

Ссылки

Входные данные

Способ 1: socat

Самый простой способ – использовать socat. С его помощью можно соединить последовательное устройство и сокет.
На server создаем сокет на tcp-порту 12345, привязанный к /dev/ttyS0 :
На client создаем виртуальный терминал в /dev/pts/N и привязываем его к сокету server:12345 :
При такой схеме передаются данные, но не управляющая информация. Настройка виртуального терминала на хосте client никак не отражается на реальном терминале на хосте server. Это значит, что приложения, которые используют ioctl(2) или termios(3) , не будут работать так, как ожидается.

Способ 2: RFC 2217

Сервер

  • ser2net
    ser2net реализует телнет-сервер RFC 2217.
    Запускаем на хосте server на порту 23:
    ser2net можно также запускать в режиме демона или с помощью inetd .

  • sredird
    sredird – другая реализация сервера RFC 2217. Он лучше совместим с клиентом cyclades-serial-client .
    Запускаем на хосте server на порту 23 с помощью netcat:
    sredird можно также запускать с помощью inetd .

  • sercd
    sercd – еще одна реализация. Он основан на sredird .

Клиент

  • telnet
    После запуска сервера к удаленному терминалу можно подключиться по телнет:

  • ckermit
    Вместо telnet можно использовать C-Kermit, который поддерживает RFC 2217:
    С ним помимо телнет будут также доступны команды для конфигурирования порта.

  • cyclades-serial-client

    cyclades-serial-client – клиент для сервера RFC 2217. Он работает с помощью трюка с LD_PRELOAD .

    Для каждого удаленного терминала создается:

    1. Виртуальный терминал /dev/pts/N .
    2. Символическая ссылка на него /dev/NAME .
    3. Локальный сокет /dev/NAME.control .

    Затем пользователь с помощью LD_PRELOAD может заставить приложение, использующее терминал /dev/NAME , перенаправлять вызовы ioctl(2) и tcsetattr(3) в сокет /dev/NAME.control , откуда они будут прочитаны демоном cyclades-ser-cli и отправлены в удаленный терминал.

    Настраиваем конфиг клиента /etc/cyclades-devices (без этого не будет работать трюк с LD_PRELOAD ):
    Запускаем демон, обслуживающий виртуальный терминал:
    Можно также запускать демон с помощью cyclades-serial-client .
    Проверяем передачу данных:
    Cообщение hello должен получить тот, кто подключен к порту /dev/ttyS0 на хосте server .
    Проверяем настройку baud rate :
    На хосте server у терминала /dev/ttyS0 должно обновиться значение:
    У меня этот клиент работает с сервером sredird , но не работает с ser2net .

    Другие проблемы:

    • Не все параметры ioctl() реализованы.
    • Подход с использованием LD_PRELOAD для ioctl() и tcgetattr() работает не для всех приложений. У меня так и не заработала команда setserial(8) .

  • Network Virtual Terminal
    nvtty – это драйвер ядра, реализующий виртуальный терминал, перенаправляющий все запросы удаленному серверу RFC 2217. Патч основан на cyclades-serial-client .

    And this is still something that should be done in userspace if necessary
    by fixing up the tty layer to support pty/tty pair modem lines and
    termios change reporting, or some kind of generic vt that can also
    expose all the config other net protocols might need.

    TTYredirector

    Способ 3: Serial to Ethernet Converter

    Serial to Ethernet Converter – устройство, преобразующее RS-232 (и/или другие протоколы) в Ethernet и обратно.

    Есть как минимум два производителя, поставляющие вместе со своими преобразователями драйвер для Linux, который создает виртуальный COM-порт и перенаправляет все запросы к нему в сеть:

    • Tibbo VSPDL (Virtual Serial Port Driver for LINUX)
    • Perle TruePort

    Источник

    Протокол для общения по serial порту.

    Хочу сделать адаптер Can2Usb на основе esp32 + mcp2518fd. Данные хочу прокачивать через rs232. На большинство плат сейчас стоит достаточно скоростной адаптер типа cp2102N со скоростью до 3мб. Поток который надо прокачивать будет около 1.5-2 мб. Есть ли какие-то стандартные протоколы для работы по serial? Я пока просто protobuff прямо в бинарном виде передаю с разделителями.

    Fedora 28 и moxa uport 1150.

    Есть у меня moxa uport 1150 — преобразователь usb rs232. Для него нужно ставить ядерный модуль. Пробовал дрова:

    Ни один вариант не работает. На modprobe говорит:

    Пробовал ставить dkms’ом и простым make install’ом. Разницы в поведении нет.

    Драйвер для moxa > 1450 в блэклисте:

    В чём ещё может быть проблема?

    Не могу заставить работать USB RS232 converter

    Не могу подключиться драйвером к ККТ на Linux при помощи COM порта.

    Для этого использую адаптер USB-RS232

    На windows все хорошо и проблем нет, но на linux (ubuntu, debian) тест драйвера не находит связь и все. Что я делаю не так? Помогите пожалуйста.

    В настройках тест драйвера

    Повторюсь, rs232 — переходник на usb на Windows работает нормально, а тут при любом запросе на линукс Нет связи. Мне очень нужно сделать это.

    Обычный usb передает данные в офд, а мне нужен доступ именно через ком порт, потому что чеки печатаю при помощи написанной программы на Python

    Может вы подскажете в чем дело?

    Mochip 9865 RS-232 на Centos 7

    Добрый день. Использовал я плату расширения com портов Mochip 9865. В Centos5-6 c заводским драйвером и всё было «пучком». Но вот решил проверить на Centos 7.3(x64) 3.10.0-514.el7.x86_x84 1.Он самостоятельно находит (не используя заводской драйвер) это оборудование и «отмапивает» его в /dev/ttyS1(2,3,4..N) в заводском было /dev/ttyD1(2,3) 2.И вроде бы хорошо драйвер производителя ставить не надо. НО работает оно не так как хотелось. Первое чтение из порта после загрузки всегда с мусором. Следующие нормально. Например присоединил я сканер штрихкода rs-232..После перезагрузки сканирую(пикаю),- штрихкод с мусором. дальше сканирую всё номально. Виноват не Centos 7 /другие rs-232(ну например что на плате) работают сразу отлично. Такое поведение Mochip 9865 сильно снижает сферу его использования в Centos 7. Может кто-то знает как заставить форсированно линукс не использовать собственный драйвер, а использовать заводской.mcs9865.ko(Естественно modprobe mcs9865 ничего не даёт..ибо устройство занято «своим» драйвером.) P.S писал в тех.поддержку пока молчат.

    RS232 через ethernet

    Кто-нибудь пробрасывал rs232 через ethernet на linux? Мне нужно удаленный ups прикрутить к мониторингу, а в нем только com-порт.

    Проброс последовательного порта

    Можно ли пробросить последовательный порт в виртуальную машину так, чтобы работал переходник RS-232/1-Wire?

    Актуальность ноутбука с com портом

    По личному опыту, может ли реальный com порт на ноутбуке дать какое-то преимущество по сравнению с переходниками (usb rs232 to RJ45 и др.) для каких-либо компьютерных задач? Например, для обслуживания сетевого оборудования. В каких случаях?

    USB-RS232

    При подключении преобразователя USB-RS232

    AT+GCAP) на различных скоростях. Последняя проверяемая скорость передачи данных

    Алгоритм обработки экранирующих символов при работе с последовательным портом.

    Помогите пожалуйста с алгоритмом. Предложили на собеседовании дописать в следующем коде цикл
    обработки экранирующих символов при приеме данных из последовательного порта.
    Кроме того в конечном хранилище response должен находится принятый пакет, который начинается с байта PACKET_BYTE_START (неэкранированного).
    То есть перед каждой обработкой в массиве buf[512] будет находится bytesReaded количество прочитанных из порта байт не обязательно с начала пакета естественно,
    и из этого массива нужно будет удалить экранирующие байты PACKET_BYTE_ESC (если они не являются полезными данными).

    При таком раскладе в цикле for (size_t i = 0; i rs-232, алгоритмы, си, собеседование

    Каким образом скорость tty 38400 это baud:2258?

    Подключился к debug-консоли устройства

    Каким образом 2258 это 38400?

    Linux Mint 13 и APC SC620.

    Ребят, всем доброго время суток. Имеется машина под управлением Linux Mint 13 XFCE и ИБП APC SC 620, данный ИБП подключен к Linux через RS232 кабель. Подскажите с помощью какого софта мне можно общаться с моим ИБП? Знаю у APC есть PowerChute, но есть ли у них версия под Linux? Или же есть достойные альтернативы? К вопросу с софтом отношусь серьезно, так как помимо тонких настроек, я собираюсь вести инфографику о своем питании (к примеру хочу посмотреть как скакало напряжение в течении дня, или же недели), знаю PowerChute так умеет, а так же было бы плюсом, если софт умеет отправлять уведомление.

    USB -> RS-232 ломает ответ устройства

    Привет! Прибор (осциллограф) подключается к ПК через

    Использую переходник PL-2303 XA/HXA от Prolific, драйверы взял с прилагающегося диска.
    Кто-нибудь сталкивался с таким поведением этого (или другого подобного) конвертера? В какую сторону копать? Спасибо!

    QinHeng Electronics HL-340 USB-Serial adapter (USB-to-COM)

    Сабж на aliexpress. Удалось кому заставить работать сию поделку? Ubuntu 14.04.3 LTS. Kernel: 3.13.0-63-generic #103-Ubuntu SMP Fri Aug 14 21:42:59 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

    Подключил шнурок к свитчу, запустил minicom, а там кракозябры. Другой шнурок на чипе PL2303 работает без вопросов. Под Win8 после установки драйверов шнурок работает.

    Собрал, загрузил ch34x, выгрузил старый модуль ch341, запустил minicom. Ситуация почти не изменилась, но добавились иероглифы в выводе. ;D Скриншот

    sftp через UART

    Добрый день. В линуксе я не силен и сталкиваюсь с ним очень мало.

    Есть отладочная плата с линуксом, общение с платой происходит по ком порту. Putty отлично к нему подключается и можно полазить по директориям скомпилировать проект запустить, но это жутко не удобно. Вопрос как загрузить файл в определенную директорию с компьютера?

    sftp не умеет подсоединяться к ком портам(как и прочие программы) так как это ком порт то это не полноценный SSH.

    Буду благодарен за любые мысли и идеи!

    Выбор кабеля для RS-485

    Нужен кабель для укладки в землю, с защитой от грызунов. Будут передаваться данные со счётчика меркурий по стандарту RS-485. Посмотрел, выбор довольно большой, начиная с какого нибудь спец. кабеля КИПвЭВБВнг(А)-LS и кончая витой парой hyperline FUTP4-C5E-S24-ARM-OUT-PE-BK. Вот не знаю что подобрать. Да, кабель ещё должен быть экранированный, так как рядом проходит силовой на 15 кВт.

    Какой лучше выбрать?

    (тег поставил rs-232 так как rs-485 не было)

    Перестал грузиться драйвер для USB-RS после установки setserial

    Есть такая железка MOXA UPort 1150. Необходимо использовать ее под линуксом. На офф сайте драйвер не нашел, но нашел на форуме офф сайта.

    Читаю далее man по использованию этой железки — пишут выстави режим работы с помощью команды setserial. Ну что тут делать, в репах есть — естественно гружу (из пакетов только один добавился и ничего не удалялось). Далее ребутаюсь и пытаюсь заново загрузить модуль. Модуль не грузится.

    Пытался пересобрать модуль. Пересобирается, не грузится. Пытался удалить setserial. Один фиг грузиться не хочет. Вот хочу спросить, что именно могло произойти при установке setserial и как все-таки заставить работать этот модуль? Или хотя бы, как откатить назад?

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

    Кнопка на com-порте. Какие два контакта RS-232 DE-9 надо замкнуть?

    Какие контакты порта замкнуть что бы принять много единичек? Задача запускать скрипт по нажатию кнопки.

    И как настроить com-порт для этого?

    Помогите новичку.

    Здравствуйте. Помогите с настройкой com порта. На работе используем обмен данными по com порту. Также используем опторазвязку, которая питается от RTS(ready to send) com порта. Программы, которые я писал до сих пор на windows прекрасно работают. Я имею возможность программно задать уровень этого сигнала для питания опторазвязки. Хочу перейти на разработку под linux, выбрал ubuntu. И вот первая же проблема.Чтение запись по порту работают, но при подключении оптики я ничего не могу. Есть ли возможность выставить уровень RTS в ubuntu? И как это сделать?

    Как пробросить com порты (RS-232) с компьютера под управлением debian linux на компьютер под управлением ms windows

    На работе понадобилось всё реорганизовать, ибо до меня настраивал сеть и компьютеры инвалид третьей степени, его на полном серьёзе увезли в психиатрическую клинику. До него компьютеры настраивал повёрнутый на религии баптист который забивал на работу и славил господа. А да него человек просто спился. Теперь там работаю я.

    Есть программа «Мираж» от НПП «Стелс» http://nppstels.ru/products/pcn/software-pcn/ эта программа через GSM-модемы держит связь с охранными устройствами. Для хранения событий и конфигурации объектов, программа использует PostgreSQL . Как я понял сам и подтвердил это в разговоре со специалистом службы технической поддержки, периодические мистические неисправности возникают от того что все компоненты системы (сервер, база, клиент) поставлены на одном обычном компьютере. И не на диске «C», а на диске «D».

    Базу данных я перенесу на linux-сервер, это не так уж и трудно. Но, модемы расположены в диспетчерской которая уже забита компьютерами и отдельный системный блок для сервера, ещё более стеснит там обстановку. Поэтому думаю перенести модемы модемы на второй этаж. Но если поставить сервер на втором этаже, то все офисные крысы взвоют от того что я их стесняю и к тому же второй этаж на ночь запирают. А если понадобиться иметь доступ к серверу, то будут большие трудности.

    В идеале хотелось бы расположить на верху модемный сервер на linux (что бы точно не зависал). То есть сервер со множеством com-портов. А на windows серверах использовать те порты удалённо через локальную сеть. Так же это могло бы позволить легко переключить GSM оборудование на резервный сервер.

    Подскажите мне какие нибудь способы это сделать?

    Источник

    RS232 через ethernet

    Кто-нибудь пробрасывал rs232 через ethernet на linux? Мне нужно удаленный ups прикрутить к мониторингу, а в нем только com-порт.

    Для этого есть готовые девайсы. В чём проблема?

    пью чай. положил клубничное варенье вместо сахара. не очень-то и вкусно. а с вишнёвым вкусно.

    Есть серверная, есть удаленный узел со свитчем и ups с com портом. Как привязать этот ups к Nut в серверной?

    google: rs232 ethernet adapter или converter

    Мне нужно удаленный ups прикрутить к мониторингу

    Moxa NPort, как тут уже писали. Я использовал. Но надо драйвер под ядро собирать. Соответственно, могут быть определённые неудобства.

    Может таки через RJ45 а не через «ethernet»?

    Есть и через RJ, есть и через FC, а бывают медиаконверторы и ethernet.

    Есть и через RJ, есть и через FC

    У автора? Откуда инфа?

    некоторые неудобства. Под 4 ядро драйверов так и нет.

    что обслуживает ups?

    google: rs232 ethernet adapter или converter

    Ради одного порта это всегда очень overpriced.

    Если б это была задача прокинуть информацию, бегающую по компорту, то хоть и громоздкое, но было б решением. Но, для не smart-UPS, где сигналы идут не по данным, а тупо по сигнальным линиям, это решение не годится. В прочем, как и многие другие предложенные тут.

    Не у автора, а вообще. Автору надо через эзернет. Какой-нибудь nport, modbus, у моха есть на все случаи жизни.

    Инфа про медиаконвертеры? Приходилось работать с этими железками. Например делать двумя rs232-FC гальваническую развязку для фискальных принтеров. Иначе в контроллерах порты выгорали. Потом делали такую же развязку через rs232-RJ c оптотронной развязкой. Или например подключать комп к экрану в нескольких километрах через оптоволокно. Там использовался VGA-FC.

    Про то, что есть у автора. По-моему вопрос сформулирован так, что напрашивается RJ45-COM-USB адаптер в сервер и UTP до UPS’a

    Откуда ты знаешь, что надо автору? Ты телепат?
    На мой взгляд вопрос сформулирован так, что надо из RS-232 в медиаконвертер, медиаконвертер в коммутатор, который и воткнут в этот самый ИБП. И ИБП может быть сильно дальше ста метров.

    По сравнению с бесплатной программной эмуляцией — это всё равно бесконечно дорого. 🙂 Тем более, что если это УПС, то воткнуть в ближайший сервер явно не помешает, а потом уже шарить управление питания даже без эмуляции, а правильным образом.

    Ближайший сервер может быть за сотню километров. Автор же не указал конкретно условия эксплуатации.
    Может это точка регенерации в оптическом кабеле и там кроме коммутатора, ИБП, да кросса ничего нет.

    RS232 через ethernet (комментарий)
    Есть серверная, есть удаленный узел со свитчем и ups с com портом. Как привязать этот ups к Nut в серверной?

    Пока километраж до «удаленный узел» не будет указан, фантазировать не о чем.

    PS: но я б просто заменил ИБП на модель с ethernet. Им и управлять можно и логи забирать удобнее и в случае отсутствия связи с ним логи никуда не денутся.

    Типичный вопрос нуба забаненого в гугле, иначе была бы дополнительная информация (например, почему надо именно over-ethernet, а не over-ip)

    Ближайший сервер может быть за сотню километров.

    Вы явно не распарсили: «Тем более, что если это УПС».

    И таки да, если это Симметра на 100 кВт и за 30 метров от ближайшего сервера, как у нас, то там вы и компорт то не найдёте. Хоть за модули snmp eth и дерут бешенные деньги, на фоне стоимости УПСа оно выглядит бесплатно.

    Вы явно не распарсили: «Тем более, что если это УПС».

    Задачи не было. Тут бы правильно распарсить что автору темы хочется.

    Если сравнить с потраченным временем на кустарное решение, то окажется, что готовое решение гораздо выгодней.

    Смотри в сторону железок Wiznet — дешево и сердито

    Задачи не было. Тут бы правильно распарсить что автору темы хочется.

    Блин, а два коротких предложения ТСа слабо прочитать?

    Я собственно почему в курсе решения, так как я его сделал, у меня полтыщи клиентов так работали, псевдомодем по tcp/ip, а уже через него сертифицированный vpn с версией только через GRE, потому не могущий у всех клиентов работать непосредственно. Объяснять сотням клиентам как открывать GRE или что-то покупать — весьма неумно.

    Штучное решение vs. конвейер тоже роль на цену играют. 😉

    Автор задал простой вопрос, решение которого очевидно. К чему весь этот флуд?
    NUT (Network UPS Tools) никто не использует что-ли?

    • Подключаешь UPS к локальной машине с linux по com порту
    • Устанавливаешь на нее NUT и настраиваешь в режиме

    Понятное дело, что надо еще настроить драйвер ups и есть ли он для конкретной модели — не известно.
    Я прикручивал только SmartUPS от APC (разные мождели) по com и по usb.
    По NUT манов очень много в интернетах.
    Я прикрутил еще smssend + GSM мопед для отправки смс в особо критических случаях.
    Если нет компа рядом с UPS, варианта 2:

    • Поставить его ))) (всяко дешевле старенький десктоп, чем решения от Moxa или Aten).
    • KVM Com over IP от вышеуказанных производителей.

    Я использую 16-ти портовый Aten SN0116. Технология такая: Подключаешь его к локалке и все UPS-ки по com портам.
    На удаленной linux машине устанавливаешь драйвер от Aten (как модуль ядра, правда максимум 3.11 поддерживается).
    Потом с помощью этого драйвера создаются виртуальные девайсы — /dev/ttya00X и мапятся к IP:port данной железяки.
    NUT-у скармливаются данные девайсы как локальные UPS-ки.

    Источник

    Читайте также:  Как запустить windows без видеокарты
Оцените статью