USB осцилограф DSO-5200A (Программа не видит железо)

Выбор и настройка HardWare

Модератор: Модераторы разделов

156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

USB осцилограф DSO-5200A

Сообщение 156 »

USB осцилограф DSO-5200A, система опенсусе 11, установлена на ноутбук,

Код: Выделить всё

metrologiats:/etc # lsusb
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 046d:c043 Logitech, Inc. MX320 Laser Mouse
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 04b4:520a Cypress Semiconductor Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
metrologiats:/etc #

Всё делал согласно инструкции, сформировал фирмваре, пложил в нужный католог, компиляция прошла на удивление упешно,

Код: Выделить всё

How to INSTALL:
Firmware
You need to find the firmware for the oscilloscope (usually in the folder
/Driver on CD), convert it to .hex files, and make sure they get loaded
into the oscilloscope when it is connected.
Locate one of the following files, depending on the model of
your scope: DSO20901.SYS, DSO21001.SYS, DSO21501.SYS, DSO22501.SYS,
DSO520A1.SYS and put it in the folder with dsoextractfw utility.
Run the program dsoextractfw. It searches for the files listed above
in the current directory. If it finds any of them, it creates
two files named "DSOxxxx_firmware.hex" and "DSOxxxx_loader.hex". Move
these files to /usr/share/HantekDSO/ . Copy the file HantekDSO.rules to
/etc/udev/rules.d/ .
Now, the firmware should be loaded automatically when the DSO is connected
to an USB port. Once the firmware is loaded, the LED on the DSO starts to
flash red. You can now run the program hantekdso. The LED will blink green.
Make sure you have sufficient privilegies on the USB device or run as root
(probably not recommended in the long run).
Thanks to:
- Fredrik Jansson

вот что пишется в мессаджес

Код: Выделить всё

Aug 23 14:58:36 metrologiats kernel: usb 2-4: new high speed USB device using ehci_hcd and address 3
Aug 23 14:58:36 metrologiats kernel: usb 2-4: configuration #1 chosen from 1 choice
Aug 23 14:58:36 metrologiats kernel: usb 2-4: New USB device found, idVendor=04b4, idProduct=520a
Aug 23 14:58:36 metrologiats kernel: usb 2-4: New USB device strings: Mfr=0, Product=0, SerialNumber=0

не совсем понятно, как правильно назвать HantekDSO.rules , в моём случае они все имеют номера и написаны с маленькой буквы

Код: Выделить всё

metrologiats:/etc/udev/rules.d # ls -l
итого 268
-rw-r--r-- 1 root root     357 Июн  7  2008 40-alsa.rules
-rw-r--r-- 1 root root    2276 Июн  7  2008 40-bluetooth.rules
-rw-r--r-- 1 root root     484 Июн  6  2008 40-suse.rules
-rw-r--r-- 1 root root     250 Июн  6  2008 40-zaptel.rules
-rw-r--r-- 1 root root    4283 Июн  6  2008 50-udev-default.rules
-rw-r--r-- 1 root root     571 Июн  7  2008 51-lirc.rules
-rw-r--r-- 1 root root     268 Июн  7  2008 52-irda.rules
-rw-r--r-- 1 root root  115287 Июн  7  2008 55-libsane.rules
-rw-r--r-- 1 root root     190 Июн  6  2008 56-idedma.rules
-rw-r--r-- 1 root root   24908 Июн  7  2008 56-sane-backends-autoconfig.rules
-rw-r--r-- 1 serg users   1200 Апр 25 01:52 57-hantekdso.rules
-rw-r--r-- 1 serg users   1200 Апр 25 01:52 57-HantekDSO.rules
-rw-r--r-- 1 root root     119 Июн  6  2008 60-cdrom_id.rules
-rw-r--r-- 1 root root    1098 Июн  7  2008 60-pcmcia.rules
-rw-r--r-- 1 root root    1431 Июн  6  2008 60-persistent-input.rules
-rw-r--r-- 1 root root    3373 Июн  6  2008 60-persistent-storage.rules
-rw-r--r-- 1 root root    1222 Июн  6  2008 60-persistent-storage-tape.rules
-rw-r--r-- 1 root root     518 Июн  6  2008 61-persistent-storage-edd.rules
-rw-r--r-- 1 root root     918 Июн  6  2008 64-device-mapper.rules
-rw-r--r-- 1 root root     725 Июн  6  2008 64-md-raid.rules
-rw-r--r-- 1 root root    1421 Июн  7  2008 70-kpartx.rules
-rw-r--r-- 1 root root    2103 Июл 17 02:18 70-persistent-cd.rules
-rw-r--r-- 1 root root     814 Авг  6 09:54 70-persistent-net.rules
-rw-r--r-- 1 root root     390 Июн  6  2008 75-cd-aliases-generator.rules
-rw-r--r-- 1 root root    2405 Июн  6  2008 75-persistent-net-generator.rules
-rw-r--r-- 1 root root     823 Июн  7  2008 77-network.rules
-rw-r--r-- 1 root root       0 Авг  6 09:54 79-yast2-drivers.rules
-rw-r--r-- 1 root root     842 Июн  6  2008 80-drivers.rules
-rw-r--r-- 1 root root      46 Июн  7  2008 90-hal.rules
-rw-r--r-- 1 root root     234 Июн  6  2008 95-udev-late.rules
-rw-r--r-- 1 root root     153 Июн  7  2008 99-pcsc_lite.rules
-rw-r--r-- 1 serg users   1200 Апр 25 01:52 hantekdso.rules
-rwxrwxr-- 1 serg users   1200 Апр 25 01:52 HantekDSO.rules
metrologiats:/etc/udev/rules.d #

при запуске от рута или от пользователя просто пишет
metrologiats:/etc/udev/rules.d # hantekdso
Hantek DSO not found
Подскажите, в каком направлении искать ошибку?
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: USB осцилограф DSO-5200A

