Виртуальный com порт

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

troll80
Сообщения: 14
ОС: sidux

Виртуальный com порт

Сообщение troll80 »

Здравствуйте. такая проблема. есть контроллер с USB- он может работать как полноценное USB устройство .и как виртуальный ком-порт.
у него сейчас залита прошивка которая выдае в usb какие то цифры( скорость небольшая)-моя задача принять это. хотя бы просто увидеть что это работает. но я не знаю как сделать чтобы это железка виделась как виртуальный ком порт- чтобы с ним работать.
так по себе железка видна
lsusb
Bus 003 Device 004: ID 03eb:6124 Atmel Corp. at91sam SAMBA bootloader
................
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Виртуальный com порт

Сообщение sash-kan »

выполните
# dmesg -c
подключите устройство
выполните
$ dmesg
и выложите здесь вывод этой команды.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
troll80
Сообщения: 14
ОС: sidux

Re: Виртуальный com порт

Сообщение troll80 »

вот до подключения

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

root@siduxbox:/home/shuric# dmesg -c
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.29-3.slh.1-sidux-686 (Debian 2.6.29-21) (s.l-h@gmx.de) (gcc version 4.3.3 (Debian 4.3.3-8) ) #1 SMP PREEMPT Sat May 9 00:39:53 UTC 2009
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  NSC Geode by NSC
  Cyrix CyrixInstead
  Centaur CentaurHauls
  Transmeta GenuineTMx86
  Transmeta TransmetaCPU
  UMC UMC UMC UMC
BIOS-provided physical RAM map:
 BIOS-e820: 0000000000000000 - 000000000009b800 (usable)
 BIOS-e820: 000000000009b800 - 00000000000a0000 (reserved)
 BIOS-e820: 00000000000d0000 - 0000000000100000 (reserved)
 BIOS-e820: 0000000000100000 - 000000001fea0000 (usable)
 BIOS-e820: 000000001fea0000 - 000000001feae000 (ACPI data)
 BIOS-e820: 000000001feae000 - 000000001ff00000 (ACPI NVS)
 BIOS-e820: 000000001ff00000 - 0000000020000000 (reserved)
 BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
 BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
 BIOS-e820: 00000000fff80000 - 0000000100000000 (reserved)
DMI 2.3 present.
last_pfn = 0x1fea0 max_arch_pfn = 0x100000
x86 PAT enabled: cpu 0, old 0x7040600070406, new 0x7010600070106
kernel direct mapping tables up to 1fea0000 @ 7000-c000
RAMDISK: 1f4f9000 - 1fe8f5b7
ACPI: RSDP 000F6DB0, 0014 (r0 PTLTD )
ACPI: RSDT 1FEA81AD, 0034 (r1 PTLTD    RSDT    6040000  LTP        0)
ACPI: FACP 1FEADE20, 0074 (r1 ATI    Piranha   6040000 ATI     F4240)
FADT: X_PM1a_EVT_BLK.bit_width (16) does not match PM1_EVT_LEN (4)
FADT: X_PM1b_EVT_BLK.bit_width (16) does not match PM1_EVT_LEN (4)
ACPI: DSDT 1FEA81E1, 5C3F (r1    ATI    SB400  6040000 MSFT  100000E)
ACPI: FACS 1FEAEFC0, 0040
ACPI: SSDT 1FEADE94, 00D6 (r1 PTLTD  POWERNOW  6040000  LTP        1)
ACPI: APIC 1FEADF6A, 005A (r1 PTLTD      APIC    6040000  LTP        0)
ACPI: MCFG 1FEADFC4, 003C (r1 PTLTD    MCFG    6040000  LTP        0)
ACPI: Local APIC address 0xfee00000
0MB HIGHMEM available.
510MB LOWMEM available.
  mapped low ram: 0 - 1fea0000
  low ram: 00000000 - 1fea0000
  bootmap 00002000 - 00005fd4
(9 early reservations) ==> bootmem [0000000000 - 001fea0000]
  #0 [0000000000 - 0000001000]   BIOS data page ==> [0000000000 - 0000001000]
  #1 [0000001000 - 0000002000]    EX TRAMPOLINE ==> [0000001000 - 0000002000]
  #2 [0000006000 - 0000007000]       TRAMPOLINE ==> [0000006000 - 0000007000]
  #3 [0000100000 - 000055b448]    TEXT DATA BSS ==> [0000100000 - 000055b448]
  #4 [001f4f9000 - 001fe8f5b7]          RAMDISK ==> [001f4f9000 - 001fe8f5b7]
  #5 [000055c000 - 000055f000]    INIT_PG_TABLE ==> [000055c000 - 000055f000]
  #6 [000009b800 - 0000100000]    BIOS reserved ==> [000009b800 - 0000100000]
  #7 [0000007000 - 0000008000]          PGTABLE ==> [0000007000 - 0000008000]
  #8 [0000002000 - 0000006000]          BOOTMAP ==> [0000002000 - 0000006000]
found SMP MP-table at [c00f6df0] 000f6df0
Zone PFN ranges:
  DMA      0x00000000 -> 0x00001000
  Normal   0x00001000 -> 0x0001fea0
  HighMem  0x0001fea0 -> 0x0001fea0
Movable zone start PFN for each node
early_node_map[2] active PFN ranges
    0: 0x00000000 -> 0x0000009b
    0: 0x00000100 -> 0x0001fea0
On node 0 totalpages: 130619
free_area_init_node: node 0, pgdat c047ba80, node_mem_map c1000000
  DMA zone: 32 pages used for memmap
  DMA zone: 0 pages reserved
  DMA zone: 3963 pages, LIFO batch:0
  Normal zone: 990 pages used for memmap
  Normal zone: 125634 pages, LIFO batch:31
