amaranth
-
Posts
16 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Posts posted by amaranth
-
-
Не появилось пока более новой версии?
-
7 минут назад, Незнайка сказал:
После добавления устройства:
Adding Server...
ttyr00, cur00
Added RealCom server: ip : 10.96.1.89mknod -m 666 ttyr00 c 33 0
mknod -m 666 cur00 c 38 0
Complete.Как посмотреть вывод с порта? На нем данные постоянно поступают от устройства.
Команда stty -F /dev/ttyr00 9600 ничего не выводит, просто закрывается без ничего.
-
Хотя почему в np_ver.h #define NPREAL_VERSION "Ver1.19.9" а сам файл обозначен как 1.9.11 ?
-
7 минут назад, Незнайка сказал:
Если не сложно, дайте сначала листинг установки исходного драйвера.
C 1.9.11 (хотя почему в np_ver.h #define NPREAL_VERSION "Ver1.19.9" ?) вроде получилось:
./mxinst m64
===============================================================================
Copyright (C) 2002-2019 Moxa Inc.
All Rights Reserved.MOXA NPort Server Real TTY Driver Ver1.19.9 Installation.
System Information: Kernel 5.2.7-200.fc30.x86_64; Machine x86_64.
===============================================================================
Building driver...If you want to use secure communication with target,
you might choose [y] to enable the SSL function.
Note: This function support RealCOM with secure mode only.
Do you want to enable secure function? [y/N].
N
make -C /lib/modules/5.2.7-200.fc30.x86_64/build M=/tmp/moxa modules
make[1]: вход в каталог «/usr/src/kernels/5.2.7-200.fc30.x86_64»
Building modules, stage 2.
MODPOST 1 modules
make[1]: выход из каталога «/usr/src/kernels/5.2.7-200.fc30.x86_64»
cp -p npreal2.ko /lib/modules/5.2.7-200.fc30.x86_64/kernel/drivers/char/
depmod -a
Check Driver...
Copying configurations files ... OK!
Copying driver files ... OK!
Load driver...
OK!Loading TTY Driver...
Complete.===============================================================================
Installation process is completed.
The all driver files are installed on /usr/lib/npreal2/driver.
Now you can cd /usr/lib/npreal2/driver and run ./mxaddsvr to add tty port.
=============================================================================== -
Только что, Незнайка сказал:
Попробуйте 1.9.11 из соседней темы. Может с ним получится
Предварительно его изменив с учетом макроса access_ok, как я сделал ранее ?
-
1 минуту назад, Незнайка сказал:
Имелся в виду номер с корпуса, в формате ABCDE1234567. Спасибо.
К сожалению не могу пока посмотреть. До нее дойти надо. Без этого SN мне не видать драйвера 1.19.11 ? Спасибо.
-
11 минут назад, Незнайка сказал:
Добрый день. Зачем включаете защищённый обмен? Какой у вас NPort?
Без включения защищенного обмена тоже самое:
./mxinst m64
===============================================================================
Copyright (C) 2002-2017 Moxa Inc.
All Rights Reserved.MOXA NPort Server Real TTY Driver Ver1.19 Installation.
System Information: Kernel 5.2.7-200.fc30.x86_64; Machine x86_64.
===============================================================================There is an Real TTY Driver installed in your system.
Continue to install will overwrite the old driver.
Do you want to continue installing? [y/N].
yBuilding driver...
If you want to use secure communication with target,
you might choose [y] to enable the SSL function.
Note: This function support RealCOM with secure mode only.
Do you want to enable secure function? [y/N].
N
make -C /lib/modules/5.2.7-200.fc30.x86_64/build SUBDIRS=/tmp/moxa modules
make[1]: вход в каталог «/usr/src/kernels/5.2.7-200.fc30.x86_64»
Makefile:213: ================= WARNING ================
Makefile:214: 'SUBDIRS' will be removed after Linux 5.3
Makefile:215: Please use 'M=' or 'KBUILD_EXTMOD' instead
Makefile:216: ==========================================
Building modules, stage 2.
MODPOST 1 modules
make[1]: выход из каталога «/usr/src/kernels/5.2.7-200.fc30.x86_64»
cp -p npreal2.ko /lib/modules/5.2.7-200.fc30.x86_64/kernel/drivers/char/
depmod -a
Check Driver...
Copying driver files ... OK!
Load driver...
OK!Loading TTY Driver...
rm -f /dev/ttyr01
mknod -m 666 ttyr01 c 33 2
rm -f /dev/cur01
mknod -m 666 cur01 c 38 2
file open error
===============================================================================
Installation process is completed.
The all driver files are installed on /usr/lib/npreal2/driver.
Now you can cd /usr/lib/npreal2/driver and run ./mxaddsvr to add tty port.
=============================================================================== -
10 минут назад, Незнайка сказал:
Добрый день. Из того, что есть у меня последняя 1.19.11. Назовите, пожалуйста, SN преобразователя.
Можно ее пожалуйста? Я ее под ядро Kernel 5.2.7 соберу. Спасибо.
-
Только что, amaranth сказал:
Model Name NPort IA-5150 MAC Address 00: Serial No. 4919 Можно ее пожалуйста? Я ее под ядро Kernel 5.2.7 соберу. Спасибо.
-
7 минут назад, Незнайка сказал:
Добрый день. Из того, что есть у меня последняя 1.19.11. Назовите, пожалуйста, SN преобразователя.
Model Name NPort IA-5150 MAC Address 00: Serial No. 4919 -
2 минуты назад, Незнайка сказал:
Добрый день. Зачем включаете защищённый обмен? Какой у вас NPort?
Добрый день! Если честно, то наверное он не нужен.
NPort IA-5150 -
Извините, а где можно скачать последнюю версию драйвера ? Сейчас последняя 1.19.7 или 1.19.9 ?
-
Вроде бы собралось:
./mxinst m64
===============================================================================
Copyright (C) 2002-2017 Moxa Inc.
All Rights Reserved.MOXA NPort Server Real TTY Driver Ver1.19 Installation.
System Information: Kernel 5.2.7-200.fc30.x86_64; Machine x86_64.
===============================================================================There is an Real TTY Driver installed in your system.
Continue to install will overwrite the old driver.
Do you want to continue installing? [y/N].
yBuilding driver...
If you want to use secure communication with target,
you might choose [y] to enable the SSL function.
Note: This function support RealCOM with secure mode only.
Do you want to enable secure function? [y/N].
y
make -C /lib/modules/5.2.7-200.fc30.x86_64/build SUBDIRS=/tmp/moxa modules
make[1]: вход в каталог «/usr/src/kernels/5.2.7-200.fc30.x86_64»
Makefile:213: ================= WARNING ================
Makefile:214: 'SUBDIRS' will be removed after Linux 5.3
Makefile:215: Please use 'M=' or 'KBUILD_EXTMOD' instead
Makefile:216: ==========================================
Building modules, stage 2.
MODPOST 1 modules
make[1]: выход из каталога «/usr/src/kernels/5.2.7-200.fc30.x86_64»
cp -p npreal2.ko /lib/modules/5.2.7-200.fc30.x86_64/kernel/drivers/char/
depmod -a
cc -c -m64 -DSSL_ON -DOPENSSL_NO_KRB5 npreal2d.c -I/tmp/moxa/include
cc -m64 npreal2d.o -o npreal2d -lssl
strip npreal2d
Check Driver...
Copying driver files ... OK!
Load driver...
OK!Loading TTY Driver...
rm -f /dev/ttyr00
mknod -m 666 ttyr00 c 33 1
rm -f /dev/cur00
mknod -m 666 cur00 c 38 1
file open error
===============================================================================
Installation process is completed.
The all driver files are installed on /usr/lib/npreal2/driver.
Now you can cd /usr/lib/npreal2/driver and run ./mxaddsvr to add tty port.
===============================================================================Но что означает после команды mknod -m 666 cur00 c 38 1 ошибка file open error ?
-
В npreal2.c используется макрос с 3-мя аргументами в виде:
rtn = access_ok( VERIFY_READ, (void *)arg, size )?0:-EFAULT;
А в /usr/src/kernels/5.2.7-200.fc30.x86_64/arch/x86/include/asm/uaccess.h она объявлена так:
#define access_ok(addr, size) \
({ \
WARN_ON_IN_IRQ(); \
likely(!__range_not_ok(addr, size, user_addr_max())); \
})Похоже что налицо несоответствие ядра 5.2. Какие будут предложения ?
Попробую внести изменения как вот здесь.
-
Всем доброго дня!
Пытаюсь на Fedora 30 собрать драйвер https://www.moxa.com/Moxa/media/PDIM/S100000199/moxa-real-tty-drivers-for-linux-3.x.x-4.x.x-driver-v1.19.tgz. Все зависимости последней версии.
После запуска ./moxa/mxinst m64 пишет:
awk: fatal: cannot open file `np_ver.h' for reading (No such file or directory)
===============================================================================
Copyright (C) 2002-2017 Moxa Inc.
All Rights Reserved.MOXA NPort Server Real TTY Driver Installation.
System Information: Kernel 5.2.7-200.fc30.x86_64; Machine x86_64.
===============================================================================
Building driver...If you want to use secure communication with target,
you might choose [y] to enable the SSL function.
Note: This function support RealCOM with secure mode only.
Do you want to enable secure function? [y/N].
y
make: *** Нет правила для сборки цели «ssl64». Останов.
Check Driver...
FAILED !!!Install Not Completed !
Где интересно ошибка?
Команда ldconfig -p | grep libssl.so выводит такое:
libssl.so.1.1 (libc6,x86-64) => /lib64/libssl.so.1.1
libssl.so (libc6,x86-64) => /lib64/libssl.so
openssl-devel-1:1.1.1c и openssl-1:1.1.1c установлены.
С переходом в папку moxa и запуск ./mxinst m64 выдает следующее:
===============================================================================
Copyright (C) 2002-2017 Moxa Inc.
All Rights Reserved.MOXA NPort Server Real TTY Driver Ver1.19 Installation.
System Information: Kernel 5.2.7-200.fc30.x86_64; Machine x86_64.
===============================================================================
Building driver...If you want to use secure communication with target,
you might choose [y] to enable the SSL function.
Note: This function support RealCOM with secure mode only.
Do you want to enable secure function? [y/N].
y
make -C /lib/modules/5.2.7-200.fc30.x86_64/build SUBDIRS=/tmp/moxa modules
make[1]: вход в каталог «/usr/src/kernels/5.2.7-200.fc30.x86_64»
Makefile:213: ================= WARNING ================
Makefile:214: 'SUBDIRS' will be removed after Linux 5.3
Makefile:215: Please use 'M=' or 'KBUILD_EXTMOD' instead
Makefile:216: ==========================================
CC [M] /tmp/moxa/npreal2.o
/tmp/moxa/npreal2.c: В функции «npreal_ioctl»:
/tmp/moxa/npreal2.c:1323:60: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
1323 | error = access_ok(VERIFY_WRITE, (void *)arg, sizeof(long))?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:1323:11: ошибка: «access_ok» не описан (первое использование в этой функции)
1323 | error = access_ok(VERIFY_WRITE, (void *)arg, sizeof(long))?0:-EFAULT;
| ^~~~~~~~~
/tmp/moxa/npreal2.c:1323:11: замечание: сообщение о каждом неописанном идентификаторе выдается один раз в каждой функции, где он встречается
/tmp/moxa/npreal2.c:1330:59: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
1330 | error = access_ok(VERIFY_READ, (void *)arg, sizeof(long))?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:1346:33: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
1346 | sizeof(struct serial_struct))?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:1353:33: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
1353 | sizeof(struct serial_struct))?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:1360:25: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
1360 | sizeof(unsigned int))?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:1417:42: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
1417 | sizeof(struct serial_icounter_struct))?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c: В функции «npreal_net_ioctl»:
/tmp/moxa/npreal2.c:3374:50: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
3374 | rtn = access_ok( VERIFY_WRITE, (void *)arg, len)?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:3374:9: ошибка: «access_ok» не описан (первое использование в этой функции)
3374 | rtn = access_ok( VERIFY_WRITE, (void *)arg, len)?0:-EFAULT;
| ^~~~~~~~~
/tmp/moxa/npreal2.c:3398:52: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
3398 | rtn = access_ok( VERIFY_READ, (void *)arg, size )?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:3523:52: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
3523 | rtn = access_ok( VERIFY_READ, (void *)arg, size )?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
/tmp/moxa/npreal2.c:3548:52: ошибка: в макрос «access_ok» передано 3 аргументов, но используется только 2
3548 | rtn = access_ok( VERIFY_READ, (void *)arg, size )?0:-EFAULT;
| ^
In file included from ./include/linux/uaccess.h:11,
from ./include/asm-generic/termios.h:6,
from ./arch/x86/include/uapi/asm/termios.h:1,
from ./include/uapi/linux/termios.h:6,
from ./include/linux/tty.h:7,
from /tmp/moxa/npreal2.c:50:
./arch/x86/include/asm/uaccess.h:91: замечание: macro "access_ok" defined here
91 | #define access_ok(addr, size) \
|
make[2]: *** [scripts/Makefile.build:285: /tmp/moxa/npreal2.o] Ошибка 1
make[1]: *** [Makefile:1601: _module_/tmp/moxa] Ошибка 2
make[1]: выход из каталога «/usr/src/kernels/5.2.7-200.fc30.x86_64»
make: *** [Makefile:71: module] Ошибка 2
Check Driver...
FAILED !!!Install Not Completed !
Сборка драйвера MOXA NPort Server Real TTY Driver под Fedora 30
in Преобразователи RS-232/422/485 в Ethernet
Posted
Если интересно, то я делаю следующее:
1. На сервере под управлением Fedora 30 (на HyperV) ставлю Docker
2. Создаю на основе образа Fedora 30 образ с помощью Dockerfile и в нем собираю драйвера moxa
3. Далее в этот образ интегрирую свою приложение на .NET Core, которое опрашивает устройство через ttyr00 и выводит данные через веб-интерфейс (с испоьзованием WebSocket).
4. Назначаю автозапускаемым мое приложение.
Образ готов к употреблению. Получилось очень интересно.