Сообщение (asper »

156 писал(а):
23.08.2009 15:16

Код: Выделить всё

... the firmware should be loaded automatically when the DSO is connected
to an USB port. Once the firmware is loaded, the LED on the DSO starts to
flash red. ...

Вы когда подключили это устройство в USB лед заморгал красным ?
156 писал(а):
23.08.2009 15:16
не совсем понятно, как правильно назвать HantekDSO.rules , в моём случае они все имеют номера и написаны с маленькой буквы

Скажите, просто не совсем понятно из вышеизложенного, это один и тот же файл или четыре разных (или два) ?
Сомнительно доброе привидение
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

HantekDSO.rules - это один файл, только я его пытался называть по разному. В объяснении написано же "Copy the file HantekDSO.rules to
/etc/udev/rules.d/" . Светодиод всё время погашен. Когда осцилограф под виндой подключается к ноуту, то загорается красный светодиод, это говорит, что он опознался системой и она подгрузила драйвера, в менеджере устройств появился новый девайс, когда запускаешь под виндой программную оболочку осцилографа , на коробочке осцилографа загорается зелёный светодиод. Если надо какие то логи или вывод команд, говорите, всё оперативно сделаю. Просто данный осцил вещь очень хорошая, и только из-за него приходится работать в винде.
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: USB осцилограф DSO-5200A

Сообщение (asper »

156 писал(а):
25.08.2009 14:02
HantekDSO.rules - это один файл, только я его пытался называть по разному. В объяснении написано же "Copy the file HantekDSO.rules to
/etc/udev/rules.d/" . Светодиод всё время погашен. Когда осцилограф под виндой подключается к ноуту, то загорается красный светодиод, это говорит, что он опознался системой и она подгрузила драйвера, в менеджере устройств появился новый девайс, когда запускаешь под виндой программную оболочку осцилографа , на коробочке осцилографа загорается зелёный светодиод. Если надо какие то логи или вывод команд, говорите, всё оперативно сделаю. Просто данный осцил вещь очень хорошая, и только из-за него приходится работать в винде.

Значит удалите и оставьте один файл, попробуйте дайте ему номер 20 например, а вообще было бы неплохо взглянуть на содержимое того файла. (Хотя конечно уже давно я не ковырял правила udev и уже забыл как это делается (: )
Если светодиод не загорается, значит и драйвер не подгружается.
Думаю для начала надо копать в сторону udev всё таки.
Сомнительно доброе привидение
Спасибо сказали:
Eraser
Сообщения: 224
ОС: Gentoo Linux

Re: USB осцилограф DSO-5200A

Сообщение Eraser »

Странное расположение фирмвари указано. Обычно их кладут в /lib/firmware Но это так, к слову
Но все же проблема, похоже, в udev
Спасибо сказали:
Аватара пользователя
Ali1
Сообщения: 2250

Re: USB осцилограф DSO-5200A

Сообщение Ali1 »

(asper писал(а):
25.08.2009 16:15
вообще было бы неплохо взглянуть на содержимое того файла.

+1
Пока нет устройства, драйвер подгружаться не будет.
Можно попробовать создать файл устройства руками. Только какое? HantekDSO.rules
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

А мне то что делать? :)
(asper писал(а):
25.08.2009 16:15
попробуйте дайте ему номер 20 например
Приведите пример, как точно по вашему, новое имя должно выглядеть.
В програмном обеспечении наверняка прописано имя HantekDSO.rules , поэтому давать ему другое имя с циферокой впереди имхо , не правильно. Переложил фирмваре в папку ./либ/ фирмаре , результат отрицательный.
HantekDSO.rules

Код: Выделить всё

# Hantek DSO-2090
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="4b4/2090/*", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2090_firmware.hex -s /usr/share/HantekDSO/DSO2090_loader.hex -D $env{DEVNAME}"

# Hantek DSO-2100
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="4b4/2100/*", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2100_firmware.hex -s /usr/share/HantekDSO/DSO2100_loader.hex -D $env{DEVNAME}"

# Hantek DSO-2150
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="4b4/2150/*", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2150_firmware.hex -s /usr/share/HantekDSO/DSO2150_loader.hex -D $env{DEVNAME}"

# Hantek DSO-2250
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="4b4/2250/*", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2250_firmware.hex -s /usr/share/HantekDSO/DSO2250_loader.hex -D $env{DEVNAME}"

# Hantek DSO-5200A
SUBSYSTEM=="usb", ACTION=="add", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="4b4/520A/*", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D $env{DEVNAME}"


Прочитав всё выше написанное , пришел к выводу, что опенсуся не знает , что нужно делать, когда появлятется осцилограф на USB порту. Надо ей как то помочь ...
Для начала отредактировал HantekDSO.rules , команда lsusb выводила устройство 04b4:520a , впереди нолик, и буква "а" маленькая, и правый флэш заменил на двоеточие, вместо 4b4/520A/* сделал 04b4:520а/* не знаю, насколько это важно, но в юниксе вроде бы есть разница в больших и маленьких буквах. Посмотрев команды, решил дать их принудительно, от рута
/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex , в итоге bash:/ /sbin/fxload: нет такого файла , соответственно, дальше ничего не идёт. Дядя гугл объяснил, что этот файл нужен для загрузки фирмаваре , посмотрев установленные пакеты, нашел , что он не установлен, установил. Результат отрицательный, если дать команду /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D $env{DEVNAME} , ругается на отсутствие устройства $env{DEVNAME} . Если запустить программу осциографа, то по прежнему не работает, пишет, что не нашел устройство, светодиод не горит вообще. В мессаджес пишет, что нашлось устройство на шине usb 2-4 , как в приведённом выше куске мессаджес. Может как то принудительно прописать usb порт в udev? Как узнать, где в /dev/ появляется осцилограф и как он называется. Ситуация проясняется...
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: USB осцилограф DSO-5200A

Сообщение (asper »

Значит нам нужно выяснить чему равно $env{DEVNAME}.
запускаем:

Код: Выделить всё

udevadm monitor --env

"Втыкаем" ваш осциллограф и смотрим (можно и сюда запостить), там будет много информации, а так же значение DEVNAME

Насчёт нумерации оставьте то имя которое было изначально, а так же и содержимое того файла, которое было изначально. Это не важно в данном случае мне кажется.
Чтобы не перегружать машину можно выполнить:

Код: Выделить всё

udevadm control --reload-rules


И обязательно отпишитесь получилось или нет.
Сомнительно доброе привидение
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

Результат

Код: Выделить всё

metrologiats:/etc # udevadm monitor --env
udevmonitor will print the received events for:
UDEV the event which udev sends out after rule processing
UEVENT the kernel uevent

UDEV  [1251303503.291545] add      /devices/pci0000:00/0000:00:03.3/usb2/2-4 (usb)
UDEV_LOG=3
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:03.3/usb2/2-4
SUBSYSTEM=usb
MAJOR=189
MINOR=130
DEVTYPE=usb_device
DEVICE=/proc/bus/usb/002/003
PRODUCT=4b4/520a/0
TYPE=255/255/255
BUSNUM=002
DEVNUM=003
SEQNUM=1270
UDEVD_EVENT=1
DEVNAME=/dev/bus/usb/002/003

UEVENT[1251303503.293624] add      /devices/pci0000:00/0000:00:03.3/usb2/2-4/usb_endpoint/usbdev2.3_ep00 (usb_endpoint)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:03.3/usb2/2-4/usb_endpoint/usbdev2.3_ep00
SUBSYSTEM=usb_endpoint
MAJOR=253
MINOR=10
SEQNUM=1271

UEVENT[1251303503.294233] add      /devices/pci0000:00/0000:00:03.3/usb2/2-4/2-4:1.0 (usb)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:03.3/usb2/2-4/2-4:1.0
SUBSYSTEM=usb
DEVTYPE=usb_interface
DEVICE=/proc/bus/usb/002/003
PRODUCT=4b4/520a/0
TYPE=255/255/255
INTERFACE=255/255/255
MODALIAS=usb:v04B4p520Ad0000dcFFdscFFdpFFicFFiscFFipFF
SEQNUM=1272

UDEV  [1251303503.298975] add      /devices/pci0000:00/0000:00:03.3/usb2/2-4/usb_endpoint/usbdev2.3_ep00 (usb_endpoint)
UDEV_LOG=3
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:03.3/usb2/2-4/usb_endpoint/usbdev2.3_ep00
SUBSYSTEM=usb_endpoint
MAJOR=253
MINOR=10
SEQNUM=1271
UDEVD_EVENT=1
DEVNAME=/dev/usbdev2.3_ep00

UDEV  [1251303503.322585] add      /devices/pci0000:00/0000:00:03.3/usb2/2-4/2-4:1.0 (usb)
UDEV_LOG=3
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:03.3/usb2/2-4/2-4:1.0
SUBSYSTEM=usb
DEVTYPE=usb_interface
DEVICE=/proc/bus/usb/002/003
PRODUCT=4b4/520a/0
TYPE=255/255/255
INTERFACE=255/255/255
MODALIAS=usb:v04B4p520Ad0000dcFFdscFFdpFFicFFiscFFipFF
SEQNUM=1272
UDEVD_EVENT=1

Если я не ошибаюсь, имя девайсм DEVNAME=/dev/bus/usb/002/003 , потом получилось следующее
metrologiats:/etc # udevadm control --reload-rules
unrecognized command 'reload-rules'
почитав ман, заметил, что в релоад рулесе должен быть символ подчеркивания а не тире, исправленная команда
udevadm control --reload_rules прошла без ошибок

Код: Выделить всё

metrologiats:/etc # metrologiats:/etc # udevadm control --reload-rules
bash: metrologiats:/etc: Нет такого файла или каталога
metrologiats:/etc # unrecognized command 'reload-rules'
bash: unrecognized: команда не найдена
metrologiats:/etc # udevadm control --reload_rules
metrologiats:/etc # /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D DEVNAME=/dev/bus/usb/002/003
DEVNAME=/dev/bus/usb/002/003: No such file or directory
metrologiats:/etc # udevadm monitor --env
udevmonitor will print the received events for:
UDEV the event which udev sends out after rule processing
UEVENT the kernel uevent

^Cmetrologiats:/etc # lsusb
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 046d:c043 Logitech, Inc. MX320 Laser Mouse
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 003: ID 04b4:520a Cypress Semiconductor Corp.
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
metrologiats:/etc #
metrologiats:/etc # /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D DEVNAME=/dev/usbdev2.3_ep00
DEVNAME=/dev/usbdev2.3_ep00: No such file or directory
metrologiats:/etc # /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D DEVNAME=/devices/pci0000:00/0000:00:03.3/usb2/2-4/usb_endpoint/usbdev2.3_ep00
DEVNAME=/devices/pci0000:00/0000:00:03.3/usb2/2-4/usb_endpoint/usbdev2.3_ep00: No such file or directory
metrologiats:/etc #

а вот тут кончились мои знания, что нужно дальше делать?
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: USB осцилограф DSO-5200A

Сообщение (asper »

156 писал(а):
26.08.2009 20:33
...
UDEV [1251303503.291545] add /devices/pci0000:00/0000:00:03.3/usb2/2-4 (usb)
UDEV_LOG=3
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:03.3/usb2/2-4
SUBSYSTEM=usb
MAJOR=189
MINOR=130
DEVTYPE=usb_device
DEVICE=/proc/bus/usb/002/003
PRODUCT=4b4/520a/0
TYPE=255/255/255
BUSNUM=002
DEVNUM=003
SEQNUM=1270
UDEVD_EVENT=1
DEVNAME=/dev/bus/usb/002/003
...

Если я не ошибаюсь, имя девайсм DEVNAME=/dev/bus/usb/002/003

совершенно верно
156 писал(а):
26.08.2009 20:33
# /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D DEVNAME=/dev/bus/usb/002/003

тут вы конечно маханули
зачем DEVNAME=
просто -D /dev/bus/usb/002/003
(:
Сомнительно доброе привидение
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

Итак, вот что получилось

Код: Выделить всё

 /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D /dev/bus/usb/002/003
/dev/bus/usb/002/003: No such file or directory
metrologiats:/etc # mc

Проверка командером показала, что такого файла или дериктории действительно нету, обратившись к lsusb нашел, что надо попробовать 002/004 ,

metrologiats:/dev/bus/usb/002 # /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D /dev/bus/usb/002/004

на осцилографе загорелся красный светодиод, это уже первый реальный положительный результат

metrologiats:/dev/bus/usb/002 # hantekdso
DCOPClient::attachInternal. Attach failed Could not open network socket
kbuildsycoca running...
Hantek DSO not found
kbuildsycoca running...
Reusing existing ksycoca

почитав, что ругается на сетевый настройки, выключил фаервол полностью, получил
metrologiats:/var/log # hantekdso
kbuildsycoca running...
Hantek DSO not found
т.е. всё равно что то ему не нравится , и по прежнему софт не находит железо , и второе, как сделать, чтобы загрузка фирмваре происходила при подключении девайса?
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

udev берет правила из /etc/udev/* и еще откуда-то [может быть /usr/share/udev/*, /var/lib/udev/* итд - в разных дистрибутивах по-разному, - зависит от того как собирался udevd] и выполняет их в по алфавиту (также как работает ls -X). для того, чтобы как-то упорядочить интерпретацию, файлы с правилами принято поименовывать как 00-, 01- итд

у вас очень похоже на то, что устройство подпадает под несколько правил udev и нужное вам правило прорабатывает не тогда, когда нужно. попробуйте инсталляционный HantekDSO.rules переименовать так, чтобы он был гарантированно последним в списке правил, т.е назвать как-нить типа 99-z-HantekDSO.rules

... второе, как сделать, чтобы загрузка фирмваре происходила при подключении девайса?


это и делают правила udev (запускают программку, загружающую firmware)
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

vr13 писал(а):
26.08.2009 23:06
udev берет правила из /etc/udev/

это в моём дистрибутиве, пробовал переименовать в 99-z-HantekDSO.rules , сделал перезапуск udevadm control --reload_rules, отключил , подключил осцилограф, фирмваре автоматом не подгурзилось. ИМХО, правила должны подгружаться по идентификатору оборудования, не зря же они его в файл включили. Механиз, имхо должен быть такой, подключается железо на usb порт, происходит индентификация , это то что мы видим по lsusb, система должна увидеть код оборудрования, и по коду поискать в /etc/udev/99-z-HantekDSO.rules и выполнить указанные там команды, в данном случае подгрузить фирмваре, потом я запускаю оболочку осцилографа и работаю. Может гуру помогут переписать файл HantekDSO.rules? Ваши предложения?
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

вероятно я не совсем корректно выразился. да, по коду оборудования (и/или другим признакам, о которых знает udev). однако udev не обладает интеллектом, которым вы его наделяете: когда ядро ему сообщает что появилось новое оборудование, он тупо сканирует все правила в указанном выше порядке и, если находит подходящее, то выполняет его

в вашем случае - находит (т.к загрузчик firmware ругается, что не может найти устройство). почему не может найти устройство - хз. мне показалось, что его находит какое-то еще правило и имеет место конфликт

можно сделать собственное очень простое правило (вместо фирменного):

SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="520a", name="OSC", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2090_firmware.hex -s /usr/share/HantekDSO/DSO2090_loader.hex -D /dev/OSC

и посмотреть что получится
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

vr13 писал(а):
26.08.2009 23:47
можно сделать собственное очень простое правило (вместо фирменного):

SUBSYSTEM=="usb", ACTION=="add", ATTRS{idVendor}=="04b4", ATTRS{idProduct}=="520a", name="OSC", RUN+="/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2090_firmware.hex -s /usr/share/HantekDSO/DSO2090_loader.hex -D /dev/OSC

и посмотреть что получится

а ничего не получается, фирмваре не грузится. я подправил немного название фирмваре, у меня железо 520а , вы привели для 2090.
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

с такой же диагностикой (no such file or directory)?

я забыл еще вопрос задать, самый главный наверное: а модуль (драйвер) для этого устройства загружен?
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: USB осцилограф DSO-5200A

Сообщение (asper »

name="OSC"
разве не NAME="OSC" ?
Сомнительно доброе привидение
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

Если дать в командной строке,то
metrologiats:/etc/udev/rules.d # /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2090_firmware.hex -s /usr/share/HantekDSO/DSO2090_loader.hex -D /dev/OSC/dev/OSC: No such file or directory
metrologiats:/etc/udev/rules.d #
я забыл еще вопрос задать, самый главный наверное: а модуль (драйвер) для этого устройства загружен? - а нету никакого модуля, сначала грузится фирмваре, потом оболочка осцилографа. Поменял NAME="OSC", результат отрицательный. ИМХО, надо сосредоточится на идентификации устройства....
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

(asper писал(а):
27.08.2009 00:12
name="OSC"
разве не NAME="OSC" ?

без разницы, как следует из документации
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

156 писал(а):
27.08.2009 00:12
я забыл еще вопрос задать, самый главный наверное: а модуль (драйвер) для этого устройства загружен? - а нету никакого модуля, сначала грузится фирмваре, потом оболочка осцилографа. Поменял NAME="OSC", результат отрицательный. ИМХО, надо сосредоточится на идентификации устройства....

не может быть чтобы не было модуля. firmware надо куда-то грузить, а udev (как и все /dev/OSD) тут вообще ни причем - он всего лишь автоматизирует интерфейс userspace и kernel:

ядро создает файл соответствующий устройству при подключении железяки (/dev/bus/usb/... и то, что я нафантазировал /dev/OSD). но за этим файлом, должен стоять драйвер с с поддерживаемым набором системных вызовов ioctl (а также open, close итд). при обращении к файлу, при загрузке firmware, драйвер куда-то считывает этот микрокод и как-то его использует в при работе программы осцилографом (пардон за терминологию - я не уверен, что знаю что такое осцилограф :)

в подтверждение сказанного, попробуйте:

# mknod test c 300 300
# ls -l test
crw-r--r-- 1 root root 300, 300 2009-08-27 01:03 test
# echo test > test
bash: test: No such device or address

======================

дополню: кажется, это поддерживается ядром, т.е нужно смотреть, есть ли собранный модуль, и, если нет, пересобирать ядро с поддержкой оного:
Bus 002 Device 003: ID 04b4:520a Cypress Semiconductor Corp.

и вот соответствующие конфигурационные параметры ядра (для моей инсталляции):

Код: Выделить всё

# CONFIG_PATA_CYPRESS is not set
CONFIG_HID_CYPRESS=y
# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set

посмотрите что у вас
Спасибо сказали:
Аватара пользователя
Atragor
Сообщения: 681
Статус: ...
Контактная информация:

Re: USB осцилограф DSO-5200A

Сообщение Atragor »

Можно попробовать

Код: Выделить всё

# udevadm test $(udevadm info -q path --name=/dev/bus/usb/<нужный путь>)

И посмотреть, какие правила применяются к устройству.
If you were MEANT to understand it, we wouldn't have called it 'code' © bash.org
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

Код: Выделить всё

metrologiats:/etc # udevadm test $(udevadm info -q path --name=/dev/bus/usb/002/010)
This program is for debugging only, it does not run any program,
specified by a RUN key. It may show incorrect results, because
some values may be different, or not available at a simulation run.

parse_file: reading '/etc/udev/rules.d/00-HantekDSO.rules' as rules file
parse_file: reading '/dev/.udev/rules.d/10-root-symlink.rules' as rules file
parse_file: reading '/etc/udev/rules.d/40-alsa.rules' as rules file
parse_file: reading '/etc/udev/rules.d/40-bluetooth.rules' as rules file
parse_file: reading '/etc/udev/rules.d/40-suse.rules' as rules file
parse_file: reading '/etc/udev/rules.d/40-zaptel.rules' as rules file
parse_file: reading '/etc/udev/rules.d/50-udev-default.rules' as rules file
parse_file: reading '/etc/udev/rules.d/51-lirc.rules' as rules file
parse_file: reading '/etc/udev/rules.d/52-irda.rules' as rules file
parse_file: reading '/etc/udev/rules.d/55-libsane.rules' as rules file
parse_file: reading '/etc/udev/rules.d/56-idedma.rules' as rules file
parse_file: reading '/etc/udev/rules.d/56-sane-backends-autoconfig.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-cdrom_id.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-pcmcia.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-persistent-input.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-persistent-storage-tape.rules' as rules file
parse_file: reading '/etc/udev/rules.d/60-persistent-storage.rules' as rules file
parse_file: reading '/etc/udev/rules.d/61-persistent-storage-edd.rules' as rules file
parse_file: reading '/etc/udev/rules.d/64-device-mapper.rules' as rules file
parse_file: reading '/etc/udev/rules.d/64-md-raid.rules' as rules file
parse_file: reading '/etc/udev/rules.d/70-kpartx.rules' as rules file
parse_file: reading '/etc/udev/rules.d/70-persistent-cd.rules' as rules file
parse_file: reading '/etc/udev/rules.d/70-persistent-net.rules' as rules file
parse_file: reading '/etc/udev/rules.d/75-cd-aliases-generator.rules' as rules file
parse_file: reading '/etc/udev/rules.d/75-persistent-net-generator.rules' as rules file
parse_file: reading '/etc/udev/rules.d/77-network.rules' as rules file
parse_file: reading '/etc/udev/rules.d/80-drivers.rules' as rules file
parse_file: reading '/etc/udev/rules.d/90-hal.rules' as rules file
parse_file: reading '/etc/udev/rules.d/95-udev-late.rules' as rules file
parse_file: reading '/etc/udev/rules.d/99-pcsc_lite.rules' as rules file
import_uevent_var: import into environment: 'MAJOR=189'
import_uevent_var: import into environment: 'MINOR=137'
import_uevent_var: import into environment: 'DEVTYPE=usb_device'
import_uevent_var: import into environment: 'DRIVER=usb'
import_uevent_var: import into environment: 'DEVICE=/proc/bus/usb/002/010'
import_uevent_var: import into environment: 'PRODUCT=4b4/520a/0'
import_uevent_var: import into environment: 'TYPE=255/255/255'
import_uevent_var: import into environment: 'BUSNUM=002'
import_uevent_var: import into environment: 'DEVNUM=010'
udevtest: looking at device '/devices/pci0000:00/0000:00:03.3/usb2/2-4' from subsystem 'usb'
udev_rules_get_name: rule applied, '2-4' becomes 'bus/usb/002/010'
udev_db_get_device: found a symlink as db file
udev_device_event: device '/devices/pci0000:00/0000:00:03.3/usb2/2-4' already in database, cleanup
udev_node_add: creating device node '/dev/bus/usb/002/010', major=189, minor=137, mode=0644, uid=0, gid=0
udevtest: run: 'socket:/org/freedesktop/hal/udev_event'
udevtest: run: 'socket:@/org/kernel/udev/monitor'
metrologiats:/etc #
vr13 писал(а):
27.08.2009 01:08
не может быть чтобы не было модуля. firmware надо куда-то грузить, а udev (как и все /dev/OSD) тут вообще ни причем - он всего лишь автоматизирует интерфейс userspace и kernel:ядро создает файл соответствующий устройству при подключении железяки (/dev/bus/usb/... и то, что я нафантазировал /dev/OSD). но за этим файлом, должен стоять драйвер с с поддерживаемым набором системных вызовов ioctl (а также open, close итд). при обращении к файлу, при загрузке firmware, драйвер куда-то считывает этот микрокод и как-то его использует в при работе программы осцилографом



Если почитать инсталлл, который я привел в начале темы, там про модуль к ядру ничего не говорится, хотя если подходить логически, должно что то быть. Посмотрел другие рулесы, как то мутно всё там. Может сделать вывод какого нибудь сообщения в консоль или в лог вместо загрузки фирмваре, что бы убедиться, что система по данному индентификатору железа пытается запустить нужный файл рулесов.
vr13 писал(а):
27.08.2009 01:08
в подтверждение сказанного, попробуйте:

# mknod test c 300 300
# ls -l test
crw-r--r-- 1 root root 300, 300 2009-08-27 01:03 test
# echo test > test
bash: test: No such device or address

попробовал, что это не понятно, но вот результат
metrologiats:/etc # mknod test c 300 300
metrologiats:/etc # ls -l test
crw-r--r-- 1 root root 300, 300 Авг 27 01:31 test
metrologiats:/etc # echo test > test
bash: test: Нет такого устройства или адреса
metrologiats:/etc #
И ещё, мы можем как то добавить логирование операций, может в логах найдем , что не нравится?
Спасибо сказали:
Аватара пользователя
(asper
Бывший модератор
Сообщения: 1661
Статус: nano vi sed awk !
ОС: Работает как часы !

Re: USB осцилограф DSO-5200A

Сообщение (asper »

vr13 писал(а):
27.08.2009 01:08
и вот соответствующие конфигурационные параметры ядра (для моей инсталляции):

Код: Выделить всё

# CONFIG_PATA_CYPRESS is not set
CONFIG_HID_CYPRESS=y
# CONFIG_USB_STORAGE_CYPRESS_ATACB is not set
# CONFIG_USB_SERIAL_CYPRESS_M8 is not set
# CONFIG_USB_CYPRESS_CY7C63 is not set

посмотрите что у вас

У меня так:

Код: Выделить всё

zcat /proc/config.gz | grep -i cypress
CONFIG_PATA_CYPRESS=m
CONFIG_HID_CYPRESS=m
CONFIG_USB_STORAGE_CYPRESS_ATACB=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_CYPRESS_CY7C63=m

всё модулями, может стоит так и попробовать, хотя я не уверен, что это вообще как-то связано с осциллографом.
Хотя судя по название может быть и то.
Сомнительно доброе привидение
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

(asper писал(а):
27.08.2009 09:09
всё модулями, может стоит так и попробовать, хотя я не уверен, что это вообще как-то связано с осциллографом.
Хотя судя по название может быть и то.

разумеется, с осциллографом это не связано напрямую. из lsusb я увидел что железо осциллографа использует cypress. поскольку ничего драйверного с софтом не предоставляется, то есть вероятность, что firmware грузится средствами стандартных модулей ядра. для этого нужно, чтобы соответствующий драйвер (хз какой из) был загружен до того, как проработает правило udev (где есть run+=<запуск того, что loadит firmware> (если ядром не запускается автоматически, вставить в /etc/modules.autoload.d/kernel-2.6)

еще одна возможность поэкспериментировать на тему, так сказать :)

только что пришло в голову: если и это не получится, надо идти копать в ядре в сторону поддержки usb гаджетов (специальная же функциональность, как раз рассчитанная на общение через usb)
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

metrologiats:/etc/udev/rules.d # zcat /proc/config.gz | grep -i cypress
CONFIG_PATA_CYPRESS=m
CONFIG_USB_SERIAL_CYPRESS_M8=m
CONFIG_USB_CYPRESS_CY7C63=m
metrologiats:/etc/udev/rules.d #
привожу файл инстал, раз уж мы добрались до ядра

Код:

Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, a file `config.cache' that saves the results of its tests to speed up reconfiguring, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.in' is used to create `configure' by a program called `autoconf'. You only need `configure.in' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes a while. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Type `make install' to install the programs and any data files and documentation. 4. You can remove the program binaries and object files from the source code directory by typing `make clean'. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. You can give `configure' initial values for variables by setting them in the environment. Using a Bourne-compatible shell, you can do that on the command line like this: CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure Or on systems that have the `env' program, you can do it like this: env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not supports the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' will install the package's files in `/usr/local/bin', `/usr/local/man', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PATH'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you give `configure' the option `--exec-prefix=PATH', the package will use PATH as the prefix for installing programs and libraries. Documentation and other data files will still use the regular prefix. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' can not figure out automatically, but needs to determine by the type of host the package will run on. Usually `configure' can figure that out, but if it prints a message saying it can not guess the host type, give it the `--host=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name with three fields: CPU-COMPANY-SYSTEM See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the host type. If you are building compiler tools for cross-compiling, you can also use the `--target=TYPE' option to select the type of system they will produce code for and the `--build=TYPE' option to select the type of system on which you are compiling the package. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Operation Controls ================== `configure' recognizes the following options to control how it operates. `--cache-file=FILE' Use and save the results of the tests in FILE instead of `./config.cache'. Set FILE to `/dev/null' to disable caching, for debugging `configure'. `--help' Print a summary of the options to `configure', and exit. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `--version' Print the version of Autoconf used to generate the `configure' script, and exit. `configure' also accepts some other, not widely useful, options.


файл редами

Код:

HantekDSO is a USB-oscilloscope software for Hantek/Voltcraft/Darkwire/Protek/Acetech/e.t.c DSO-2090/2150/2250/5200A/e.t.c. oscilloscopes. It based on libusb and QT/OpenGL libraries. Project includes a firmware extraction utility and udev rules file for loading firmware under Linux/Unix. DSO software depends on: - libusb (library to enable user space application programs to communicate with USB devices) - Qt3 (cross-platform application and UI framework) - mesa-libGL (open-source implementation of the OpenGL specification) To successfully build a project you need to have all development packages installed (libusb-devel, qt-devel (version 3.X), mesa-libGL-devel). Firmware extraction utility depends on: - libbfd (mechanism for the portable manipulation of object files in a variety of formats) - libiberty (collection of subroutines used by various GNU programs) Both libraries (libbfd and libiberty) included in binutils-devel package. Also you need to have fxload utility installed in order to be able to upload firmware in to the oscilloscope. How to BUILD: ./configure make make install How to INSTALL: Firmware You need to find the firmware for the oscilloscope (usually in the folder /Driver on CD), convert it to .hex files, and make sure they get loaded into the oscilloscope when it is connected. Locate one of the following files, depending on the model of your scope: DSO20901.SYS, DSO21001.SYS, DSO21501.SYS, DSO22501.SYS, DSO520A1.SYS and put it in the folder with dsoextractfw utility. All characters in the file name MUST be uppercase. Please, rename the file to uppercase letters if need. Run the program dsoextractfw. It searches for the files listed above in the current directory. If it finds any of them, it creates two files named "DSOxxxx_firmware.hex" and "DSOxxxx_loader.hex". Move these files to /usr/share/HantekDSO/ . Copy the file HantekDSO.rules to /etc/udev/rules.d/ . Now, the firmware should be loaded automatically when the DSO is connected to an USB port. Once the firmware is loaded, the LED on the DSO starts to flash red. You can now run the program hantekdso. The LED will blink green. Make sure you have sufficient privilegies on the USB device or run as root (probably not recommended in the long run). Thanks to: - Fredrik Jansson


ну и простят меня модераторы и админы форума, полный лог компиляции софта

Код:

metrologiats:/home/serg/del_o2/HantekDSO # ./configure checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking for -p flag to install... yes checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for kde-config... /opt/kde3/bin/kde-config checking where to install... /opt/kde3 (as returned by kde-config) checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking whether gcc is blacklisted... no checking whether g++ supports -Wmissing-format-attribute... yes checking whether gcc supports -Wmissing-format-attribute... yes checking whether g++ supports -Wundef... yes checking whether g++ supports -Wno-long-long... yes checking whether g++ supports -Wno-non-virtual-dtor... yes checking whether g++ supports -fno-reorder-blocks... yes checking whether g++ supports -fno-exceptions... yes checking whether g++ supports -fno-check-new... yes checking whether g++ supports -fno-common... yes checking whether g++ supports -fexceptions... yes checking whether system headers can cope with -O2 -fno-inline... irrelevant checking how to run the C++ preprocessor... g++ -E checking whether g++ supports -O0... yes checking whether g++ supports -Wl,--no-undefined... yes checking whether g++ supports -Wl,--allow-shlib-undefined... yes not using lib directory suffix checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ld used by gcc... /usr/i586-suse-linux/bin/ld checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU ld... yes checking for /usr/i586-suse-linux/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/nm -B checking whether ln -s works... yes checking how to recognise dependent libraries... pass_all checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for g77... no checking for xlf... no checking for f77... no checking for frt... no checking for pgf77... no checking for cf77... no checking for fort77... no checking for fl32... no checking for af77... no checking for xlf90... no checking for f90... no checking for pgf90... no checking for pghpf... no checking for epcf90... no checking for gfortran... no checking for g95... no checking for xlf95... no checking for f95... no checking for fort... no checking for ifort... no checking for ifc... no checking for efc... no checking for pgf95... no checking for lf95... no checking for ftn... no checking whether we are using the GNU Fortran 77 compiler... no checking whether accepts -g... no checking the maximum length of command line arguments... 32768 checking command to parse /usr/bin/nm -B output from gcc object... ok checking for objdir... .libs checking for ar... ar checking for ranlib... ranlib checking for strip... strip checking if gcc static flag works... yes checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc supports -c -o file.o... yes checking whether the gcc linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... no checking for dlopen in -ldl... yes checking whether a program can dlopen itself... yes checking whether a statically linked program can dlopen itself... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by g++... /usr/i586-suse-linux/bin/ld checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU ld... yes checking whether the g++ linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC checking if g++ PIC flag -fPIC works... yes checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking for shl_load... (cached) no checking for shl_load in -ldld... (cached) no checking for dlopen... (cached) no checking for dlopen in -ldl... (cached) yes checking whether a program can dlopen itself... (cached) yes checking whether a statically linked program can dlopen itself... (cached) yes appending configuration tag "F77" to libtool checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... /usr/bin/xgettext checking for pkg-config... /usr/bin/pkg-config checking if C++ programs can be compiled... yes checking for strlcat... no checking if strlcat needs custom prototype... yes - in libkdefakes checking for strlcpy... no checking if strlcpy needs custom prototype... yes - in libkdefakes checking for main in -lutil... yes checking for main in -lcompat... no checking for crypt in -lcrypt... yes checking for socklen_t... yes checking for dnet_ntoa in -ldnet... no checking for dnet_ntoa in -ldnet_stub... no checking for inet_ntoa... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for sys/types.h... (cached) yes checking for stdint.h... (cached) yes checking sys/bitypes.h usability... yes checking sys/bitypes.h presence... yes checking for sys/bitypes.h... yes checking for poll in -lpoll... no checking Carbon/Carbon.h usability... no checking Carbon/Carbon.h presence... no checking for Carbon/Carbon.h... no checking CoreAudio/CoreAudio.h usability... no checking CoreAudio/CoreAudio.h presence... no checking for CoreAudio/CoreAudio.h... no checking if res_init needs -lresolv... yes checking for res_init... yes checking if res_init needs custom prototype... no checking for killpg in -lucb... no checking for int... yes checking size of int... 4 checking for short... yes checking size of short... 2 checking for long... yes checking size of long... 4 checking for char *... yes checking size of char *... 4 checking for dlopen in -ldl... (cached) yes checking for shl_unload in -ldld... no checking for size_t... yes checking size of size_t... 4 checking for unsigned long... yes checking size of unsigned long... 4 checking sizeof size_t == sizeof unsigned long... yes checking for PIE support... yes checking if enabling -pie/fPIE support... yes checking crt_externs.h usability... no checking crt_externs.h presence... no checking for crt_externs.h... no checking for _NSGetEnviron... no checking for vsnprintf... yes checking for snprintf... yes checking for X... libraries /usr/lib, headers . checking for IceConnectionNumber in -lICE... yes checking for libXext... yes checking for pthread_create in -lpthread... yes checking for extra includes... no checking for extra libs... no checking for libz... -lz checking for libpng... -lpng -lz -lm checking for libjpeg6b... no checking for libjpeg... -ljpeg checking for perl... /usr/bin/perl checking for Qt... libraries /usr/lib/qt3//lib, headers /usr/lib/qt3/include using -mt checking for moc... /usr/lib/qt3/bin/moc checking for uic... /usr/lib/qt3/bin/uic checking whether uic supports -L ... yes checking whether uic supports -nounload ... yes checking if Qt needs -ljpeg... no checking for rpath... yes checking for KDE... libraries /opt/kde3/lib, headers /opt/kde3/include checking if UIC has KDE plugins available... yes checking for KDE paths... defaults checking for dcopidl... /opt/kde3/bin/dcopidl checking for dcopidl2cpp... /opt/kde3/bin/dcopidl2cpp checking for mcopidl... /opt/kde3/bin/mcopidl checking for artsc-config... /opt/kde3/bin/artsc-config checking for meinproc... /opt/kde3/bin/meinproc checking for kconfig_compiler... /opt/kde3/bin/kconfig_compiler checking for dcopidlng... /opt/kde3/bin/dcopidlng checking for xmllint... /usr/bin/xmllint checking whether byte ordering is bigendian... no checking for MAXPATHLEN... 4096 checking if admin should be compiled... no checking if doc should be compiled... yes checking if dsoextractfw should be compiled... yes checking if po should be compiled... yes checking if src should be compiled... yes configure: creating ./config.status wrong input (flag != 4) at admin/conf.change.pl line 117, <> line 1245. config.status: creating Makefile config.status: creating doc/Makefile config.status: creating doc/en/Makefile config.status: creating dsoextractfw/Makefile config.status: creating po/Makefile config.status: creating src/Makefile config.status: creating config.h config.status: executing depfiles commands Good - your configure finished. Start make now metrologiats:/home/serg/del_o2/HantekDSO # make Makefile:864: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:827: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:869: предупреждение: переопределение команд для цели `bcheck-am' Makefile:832: предупреждение: старые команды для цели `bcheck-am' игнорируются cd . && make -f admin/Makefile.common configure.in; make[1]: Entering directory `/home/serg/del_o2/HantekDSO' *** Creating configure.files make[1]: Leaving directory `/home/serg/del_o2/HantekDSO' cd . && /bin/sh /home/serg/del_o2/HantekDSO/admin/missing --run aclocal-1.10 acinclude.m4:6019: the serial number must appear before any macro definition cd . && /bin/sh /home/serg/del_o2/HantekDSO/admin/missing --run automake-1.10 --gnu cd . && perl admin/am_edit cd . && perl admin/am_edit Makefile.in cd . && rm -f configure cd . && make -f admin/Makefile.common configure make[1]: Entering directory `/home/serg/del_o2/HantekDSO' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO' /bin/sh ./config.status --recheck running CONFIG_SHELL=/bin/sh /bin/sh ./configure --no-create --no-recursion checking build system type... i686-pc-linux-gnu checking host system type... i686-pc-linux-gnu checking target system type... i686-pc-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking for -p flag to install... yes checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for kde-config... /opt/kde3/bin/kde-config checking where to install... /opt/kde3 (as returned by kde-config) checking for style of include used by make... GNU checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking dependency style of g++... gcc3 checking whether gcc is blacklisted... no checking whether g++ supports -Wmissing-format-attribute... yes checking whether gcc supports -Wmissing-format-attribute... yes checking whether g++ supports -Wundef... yes checking whether g++ supports -Wno-long-long... yes checking whether g++ supports -Wno-non-virtual-dtor... yes checking whether g++ supports -fno-reorder-blocks... yes checking whether g++ supports -fno-exceptions... yes checking whether g++ supports -fno-check-new... yes checking whether g++ supports -fno-common... yes checking whether g++ supports -fexceptions... yes checking whether system headers can cope with -O2 -fno-inline... irrelevant checking how to run the C++ preprocessor... g++ -E checking whether g++ supports -O0... yes checking whether g++ supports -Wl,--no-undefined... yes checking whether g++ supports -Wl,--allow-shlib-undefined... yes not using lib directory suffix checking for a sed that does not truncate output... /usr/bin/sed checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking for ld used by gcc... /usr/i586-suse-linux/bin/ld checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU ld... yes checking for /usr/i586-suse-linux/bin/ld option to reload object files... -r checking for BSD-compatible nm... /usr/bin/nm -B checking whether ln -s works... yes checking how to recognise dependent libraries... pass_all checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking dlfcn.h usability... yes checking dlfcn.h presence... yes checking for dlfcn.h... yes checking for g77... no checking for xlf... no checking for f77... no checking for frt... no checking for pgf77... no checking for cf77... no checking for fort77... no checking for fl32... no checking for af77... no checking for xlf90... no checking for f90... no checking for pgf90... no checking for pghpf... no checking for epcf90... no checking for gfortran... no checking for g95... no checking for xlf95... no checking for f95... no checking for fort... no checking for ifort... no checking for ifc... no checking for efc... no checking for pgf95... no checking for lf95... no checking for ftn... no checking whether we are using the GNU Fortran 77 compiler... no checking whether accepts -g... no checking the maximum length of command line arguments... 32768 checking command to parse /usr/bin/nm -B output from gcc object... ok checking for objdir... .libs checking for ar... ar checking for ranlib... ranlib checking for strip... strip checking if gcc static flag works... yes checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC checking if gcc PIC flag -fPIC works... yes checking if gcc supports -c -o file.o... yes checking whether the gcc linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking for shl_load... no checking for shl_load in -ldld... no checking for dlopen... no checking for dlopen in -ldl... yes checking whether a program can dlopen itself... yes checking whether a statically linked program can dlopen itself... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no configure: creating libtool appending configuration tag "CXX" to libtool checking for ld used by g++... /usr/i586-suse-linux/bin/ld checking if the linker (/usr/i586-suse-linux/bin/ld) is GNU ld... yes checking whether the g++ linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes checking for g++ option to produce PIC... -fPIC checking if g++ PIC flag -fPIC works... yes checking if g++ supports -c -o file.o... yes checking whether the g++ linker (/usr/i586-suse-linux/bin/ld) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking for shl_load... (cached) no checking for shl_load in -ldld... (cached) no checking for dlopen... (cached) no checking for dlopen in -ldl... (cached) yes checking whether a program can dlopen itself... (cached) yes checking whether a statically linked program can dlopen itself... (cached) yes appending configuration tag "F77" to libtool checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... /usr/bin/xgettext checking for pkg-config... /usr/bin/pkg-config checking if C++ programs can be compiled... yes checking for strlcat... no checking if strlcat needs custom prototype... yes - in libkdefakes checking for strlcpy... no checking if strlcpy needs custom prototype... yes - in libkdefakes checking for main in -lutil... yes checking for main in -lcompat... no checking for crypt in -lcrypt... yes checking for socklen_t... yes checking for dnet_ntoa in -ldnet... no checking for dnet_ntoa in -ldnet_stub... no checking for inet_ntoa... yes checking for connect... yes checking for remove... yes checking for shmat... yes checking for sys/types.h... (cached) yes checking for stdint.h... (cached) yes checking sys/bitypes.h usability... yes checking sys/bitypes.h presence... yes checking for sys/bitypes.h... yes checking for poll in -lpoll... no checking Carbon/Carbon.h usability... no checking Carbon/Carbon.h presence... no checking for Carbon/Carbon.h... no checking CoreAudio/CoreAudio.h usability... no checking CoreAudio/CoreAudio.h presence... no checking for CoreAudio/CoreAudio.h... no checking if res_init needs -lresolv... yes checking for res_init... yes checking if res_init needs custom prototype... no checking for killpg in -lucb... no checking for int... yes checking size of int... 4 checking for short... yes checking size of short... 2 checking for long... yes checking size of long... 4 checking for char *... yes checking size of char *... 4 checking for dlopen in -ldl... (cached) yes checking for shl_unload in -ldld... no checking for size_t... yes checking size of size_t... 4 checking for unsigned long... yes checking size of unsigned long... 4 checking sizeof size_t == sizeof unsigned long... yes checking for PIE support... yes checking if enabling -pie/fPIE support... yes checking crt_externs.h usability... no checking crt_externs.h presence... no checking for crt_externs.h... no checking for _NSGetEnviron... no checking for vsnprintf... yes checking for snprintf... yes checking for X... libraries /usr/lib, headers . checking for IceConnectionNumber in -lICE... yes checking for libXext... yes checking for pthread_create in -lpthread... yes checking for extra includes... no checking for extra libs... no checking for libz... -lz checking for libpng... -lpng -lz -lm checking for libjpeg6b... no checking for libjpeg... -ljpeg checking for perl... /usr/bin/perl checking for Qt... libraries /usr/lib/qt3//lib, headers /usr/lib/qt3/include using -mt checking for moc... /usr/lib/qt3/bin/moc checking for uic... /usr/lib/qt3/bin/uic checking whether uic supports -L ... yes checking whether uic supports -nounload ... yes checking if Qt needs -ljpeg... no checking for rpath... yes checking for KDE... libraries /opt/kde3/lib, headers /opt/kde3/include checking if UIC has KDE plugins available... yes checking for KDE paths... defaults checking for dcopidl... /opt/kde3/bin/dcopidl checking for dcopidl2cpp... /opt/kde3/bin/dcopidl2cpp checking for mcopidl... /opt/kde3/bin/mcopidl checking for artsc-config... /opt/kde3/bin/artsc-config checking for meinproc... /opt/kde3/bin/meinproc checking for kconfig_compiler... /opt/kde3/bin/kconfig_compiler checking for dcopidlng... /opt/kde3/bin/dcopidlng checking for xmllint... /usr/bin/xmllint checking whether byte ordering is bigendian... no checking for MAXPATHLEN... 4096 checking if admin should be compiled... no checking if doc should be compiled... yes checking if dsoextractfw should be compiled... yes checking if po should be compiled... yes checking if src should be compiled... yes configure: creating ./config.status wrong input (flag != 4) at admin/conf.change.pl line 117, <> line 1246. Good - your configure finished. Start make now /bin/sh ./config.status config.status: creating Makefile config.status: creating doc/Makefile config.status: creating doc/en/Makefile config.status: creating dsoextractfw/Makefile config.status: creating po/Makefile config.status: creating src/Makefile config.status: creating config.h config.status: config.h is unchanged config.status: executing depfiles commands Makefile:869: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:832: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:874: предупреждение: переопределение команд для цели `bcheck-am' Makefile:837: предупреждение: старые команды для цели `bcheck-am' игнорируются cd . && /bin/sh /home/serg/del_o2/HantekDSO/admin/missing --run autoheader rm -f stamp-h1 touch config.h.in cd . && /bin/sh ./config.status config.h config.status: creating config.h config.status: config.h is unchanged make all-recursive make[1]: Entering directory `/home/serg/del_o2/HantekDSO' Makefile:869: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:832: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:874: предупреждение: переопределение команд для цели `bcheck-am' Makefile:837: предупреждение: старые команды для цели `bcheck-am' игнорируются Making all in doc make[2]: Entering directory `/home/serg/del_o2/HantekDSO/doc' Making all in . make[3]: Entering directory `/home/serg/del_o2/HantekDSO/doc' make[3]: Цель `all-am' не требует выполнения команд. make[3]: Leaving directory `/home/serg/del_o2/HantekDSO/doc' Making all in en make[3]: Entering directory `/home/serg/del_o2/HantekDSO/doc/en' /opt/kde3/bin/meinproc --check --cache index.cache.bz2 ./index.docbook make[3]: Leaving directory `/home/serg/del_o2/HantekDSO/doc/en' make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/doc' Making all in dsoextractfw make[2]: Entering directory `/home/serg/del_o2/HantekDSO/dsoextractfw' gcc -DHAVE_CONFIG_H -I. -I.. -DQT_THREAD_SUPPORT -D_REENTRANT -std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -O2 -Wformat-security -Wmissing-format-attribute -MT dsoextractfw.o -MD -MP -MF .deps/dsoextractfw.Tpo -c -o dsoextractfw.o dsoextractfw.c dsoextractfw.c: In function ‘extractFirmware’: dsoextractfw.c:112: warning: cast to pointer from integer of different size dsoextractfw.c:112: warning: format ‘%li’ expects type ‘long int’, but argument 3 has type ‘bfd_size_type’ dsoextractfw.c:132: warning: format ‘%lX’ expects type ‘long unsigned int’, but argument 2 has type ‘bfd_size_type’ dsoextractfw.c:132: warning: format ‘%li’ expects type ‘long int’, but argument 3 has type ‘bfd_size_type’ dsoextractfw.c:133: warning: format ‘%lX’ expects type ‘long unsigned int’, but argument 2 has type ‘bfd_size_type’ dsoextractfw.c:133: warning: format ‘%li’ expects type ‘long int’, but argument 3 has type ‘bfd_size_type’ mv -f .deps/dsoextractfw.Tpo .deps/dsoextractfw.Po /bin/sh ../libtool --silent --tag=CC --mode=link gcc -std=iso9899:1990 -W -Wall -Wchar-subscripts -Wshadow -Wpointer-arith -Wmissing-prototypes -Wwrite-strings -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -O2 -Wformat-security -Wmissing-format-attribute -L/opt/kde3/lib -L/usr/lib/qt3//lib -o dsoextractfw dsoextractfw.o -lbfd -liberty make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/dsoextractfw' Making all in po make[2]: Entering directory `/home/serg/del_o2/HantekDSO/po' make[2]: Цель `all' не требует выполнения команд. make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/po' Making all in src make[2]: Entering directory `/home/serg/del_o2/HantekDSO/src' rm -rf hantekdsowidgetbase.h; /usr/lib/qt3/bin/uic -L /opt/kde3/lib/kde3/plugins/designer -nounload ./hantekdsowidgetbase.ui | /usr/bin/perl -pi -e "s,public QWizard,public KWizard,g; s,#include <qwizard.h>,#include <kwizard.h>,g" >> hantekdsowidgetbase.h; g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT fht.o -MD -MP -MF .deps/fht.Tpo -c -o fht.o fht.cpp fht.cpp: In member function ‘void FHT::reverse(double*, int, int)’: fht.cpp:51: warning: suggest a space before ‘;’ or explicit braces around empty body in ‘for’ statement fht.cpp:56: warning: suggest a space before ‘;’ or explicit braces around empty body in ‘for’ statement mv -f .deps/fht.Tpo .deps/fht.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT glbox.o -MD -MP -MF .deps/glbox.Tpo -c -o glbox.o glbox.cpp mv -f .deps/glbox.Tpo .deps/glbox.Po /usr/lib/qt3/bin/moc ./hantekdso.h -o hantekdso.moc g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT hantekdso.o -MD -MP -MF .deps/hantekdso.Tpo -c -o hantekdso.o hantekdso.cpp mv -f .deps/hantekdso.Tpo .deps/hantekdso.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT hantekdsoathread.o -MD -MP -MF .deps/hantekdsoathread.Tpo -c -o hantekdsoathread.o hantekdsoathread.cpp mv -f .deps/hantekdsoathread.Tpo .deps/hantekdsoathread.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT hantekdsoio.o -MD -MP -MF .deps/hantekdsoio.Tpo -c -o hantekdsoio.o hantekdsoio.cpp mv -f .deps/hantekdsoio.Tpo .deps/hantekdsoio.Po /usr/lib/qt3/bin/moc ./hantekdsowidget.h -o hantekdsowidget.moc g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT hantekdsowidget.o -MD -MP -MF .deps/hantekdsowidget.Tpo -c -o hantekdsowidget.o hantekdsowidget.cpp mv -f .deps/hantekdsowidget.Tpo .deps/hantekdsowidget.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.cpp mv -f .deps/main.Tpo .deps/main.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT sansfont.o -MD -MP -MF .deps/sansfont.Tpo -c -o sansfont.o sansfont.cpp mv -f .deps/sansfont.Tpo .deps/sansfont.Po /usr/lib/qt3/bin/moc hantekdsowidgetbase.h -o hantekdsowidgetbase.moc rm -f hantekdsowidgetbase.cpp echo '#include <kdialog.h>' > hantekdsowidgetbase.cpp echo '#include <klocale.h>' >> hantekdsowidgetbase.cpp /usr/lib/qt3/bin/uic -L /opt/kde3/lib/kde3/plugins/designer -nounload -tr tr2i18n -i hantekdsowidgetbase.h ./hantekdsowidgetbase.ui > hantekdsowidgetbase.cpp.temp; ret=$?; \ /usr/bin/perl -pe "s,tr2i18n( \"\" ),QString::null,g" hantekdsowidgetbase.cpp.temp | /usr/bin/perl -pe "s,tr2i18n( \"\"\, \"\" ),QString::null,g" | /usr/bin/perl -pe "s,image([0-9][0-9]*)_data,img\$1_hantekdsowidgetbase,g" | /usr/bin/perl -pe "s,: QWizard\(,: KWizard(,g" >> hantekdsowidgetbase.cpp;\ rm -f hantekdsowidgetbase.cpp.temp;\ if test "$ret" = 0; then echo '#include "hantekdsowidgetbase.moc"' >> hantekdsowidgetbase.cpp; else rm -f hantekdsowidgetbase.cpp; exit $ret; fi g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT hantekdsowidgetbase.o -MD -MP -MF .deps/hantekdsowidgetbase.Tpo -c -o hantekdsowidgetbase.o hantekdsowidgetbase.cpp mv -f .deps/hantekdsowidgetbase.Tpo .deps/hantekdsowidgetbase.Po /usr/lib/qt3/bin/moc ./glbox.h -o glbox.moc.cpp g++ -DHAVE_CONFIG_H -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I. -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -MT glbox.moc.o -MD -MP -MF .deps/glbox.moc.Tpo -c -o glbox.moc.o glbox.moc.cpp mv -f .deps/glbox.moc.Tpo .deps/glbox.moc.Po /bin/sh ../libtool --silent --tag=CXX --mode=link g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -avoid-version -R /opt/kde3/lib -R /opt/kde3/lib -R /usr/lib/qt3//lib -L/opt/kde3/lib -L/usr/lib/qt3//lib -o hantekdso fht.o glbox.o hantekdso.o hantekdsoathread.o hantekdsoio.o hantekdsowidget.o main.o sansfont.o hantekdsowidgetbase.o glbox.moc.o -lkdeui -lGL -lusb -lm make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/src' make[2]: Entering directory `/home/serg/del_o2/HantekDSO' Makefile:869: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:832: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:874: предупреждение: переопределение команд для цели `bcheck-am' Makefile:837: предупреждение: старые команды для цели `bcheck-am' игнорируются make[2]: Leaving directory `/home/serg/del_o2/HantekDSO' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO' metrologiats:/home/serg/del_o2/HantekDSO # make install Makefile:869: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:832: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:874: предупреждение: переопределение команд для цели `bcheck-am' Makefile:837: предупреждение: старые команды для цели `bcheck-am' игнорируются Making install in doc make[1]: Entering directory `/home/serg/del_o2/HantekDSO/doc' Making install in . make[2]: Entering directory `/home/serg/del_o2/HantekDSO/doc' make[3]: Entering directory `/home/serg/del_o2/HantekDSO/doc' make[3]: Цель `install-exec-am' не требует выполнения команд. make[3]: Цель `install-data-am' не требует выполнения команд. make[3]: Leaving directory `/home/serg/del_o2/HantekDSO/doc' make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/doc' Making install in en make[2]: Entering directory `/home/serg/del_o2/HantekDSO/doc/en' make[3]: Entering directory `/home/serg/del_o2/HantekDSO/doc/en' make[3]: Цель `install-exec-am' не требует выполнения команд. /bin/sh ../../admin/mkinstalldirs /opt/kde3/share/doc/HTML/en/hantekdso /usr/bin/install -c -p -m 644 index.docbook /opt/kde3/share/doc/HTML/en/hantekdso/index.docbook /bin/sh ../../admin/mkinstalldirs /opt/kde3/share/doc/HTML/en/hantekdso /usr/bin/install -c -p -m 644 index.cache.bz2 /opt/kde3/share/doc/HTML/en/hantekdso/ rm -f /opt/kde3/share/doc/HTML/en/hantekdso/common ln -s /opt/kde3/share/doc/HTML/en/common /opt/kde3/share/doc/HTML/en/hantekdso/common make[3]: Leaving directory `/home/serg/del_o2/HantekDSO/doc/en' make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/doc/en' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO/doc' Making install in dsoextractfw make[1]: Entering directory `/home/serg/del_o2/HantekDSO/dsoextractfw' make[2]: Entering directory `/home/serg/del_o2/HantekDSO/dsoextractfw' test -z "/opt/kde3/bin" || /bin/mkdir -p "/opt/kde3/bin" /bin/sh ../libtool --silent --mode=install /usr/bin/install -c -p 'dsoextractfw' '/opt/kde3/bin/dsoextractfw' make[2]: Цель `install-data-am' не требует выполнения команд. make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/dsoextractfw' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO/dsoextractfw' Making install in po make[1]: Entering directory `/home/serg/del_o2/HantekDSO/po' make[2]: Entering directory `/home/serg/del_o2/HantekDSO/po' make[2]: Цель `install-exec-am' не требует выполнения команд. make[2]: Цель `install-data-am' не требует выполнения команд. make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/po' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO/po' Making install in src make[1]: Entering directory `/home/serg/del_o2/HantekDSO/src' make[2]: Entering directory `/home/serg/del_o2/HantekDSO/src' test -z "/opt/kde3/bin" || /bin/mkdir -p "/opt/kde3/bin" /bin/sh ../libtool --silent --mode=install /usr/bin/install -c -p 'hantekdso' '/opt/kde3/bin/hantekdso' /bin/sh ../admin/mkinstalldirs /opt/kde3/share/icons/hicolor/16x16/apps /usr/bin/install -c -p -m 644 ./hi16-app-hantekdso.png /opt/kde3/share/icons/hicolor/16x16/apps/hantekdso.png /bin/sh ../admin/mkinstalldirs /opt/kde3/share/icons/hicolor/32x32/apps /usr/bin/install -c -p -m 644 ./hi32-app-hantekdso.png /opt/kde3/share/icons/hicolor/32x32/apps/hantekdso.png test -z "/opt/kde3/share/applnk/Utilities" || /bin/mkdir -p "/opt/kde3/share/applnk/Utilities" /usr/bin/install -c -p -m 644 'hantekdso.desktop' '/opt/kde3/share/applnk/Utilities/hantekdso.desktop' test -z "/opt/kde3/share/apps/hantekdso" || /bin/mkdir -p "/opt/kde3/share/apps/hantekdso" /usr/bin/install -c -p -m 644 'hantekdsoui.rc' '/opt/kde3/share/apps/hantekdso/hantekdsoui.rc' make[2]: Leaving directory `/home/serg/del_o2/HantekDSO/src' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO/src' make[1]: Entering directory `/home/serg/del_o2/HantekDSO' Makefile:869: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:832: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:874: предупреждение: переопределение команд для цели `bcheck-am' Makefile:837: предупреждение: старые команды для цели `bcheck-am' игнорируются make[2]: Entering directory `/home/serg/del_o2/HantekDSO' Makefile:869: предупреждение: переопределение команд для цели `clean-bcheck' Makefile:832: предупреждение: старые команды для цели `clean-bcheck' игнорируются Makefile:874: предупреждение: переопределение команд для цели `bcheck-am' Makefile:837: предупреждение: старые команды для цели `bcheck-am' игнорируются make[2]: Цель `install-exec-am' не требует выполнения команд. make[2]: Цель `install-data-am' не требует выполнения команд. make[2]: Leaving directory `/home/serg/del_o2/HantekDSO' make[1]: Leaving directory `/home/serg/del_o2/HantekDSO' metrologiats:/home/serg/del_o2/HantekDSO #



Информация есть , осталось только её правильно проанализировать...
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

а lsmod что говорит?
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

вывод lsmod

Код: Выделить всё

metrologiats:/etc/udev/rules.d # lsmod
Module                  Size  Used by
iptable_filter         19840  0
ip_tables              30224  1 iptable_filter
ip6_tables             31376  0
x_tables               33668  2 ip_tables,ip6_tables
af_packet              38656  2
binfmt_misc            28040  1
snd_pcm_oss            64256  0
snd_mixer_oss          33408  1 snd_pcm_oss
snd_seq                73664  0
snd_seq_device         25100  1 snd_seq
microcode              30608  0
fuse                   66332  5
ext3                  155784  1
jbd                    73376  1 ext3
mbcache                25348  1 ext3
loop                   35332  0
dm_mod                 78676  0
ppdev                  25348  0
snd_intel8x0m          34444  1
snd_intel8x0           50460  1
asus_laptop            35064  0
parport_pc             55100  0
pcmcia                 55924  0
shpchp                 50196  0
snd_ac97_codec        120868  2 snd_intel8x0m,snd_intel8x0
i2c_sis96x             21764  0
ac97_bus               18304  1 snd_ac97_codec
pci_hotplug            46116  1 shpchp
ipw2100                89264  0
sis_agp                26240  1
parport                52948  2 ppdev,parport_pc
rtc_cmos               27168  0
led_class              21764  1 asus_laptop
rtc_core               37148  1 rtc_cmos
ohci1394               48432  0
snd_pcm               100100  4 snd_pcm_oss,snd_intel8x0m,snd_intel8x0,snd_ac97_codec
snd_timer              40712  2 snd_seq,snd_pcm
battery                31108  0
ac                     22916  0
button                 25360  0
rtc_lib                19328  1 rtc_core
yenta_socket           43020  2
sr_mod                 33320  0
snd                    79544  13 snd_pcm_oss,snd_mixer_oss,snd_seq,snd_seq_device,snd_intel8x0m,snd_intel8x0,snd_
ac97_codec,snd_pcm,snd_timer
ieee80211              48456  1 ipw2100
skge                   58512  0
i2c_core               41108  1 i2c_sis96x
joydev                 28224  0
ieee1394              107016  1 ohci1394
rsrc_nonstatic         29696  1 yenta_socket
cdrom                  50588  1 sr_mod
serio_raw              23428  0
soundcore              24264  1 snd
ieee80211_crypt        22532  1 ieee80211
agpgart                50868  1 sis_agp
firmware_class         25984  3 microcode,pcmcia,ipw2100
pcmcia_core            55188  3 pcmcia,yenta_socket,rsrc_nonstatic
snd_page_alloc         27400  3 snd_intel8x0m,snd_intel8x0,snd_pcm
sg                     52020  0
usbhid                 60260  0
hid                    53708  1 usbhid
ff_memless             21896  1 usbhid
ehci_hcd               52492  0
ohci_hcd               39940  0
usbcore               164684  4 usbhid,ehci_hcd,ohci_hcd
sd_mod                 45208  8
edd                    26440  0
xfs                   544916  3
fan                    22660  0
pata_sis               30212  7
libata                176220  1 pata_sis
scsi_mod              168308  4 sr_mod,sg,sd_mod,libata
dock                   27536  1 libata
thermal                39452  0
processor              67504  2 thermal
metrologiats:/etc/udev/rules.d #
Спасибо сказали:
Аватара пользователя
vr13
Сообщения: 876
ОС: gentoo

Re: USB осцилограф DSO-5200A

Сообщение vr13 »

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

cypress_cy7c63
c67x00
cypress_m8
ums-cypress

это соответствует приведенной конфигурации параметров

нужно: воткнуть железку и выполнить modprobe на каждый (вполне вероятно что есть зависимости и что-то чего-то потянет автоматически). в конце концов загрузится только то, что смогло инициализироваться, т.е "увидело" железку

после, при загруженном модуле, найти соответствующее usb device и попытаться загрузить firmware. если все загрузится (и софт заработает), то думать как добавить в нужное правило run_=modprobe ...
Спасибо сказали:
156
Сообщения: 234
ОС: OPENSUSE ALTLINUX

Re: USB осцилограф DSO-5200A

Сообщение 156 »

metrologiats:/etc/udev/rules.d # modprobe cypress_cy7c63
metrologiats:/etc/udev/rules.d # modprobe c67x00
FATAL: Module c67x00 not found.
metrologiats:/etc/udev/rules.d # modprobe cypress_m8
metrologiats:/etc/udev/rules.d # modprobe ums-cypress
FATAL: Module ums_cypress not found.
metrologiats:/etc/udev/rules.d #
выполнив меню конфиг и задав поиск, не обнаружил данных модулей c67x00 и ums-cypress. Два других модуля скомпилились, подгрузились, что видно из приведённого кода, но результат отрицательный, решил написать письмо автору проги, зарегистрировался на фрешмете, вот только как правильно сформулировать проблему, я не спец по програмированию, если тупо написать "не находит ДСО", то скорее удалит письмо...

Код: Выделить всё

metrologiats:/usr/src/linux-2.6.25.5-1.1 # modprobe cypress_m8
metrologiats:/usr/src/linux-2.6.25.5-1.1 # modprobe ums-cypress
FATAL: Module ums_cypress not found.
metrologiats:/usr/src/linux-2.6.25.5-1.1 # lsmod
Module                  Size  Used by
cypress_m8             39436  0
usbserial              51120  1 cypress_m8
cypress_cy7c63         20992  0
iptable_filter         19840  0
ip_tables              30224  1 iptable_filter
ip6_tables             31376  0
x_tables               33668  2 ip_tables,ip6_tables
af_packet              38656  2
binfmt_misc            28040  1
snd_pcm_oss            64256  0
snd_mixer_oss          33408  1 snd_pcm_oss
snd_seq                73664  0
snd_seq_device         25100  1 snd_seq
microcode              30608  0
fuse                   66332  5
ext3                  155784  1
jbd                    73376  1 ext3
mbcache                25348  1 ext3
loop                   35332  0
dm_mod                 78676  0
pcmcia                 55924  0
snd_intel8x0           50460  1
snd_intel8x0m          34444  1
snd_ac97_codec        120868  2 snd_intel8x0,snd_intel8x0m
ipw2100                89264  0
usbhid                 60260  0
ppdev                  25348  0
hid                    53708  1 usbhid
ac97_bus               18304  1 snd_ac97_codec
parport_pc             55100  0
rtc_cmos               27168  0
yenta_socket           43020  2
ieee80211              48456  1 ipw2100
snd_pcm               100100  4 snd_pcm_oss,snd_intel8x0,snd_intel8x0m,snd_ac97_codec
sis_agp                26240  1
parport                52948  2 ppdev,parport_pc
i2c_sis96x             21764  0
ohci1394               48432  0
rsrc_nonstatic         29696  1 yenta_socket
ieee80211_crypt        22532  1 ieee80211
asus_laptop            35064  0
snd_timer              40712  2 snd_seq,snd_pcm
rtc_core               37148  1 rtc_cmos
snd                    79544  13 snd_pcm_oss,snd_mixer_oss,snd_seq,snd_seq_device,snd_intel8x0,snd_intel8x0m,snd_
ac97_codec,snd_pcm,snd_timer
battery                31108  0
led_class              21764  1 asus_laptop
ac                     22916  0
button                 25360  0
ff_memless             21896  1 usbhid
rtc_lib                19328  1 rtc_core
i2c_core               41108  1 i2c_sis96x
ieee1394              107016  1 ohci1394
pcmcia_core            55188  3 pcmcia,yenta_socket,rsrc_nonstatic
firmware_class         25984  3 microcode,pcmcia,ipw2100
skge                   58512  0
soundcore              24264  1 snd
shpchp                 50196  0
agpgart                50868  1 sis_agp
sr_mod                 33320  0
joydev                 28224  0
pci_hotplug            46116  1 shpchp
cdrom                  50588  1 sr_mod
snd_page_alloc         27400  3 snd_intel8x0,snd_intel8x0m,snd_pcm
serio_raw              23428  0
sg                     52020  0
ehci_hcd               52492  0
ohci_hcd               39940  0
usbcore               164684  7 cypress_m8,usbserial,cypress_cy7c63,usbhid,ehci_hcd,ohci_hcd
sd_mod                 45208  8
edd                    26440  0
xfs                   544916  3
fan                    22660  0
pata_sis               30212  7
libata                176220  1 pata_sis
scsi_mod              168308  4 sr_mod,sg,sd_mod,libata
dock                   27536  1 libata
thermal                39452  0
processor              67504  2 thermal
metrologiats:/usr/src/linux-2.6.25.5-1.1 # /sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO520A_firmware.hex -s /usr/share/HantekDSO/DSO520A_loader.hex -D /dev/bus/usb/002/004
metrologiats:/usr/src/linux-2.6.25.5-1.1 # hantekdso
kbuildsycoca running...
Hantek DSO not found
metrologiats:/usr/src/linux-2.6.25.5-1.1 #

тут видно, что подгрузил модули, подключил осцилограф, и принудительно дал загрузку фирмваре, на осциле загорелся красный светодиод, запустил прогу оболочку осцилографа, опять ничего не нашел.
Задал вопрос создателю проги http://freshmeat.net/projects/hantekdso/tickets/e987a356970
Спасибо сказали:
prcoder
Сообщения: 4
ОС: Fedora Core

Re: USB осцилограф DSO-5200A

Сообщение prcoder »

1) Модули ядра для работы никакие не нужны. Программа работает через libusb напрямую с устройством.
2) Перед работой нужно загрузить в устройство прошивку. Это делается командой fxload. Обычно она находится в одноимённом пакете. Прошивку можно загрузить вручную с помощью команды такого вида:
/sbin/fxload -t fx2 -I /usr/share/HantekDSO/DSO2150_firmware.hex -s /usr/share/HantekDSO/DSO2150_loader.hex -D /dev/bus/usb/001/003
Циферки в конце можно выяснить командой lsusb. Первая цифра номер шины (Bus), вторая номер устройства на шине (Device). Команду нужно выполнять под рутом. После успешной загрузки прошивки на устройстве должен замигать красный светодиодик.
3) Для автоматической загрузки прошивки можно использовать udev. Для этого нужно скопировать файл HantekDSO.rules в /etc/udev/rules.d (путь для Fedora Core. для других дистрибутивов может отличаться). Переименовывать файл не нужно. Имя не играет роли в данном случае. Саму прошивку и загрузчик нужно скопировать в директорию /usr/share/HantekDSO.
4) Получить прошивку и загрузчик можно запустив dsoextractfw в директории с драйверами для windows. Утилита ищет файлы вида DSO21501.SYS, DSO21502.SYS. Расширение и имя файла должны быть написаны большими буквами.
5) После запуска программы красный мигающий светодиодик должен превратиться в зелёный мигающий светодиодик. Это говорить о том, что программа успешно забирает данные из осциллографа.

Если есть какие-то ещё вопросы пишите сюда или на почту из AUTHORS.
Программа проверена на моделях 2090,2150,2250. Про успешные запуски на 5200A пока никто не писал, но сегодня пришло письмо от человека, который пытается запуститьмодель 5200.
Спасибо сказали:
Ответить