SB4X0 revision 0x11
Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
ACPI: PM-Timer IO Port: 0x8008
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
ACPI: IOAPIC (id[0x01] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 1, version 33, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 high edge)
ACPI: BIOS IRQ0 pin2 override ignored.
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 21 low level)
Enabling APIC mode:  Flat.  Using 1 I/O APICs
Using ACPI (MADT) for SMP configuration information
SMP: Allowing 1 CPUs, 0 hotplug CPUs
nr_irqs_gsi: 24
PM: Registered nosave memory: 000000000009b000 - 000000000009c000
PM: Registered nosave memory: 000000000009c000 - 00000000000a0000
PM: Registered nosave memory: 00000000000a0000 - 00000000000d0000
PM: Registered nosave memory: 00000000000d0000 - 0000000000100000
Allocating PCI resources starting at 30000000 (gap: 20000000:dec00000)
NR_CPUS:32 nr_cpumask_bits:32 nr_cpu_ids:1 nr_node_ids:1
PERCPU: Allocating 36864 bytes of per cpu data
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 129597
Kernel command line: root=UUID=34f5f0d2-eb20-49fb-9e5e-b8fecae680d3 ro quiet vga=791
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Initializing CPU#0
Preemptible RCU implementation.
PID hash table entries: 2048 (order: 11, 8192 bytes)
Fast TSC calibration using PIT
Detected 1799.920 MHz processor.
Console: colour dummy device 80x25
Спасибо сказали:
troll80
Сообщения: 14
ОС: sidux

Re: Виртуальный com порт

Сообщение troll80 »

после подключения

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

shuric@siduxbox:~$ dmesg
usb 3-1: USB disconnect, address 3
usb 2-2: new full speed USB device using ohci_hcd and address 3
usb 2-2: New USB device found, idVendor=03eb, idProduct=6124
usb 2-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 2-2: configuration #1 chosen from 1 choice
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Виртуальный com порт

Сообщение sash-kan »

и больше ничего не появляется? забыл написать, что неплохо бы подключение производить после перезагрузки системы и команду dmesg выполнять через несколько (10-20) секунд после подключения кабеля.

но, судя по всему, придётся вам углубляться в usb-протоколы и в эмуляцию последовательного порта.
начать, наверно, можно с модуля usbserial:
Documentation/usb/usb-serial.txt
и
$ sudo modinfo usbserial
на предмет параметров, принимаемых модулем.

p.s. dmesg -c очищает буфер сообщений ядра.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
troll80
Сообщения: 14
ОС: sidux

Re: Виртуальный com порт

Сообщение troll80 »

как понимаю там по аналогии виды.должны быть драйверы.один для эмуляции ком порта, другой как юсб. неужели под linux- нет этих драйверов?
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Виртуальный com порт

Сообщение Denjs »

troll80 писал(а):
18.05.2009 09:42
как понимаю там по аналогии виды.должны быть драйверы.один для эмуляции ком порта, другой как юсб. неужели под linux- нет этих драйверов?

Не надо нам "аналогий винды".
Если устройство полноценное, т.е. полностью реализует (нормально и правильно) профиль "последовательный порт" для USB, то никаких драйверов как правило ставить не надо - в большинстве дистрибутивов думаю уже идет в комплекте все что нужно. По крайней мере в SuSe Linux все идет "из коробки".

Например вот такой usb-2-com-адаптер в SuSe Linux 11.0 определяется без всяких доп. модулей, и создается устройство /dev/ttyUSB0 с которым можно работать так-же полноценно как и с "родным" /dev/ttyS0
Если ваше устройство реализует нормальный профиль для usb и полностью(!) - оно должно определяться аналогично.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Виртуальный com порт

Сообщение Denjs »

Вообще как я понимаю нужен подключенный модуль usbserial .
Также вы можете посмотреть сюда и/или сюда. Как я понимаю это про ваше устройство?

В общем просто включите модуль usbserial есил он не включен, и проверьте наличие у вас устройства /dev/ttyUSB0
там впрочем сказано загружать с заданными параметрами (судя по вашему dmesg после подключения - это ваше устройство)

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

>sudo modprobe usbserial vendor=0x03eb product=0x6124
но думаю стоит проверить в начале подымается оно само или нет.
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали:
troll80
Сообщения: 14
ОС: sidux

Re: Виртуальный com порт

Сообщение troll80 »

да. я это изучал..спасибо.

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

>sudo modprobe usbserial vendor=0x03eb product=0x6124

эту команду я выполняю. при подключении своего железа.
контроллер видится.

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

root@siduxbox:/home/shuric# lsusb
Bus 003 Device 002: ID 03eb:6124 Atmel Corp. at91sam SAMBA bootloader
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 15d9:0a33 Dexon Mouse
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

даже прошивается.
мне нужно посмотреть , приходит на usb- порт что -то.
если запустился виртуальный ком порт- я бы minicom ом глянул. и в дальнейшем свое внешнее приложение связал бы с железкой через виртуальный ком. думаю так проще.
Спасибо сказали:
Аватара пользователя
Denjs
Сообщения: 1685
ОС: SuSe 10.2

Re: Виртуальный com порт

Сообщение Denjs »

ЧИТАЙТЕ что я вам написал.
потом на /dev/ttyUSB0 (это и есть ваш "виртуальный" компорт) "натравливайте" любую утилиту для работы с последовательными портом.
тот-же minicom думаю на него вполне успешно можно "натравить".

UPD: Удачи)
QDroid - Среда исполнения и фреймворк для QtScript.
OTPD - Открытые драйвера промышленных принтеров чеков и этикеток (кроссплатформенная подсистема печати).
Спасибо сказали: