Соединение с GNSS Javad

Автор ru152, 04 февраля 2021, 10:45:36

« назад - далее »

0 Пользователи и 3 гостей просматривают эту тему.

ru152

Доброго времени, знатоки.

Подскажите, есть комп с Debian 9 (вернее дериватив - Astra linux SE 1.6). К нему необходимо прикрутить, для получения данных, gnss устройство javad triumph2.

Соединение между компьютером с линуксом и устройством - по usb. У производителя устройства на сайте (вот ссылка) есть линуксовые драйвера libftd2xx-x86_64-1.4.8.gz, которые являются заменой стандартным ftdi_sio и usbserial.
Там-же есть ReadMe.txt, с пояснением как все делать. Так-же на сайте производителя чипа FTDI есть pdf с описанием установки. К сожалению, ни попытка установить по readme или по описанию ни гугление не привели к нужному результату :(

Тест соединения из архива с драйвером выдает ошибку вида

/javad/release/examples/EEPROM/read# ./read
Library version = 0x10408
Opening port 0
FT_Open(0) failed

в lsusb после этой процедуры пропало название устройства, в lsmod устройство не появилось, по dmesg | grep ttyU пусто....

Может кто сталкивался с установкой драйвера для FTDI? прошу совета....

dzhoser

Попробуйте скомпилировать на обычном debian. Eсли все заработает, тогда в поддержку Русбиттеха.
Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

ru152

Цитата: dzhoser от 04 февраля 2021, 11:20:03
Попробуйте скомпилировать на обычном debian. Eсли все заработает, тогда в поддержку Русбиттеха.

пробовал во всех вариантах и debian 9 и debian 10, и все версии драйверов. результат 0, к сожалению.
Что-то делаю не так, как мне кажется...

поддержка Русбиттеха сильно много денег хочет, а форум у них практически мертв...

dzhoser

Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

ru152

Цитата: dzhoser от 04 февраля 2021, 11:53:24
У вас не лицензия?
лицензия на ос. куплена года полтора назад. на поддержку лицензии нет

dzhoser

#5
Тогда нужно полное описание ваших действий, на каком этапе происходит ошибка. Мое предположение, что проблема в rm lib*, но нужно более подробно смотреть если и на обычной ос не получается, что то не правильно делеете

Cообщение объединено 04 февраля 2021, 12:06:23

Возможно устройство в каком то не том режиме, попробуйте попереклачать
Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

ru152

только установленная ос, без виртуалок, просто компьютер.
сделано:

sudo su

подключаем устройство, смотрим

lsusb
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Bus 004 Device 002: ID 1a46:0004  JAVAD GNSS TRIUMPH2
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

apt-get install build-essential

#папка с драйверами находится здесь - /temp/drv/release

cd /temp/drv/release/build

cp libftd2xx.* /usr/local/lib

chmod 0755 /usr/local/lib/libftd2xx.so.1.4.8

lsmod | grep usb   
usbhid                 49152  0
hid                   118784  2 hid_generic,usbhid

lsusb
- - - - - - - - - - - - - - - - - - - - - - - -
Bus 004 Device 002: ID 1a46:0004 
- - - - - - - - - - - - - - - - - - - - - - - -

cat /var/log/syslog
Открыть содержимое (спойлер)

Feb  4 13:06:14 astra kernel: [  223.164039] usb 4-1: new full-speed USB device number 2 using uhci_hcd
Feb  4 13:06:14 astra kernel: [  223.384063] usb 4-1: New USB device found, idVendor=1a46, idProduct=0004
Feb  4 13:06:14 astra kernel: [  223.384066] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Feb  4 13:06:14 astra kernel: [  223.384068] usb 4-1: Product: TRIUMPH2
Feb  4 13:06:14 astra kernel: [  223.384070] usb 4-1: Manufacturer: JAVAD GNSS
Feb  4 13:06:14 astra kernel: [  223.384072] usb 4-1: SerialNumber: JG8N
Feb  4 13:06:14 astra mtp-probe: checking bus 4, device 2: "/sys/devices/pci0000:00/0000:00:1a.1/usb4/4-1"
Feb  4 13:06:14 astra mtp-probe: bus: 4, device: 2 was not an MTP device
[свернуть]

добавляем в правило udev для libmtp строку, исключающую наше устройство

ATTR{idVendor}=="1a46", ATTR{idProduct}=="0004", GOTO="libmtp_rules_end"

cat /var/log/syslog
Открыть содержимое (спойлер)

Feb  4 13:49:28 astra kernel: [ 2817.080037] usb 4-1: new full-speed USB device number 3 using uhci_hcd
Feb  4 13:49:28 astra kernel: [ 2817.300067] usb 4-1: New USB device found, idVendor=1a46, idProduct=0004
Feb  4 13:49:28 astra kernel: [ 2817.300070] usb 4-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Feb  4 13:49:28 astra kernel: [ 2817.300072] usb 4-1: Product: TRIUMPH2
Feb  4 13:49:28 astra kernel: [ 2817.300074] usb 4-1: Manufacturer: JAVAD GNSS
Feb  4 13:49:28 astra kernel: [ 2817.300076] usb 4-1: SerialNumber: JG8N
[свернуть]

переподключаем устройство, на этом моменте ничего не происходит... далее

cd /temp/drv/release/build/examples

make -B
Открыть содержимое (спойлер)

for n in BitMode EEPROM/erase EEPROM/read EEPROM/write EEPROM/user/read EEPROM/user/size EEPROM/user/write Events LargeRead loopback MultiThread SetVIDPID Simple static Timeouts W32/escapeseq W32/events W32/simple W32/timeouts write ; do "make" -C $n || exit 1; done
make[1]: вход в каталог «/temp/drv/release/examples/BitMode»
cc main.c -o bitmode -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/BitMode»
make[1]: вход в каталог «/temp/drv/release/examples/EEPROM/erase»
cc main.c -o erase -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/EEPROM/erase»
make[1]: вход в каталог «/temp/drv/release/examples/EEPROM/read»
cc main.c -o read -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/EEPROM/read»
make[1]: вход в каталог «/temp/drv/release/examples/EEPROM/write»
cc main.c -o write -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/EEPROM/write»
make[1]: вход в каталог «/temp/drv/release/examples/EEPROM/user/read»
cc main.c -o readua -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/EEPROM/user/read»
make[1]: вход в каталог «/temp/drv/release/examples/EEPROM/user/size»
cc main.c -o sizeua -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/EEPROM/user/size»
make[1]: вход в каталог «/temp/drv/release/examples/EEPROM/user/write»
cc main.c -o writeua -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/EEPROM/user/write»
make[1]: вход в каталог «/temp/drv/release/examples/Events»
cc main.c -o events -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/Events»
make[1]: вход в каталог «/temp/drv/release/examples/LargeRead»
cc main.c -o largeread -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/LargeRead»
make[1]: вход в каталог «/temp/drv/release/examples/loopback»
cc main.c -o loopback -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/loopback»
make[1]: вход в каталог «/temp/drv/release/examples/MultiThread»
cc main.c -o multi -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/MultiThread»
make[1]: вход в каталог «/temp/drv/release/examples/SetVIDPID»
cc main.c -o setVIDPID -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/SetVIDPID»
make[1]: вход в каталог «/temp/drv/release/examples/Simple»
cc main.c -o simple-static ../../build/libftd2xx.a -Wall -Wextra -lpthread -lrt
cc main.c -o simple-dynamic -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/Simple»
make[1]: вход в каталог «/temp/drv/release/examples/static»
gcc main.c -o static_link ../../build/libftd2xx.a -lpthread -lrt -Wall -Wextra
make[1]: выход из каталога «/temp/drv/release/examples/static»
make[1]: вход в каталог «/temp/drv/release/examples/Timeouts»
cc main.c -o timeouts -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/Timeouts»
make[1]: вход в каталог «/temp/drv/release/examples/W32/escapeseq»
cc main.c -o w32_escapeseq -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/W32/escapeseq»
make[1]: вход в каталог «/temp/drv/release/examples/W32/events»
cc main.c -o w32_events -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/W32/events»
make[1]: вход в каталог «/temp/drv/release/examples/W32/simple»
cc main.c -o w32_simple -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib -g
make[1]: выход из каталога «/temp/drv/release/examples/W32/simple»
make[1]: вход в каталог «/temp/drv/release/examples/W32/timeouts»
cc main.c -o w32_timeouts -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/W32/timeouts»
make[1]: вход в каталог «/temp/drv/release/examples/write»
cc main.c -o write -Wall -Wextra -lftd2xx -lpthread -lrt -Wl,-rpath /usr/local/lib -L/usr/local/lib
make[1]: выход из каталога «/temp/drv/release/examples/write»
[свернуть]

cd EEPROM/read

sudo ./read

Library version = 0x10408
Opening port 0
FT_Open(0) failed

lsmod
Открыть содержимое (спойлер)

Module                  Size  Used by
input_leds             16384  0
gpio_ich               16384  0
coretemp               16384  0
kvm_intel             204800  0
kvm                   598016  1 kvm_intel
irqbypass              16384  1 kvm
serio_raw              16384  0
lpc_ich                24576  0
shpchp                 36864  0
mei_me                 40960  0
mei                    94208  1 mei_me
mac_hid                16384  0
parport_pc             36864  0
ppdev                  20480  0
lp                     20480  0
parport                49152  3 lp,parport_pc,ppdev
ip_tables              28672  0
x_tables               40960  1 ip_tables
autofs4                40960  3
hid_generic            16384  0
psmouse               147456  0
8139too                36864  0
8139cp                 28672  0
mii                    16384  2 8139cp,8139too
usbhid                 49152  0
hid                   118784  2 hid_generic,usbhid
i915                 1622016  2
video                  45056  1 i915
i2c_algo_bit           16384  1 i915
e1000e                249856  0
ptp                    20480  1 e1000e
pps_core               20480  1 ptp
drm_kms_helper        172032  1 i915
syscopyarea            16384  1 drm_kms_helper
sysfillrect            16384  1 drm_kms_helper
sysimgblt              16384  1 drm_kms_helper
fb_sys_fops            16384  1 drm_kms_helper
pata_acpi              16384  0
drm                   401408  4 i915,drm_kms_helper
parsec                159744  2
digsig_verif          491520  0
[свернуть]

статическую библиотеку не делал, как мне кажется лучше динамическая...
ну и, соответственно, что-то еще не сделал. А чего не понимаю. Ибо опыт с линуксом 2,5 месяца...

dzhoser

Feb  4 13:06:14 astra mtp-probe: checking bus 4, device 2: "/sys/devices/pci0000:00/0000:00:1a.1/usb4/4-1"
Feb  4 13:06:14 astra mtp-probe: bus: 4, device: 2 was not an MTP device
Ваша железяка как то в MTP режим должна переключаться, а сейчас работает в другом.
Ubuntu->Linux mint->Astra Linux SE->Debian 12
Для новичков

ru152

#8
Цитата: dzhoser от 04 февраля 2021, 15:56:58Ваша железяка как то в MTP режим должна переключаться, а сейчас работает в другом.

По mtp осуществляется программирование eeprom, что мне в общем-то не нужно. Именно по этому я и отрубил его правилом в udev....

нужен доступ к ftdi и, в идеале, одновременно c ftdi - к usbserial  :(