PDA

Просмотр полной версии : Очень много USB устройств



ВладОвен
26.09.2023, 11:33
Привет.
Подскажите Есть ли способ подключить 10 или 15 USB устройств через usb-хаб с дополнительным питанием (spk110)?
В Видеобзоре по подключению USB сканера говорилось о максимум пяти устройствах. Но может быть есть метод как подправить этот параметр так, чтобы иметь 10 устройств USB?
И будут ли они тогда видны как последовательные порты?

Проблема возникла из-за того что нужно подключить 10 устройств. Но все они отвечают асинхронно поэтому не могут работать на одной шине. Вот и появилась идея повесить их все на разные шины и тогда принимать от них пакеты асинхронно по времени.

Евгений Кислов
26.09.2023, 11:36
Добрый день.
Ответ на все вопросы - нет.

ВладОвен
26.09.2023, 11:58
Хорошо. То есть мы можем использовать пять последних портов и пять USB устройств. Максимум получится 10 устройств для посредственного асинхронного приёма данных. Так?

Евгений Кислов
26.09.2023, 12:17
Хорошо. То есть мы можем использовать пять последних портов и пять USB устройств. Максимум получится 10 устройств для посредственного асинхронного приёма данных. Так?

Можно еще использовать конвертеры Ethernet/COM, чтобы избежать упомянутых ограничений.

SlavikP
27.09.2023, 09:23
Можно поэкспериментировать с подобными адаптерами.
4 RS-485 serial ports: USB to 4 RS-485 serial ports, maximum speed 12Mbps, automatic transmission and reception switching, with electrostatic protection, overcurrent protection and lightning protection.
70502

ВладОвен
03.10.2023, 12:04
В видео говорилось о максимум 5 устройствах.

А при перезагрузке ПЛК эти 5 устройств USB меняются по номерам?
Т.е. второе устройство всегда будет иметь номер 2?

Евгений Кислов
03.10.2023, 12:18
В видео говорилось о максимум 5 устройствах.

А при перезагрузке ПЛК эти 5 устройств USB меняются по номерам?
Т.е. второе устройство всегда будет иметь номер 2?

Изменения номеров не должно происходить.

ВладОвен
03.10.2023, 12:41
А устройства с мостом CP210x как будут видны?
Как порты COM6...COM10 ?

Евгений Кислов
03.10.2023, 12:58
А устройства с мостом CP210x как будут видны?
Как порты COM6...COM10 ?

https://owen.ru/forum/showthread.php?t=28167&page=7&p=329252&viewfull=1#post329252
Мостовые конвертеры мы не тестировали, но по идее нумерация должна быть последовательной (для СПК - COM6, COM7 и т.д.).

ВладОвен
10.10.2023, 18:01
Здравствуйте.
Подскажите, почему не видно устройства с микросхемой CP210x?
Подключили это устройство через usb-hub с дополнительным питанием к СПК110.
В компьютере под Windows это устройство видно как "Silicon Labs CP210x...".
Но в списке устройств его нет.
См.код:


[root@spk110 ~]# ls -lah /dev/inputtotal 0
drwxr-xr-x 4 root root 120 Oct 10 16:45 .
drwxr-xr-x 11 root root 2.8K Oct 10 16:43 ..
drwxr-xr-x 2 root root 60 Oct 10 16:45 by-id
drwxr-xr-x 2 root root 80 Oct 10 16:45 by-path
crw-rw---- 1 root input 13, 64 Oct 10 16:43 event0
crw-rw---- 1 root input 13, 65 Oct 10 16:45 event1


При этом: event0 - это дисплей, а event1 - usb-hid-сканер.
Но еще одно устройство с CP210x не видно.

Евгений Кислов
10.10.2023, 18:56
Добрый день.
Уточните, что это устройство из себя представляет? Cкиньте ссылку на даташит.
После подключения устройства через хаб выполните команду dmesg, сохраните вывод в текстовом файле и выложите сюда.
Если подключать его напрямую в USB порт СПК - оно появляется в списке?

melky
10.10.2023, 22:25
ВладОвен а что пишет в by-id и в by-path ?

ВладОвен
11.10.2023, 10:30
После подключения устройства через хаб выполните команду dmesg, сохраните вывод в текстовом файле и выложите сюда.






[root@spk110 ~]# dmesg
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.19.94-rt39-ti-owen-ga242ccf3f1-owen10.58.1.18.17.8 (oe-user@oe-host ) (gcc version 9.3.0 (GCC)) #1 PREEMPT RT Fri Sep 23 08:10:42 UTC 2022
[ 0.000000] CPU: ARMv7 Processor [413fc082] revision 2 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt: Machine model: spk1xxm01
[ 0.000000] Memory policy: Data cache writeback
[ 0.000000] cma: Reserved 48 MiB at 0x9a800000
[ 0.000000] On node 0 totalpages: 131072
[ 0.000000] Normal zone: 1152 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 131072 pages, LIFO batch:31
[ 0.000000] CPU: All CPU(s) started in SVC mode.
[ 0.000000] AM335X ES2.1 (neon)
[ 0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[ 0.000000] pcpu-alloc: [0] 0
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 129920
[ 0.000000] Kernel command line: console=/dev/null consoleblank=0 quiet root=/dev/mmcblk1p5 ro rootfstype=squashfs rootwait rootfs_partition=5 rootfs_volume=5 panic=15 ti_cpsw.descs_pool_size= 8192
[ 0.000000] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
[ 0.000000] Memory: 457988K/524288K available (7168K kernel code, 301K rwdata, 2064K rodata, 10 24K init, 240K bss, 17148K reserved, 49152K cma-reserved, 0K highmem)
[ 0.000000] Virtual kernel memory layout:
[ 0.000000] vector : 0xffff0000 - 0xffff1000 ( 4 kB)
[ 0.000000] fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
[ 0.000000] vmalloc : 0xe0800000 - 0xff800000 ( 496 MB)
[ 0.000000] lowmem : 0xc0000000 - 0xe0000000 ( 512 MB)
[ 0.000000] pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
[ 0.000000] modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
[ 0.000000] .text : 0x(ptrval) - 0x(ptrval) (8160 kB)
[ 0.000000] .init : 0x(ptrval) - 0x(ptrval) (1024 kB)
[ 0.000000] .data : 0x(ptrval) - 0x(ptrval) ( 302 kB)
[ 0.000000] .bss : 0x(ptrval) - 0x(ptrval) ( 241 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU priority boosting: priority 1 delay 500 ms.
[ 0.000000] No expedited grace period (rcu_normal_after_boot).
[ 0.000000] Tasks RCU enabled.
[ 0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
[ 0.000000] IRQ: Found an INTC at 0x(ptrval) (revision 5.0) with 128 interrupts
[ 0.000000] OMAP clockevent source: timer2 at 25000000 Hz
[ 0.000022] sched_clock: 32 bits at 25MHz, resolution 40ns, wraps every 85899345900ns
[ 0.000039] clocksource: timer1: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 76450417 870 ns
[ 0.000048] OMAP clocksource: timer1 at 25000000 Hz
[ 0.000308] timer_probe: no matching timers found
[ 0.000489] Console: colour dummy device 80x30
[ 0.000579] Calibrating delay loop... 597.60 BogoMIPS (lpj=2988032)
[ 0.058678] pid_max: default: 32768 minimum: 301
[ 0.058987] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.059001] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[ 0.060242] CPU: Testing write buffer coherency: ok
[ 0.061527] Setting up static identity map for 0x80100000 - 0x80100060
[ 0.061847] rcu: Hierarchical SRCU implementation.
[ 0.064796] devtmpfs: initialized
[ 0.080088] random: get_random_u32 called from bucket_table_alloc+0x94/0x1a0 with crng_init=0
[ 0.080800] VFP support v0.3: implementor 41 architecture 3 part 30 variant c rev 3
[ 0.081316] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260 4462750000 ns
[ 0.081341] futex hash table entries: 256 (order: 1, 8192 bytes)
[ 0.086192] pinctrl core: initialized pinctrl subsystem
[ 0.087642] NET: Registered protocol family 16
[ 0.091920] DMA: preallocated 256 KiB pool for atomic coherent allocations
[ 0.170132] pinctrl-single 44e10800.pinmux: 142 pins, size 568
[ 0.174150] OMAP GPIO hardware version 0.1
[ 0.190592] No ATAGs?
[ 0.211268] edma 49000000.edma: TI EDMA DMA engine driver
[ 0.214702] usbcore: registered new interface driver usbfs
[ 0.214793] usbcore: registered new interface driver hub
[ 0.214968] usbcore: registered new device driver usb
[ 0.242402] vrtc: supplied by vbat
[ 0.249748] vio: supplied by vbat
[ 0.259535] vdd1: supplied by vbat
[ 0.269529] vdd2: supplied by vbat
[ 0.289645] vdig1: supplied by vbat
[ 0.299644] vdig2: supplied by vbat
[ 0.309643] vpll: supplied by vbat
[ 0.310695] vdac: supplied by vbat
[ 0.319653] vaux1: supplied by vbat
[ 0.329638] vaux2: supplied by vbat
[ 0.339652] vaux33: supplied by vbat
[ 0.349646] vmmc: supplied by vbat
[ 0.349806] random: fast init done
[ 0.359686] vbb: supplied by vbat
[ 0.360698] omap_i2c 44e0b000.i2c: bus 0 rev0.11 at 400 kHz
[ 0.361835] i2c i2c-2: of_i2c: modalias failure on /ocp/i2c@4819c000/exp@38
[ 0.361865] i2c i2c-2: Failed to create I2C device for /ocp/i2c@4819c000/exp@38
[ 0.361894] omap_i2c 4819c000.i2c: bus 2 rev0.11 at 400 kHz
[ 0.362301] pps_core: LinuxPPS API ver. 1 registered
[ 0.362309] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linu x.it>
[ 0.362340] PTP clock support registered
[ 0.362395] EDAC MC: Ver: 3.0.0
[ 0.363541] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
[ 0.365447] clocksource: Switched to clocksource timer1
[ 0.379184] NET: Registered protocol family 2
[ 0.380386] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 7168 bytes)
[ 0.380434] TCP established hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.380518] TCP bind hash table entries: 4096 (order: 4, 98304 bytes)
[ 0.380770] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.380923] UDP hash table entries: 256 (order: 2, 16384 bytes)
[ 0.380976] UDP-Lite hash table entries: 256 (order: 2, 16384 bytes)
[ 0.381264] NET: Registered protocol family 1
[ 0.382066] RPC: Registered named UNIX socket transport module.
[ 0.382076] RPC: Registered udp transport module.
[ 0.382081] RPC: Registered tcp transport module.
[ 0.382087] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.384115] Initialise system trusted keyrings
[ 0.384481] workingset: timestamp_bits=14 max_order=17 bucket_order=3
[ 0.393099] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.394301] NFS: Registering the id_resolver key type
[ 0.394354] Key type id_resolver registered
[ 0.394361] Key type id_legacy registered
[ 0.394426] ntfs: driver 2.1.32 [Flags: R/O].
[ 0.399760] Key type asymmetric registered
[ 0.399777] Asymmetric key parser 'x509' registered
[ 0.399885] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 248)
[ 0.399898] io scheduler noop registered
[ 0.399906] io scheduler deadline registered (default)
[ 0.400288] io scheduler cfq registered
[ 0.400298] io scheduler mq-deadline registered (default)
[ 0.400305] io scheduler kyber registered
[ 0.409653] omap_uart 44e09000.serial: no wakeirq for uart3
[ 0.409878] 44e09000.serial: ttyO3 at MMIO 0x44e09000 (irq = 30, base_baud = 3000000) is a OMAP UART3
[ 0.410499] omap_uart 48022000.serial: no wakeirq for uart0
[ 0.410712] 48022000.serial: ttyO0 at MMIO 0x48022000 (irq = 31, base_baud = 3000000) is a OMAP UART0
[ 0.411231] omap_uart 48024000.serial: no wakeirq for uart4
[ 0.411353] 48024000.serial: ttyO4 at MMIO 0x48024000 (irq = 32, base_baud = 3000000) is a OMAP UART4
[ 0.411851] omap_uart 481a6000.serial: no wakeirq for uart1
[ 0.412037] 481a6000.serial: ttyO1 at MMIO 0x481a6000 (irq = 33, base_baud = 3000000) is a OMAP UART1
[ 0.412544] omap_uart 481a8000.serial: no wakeirq for uart2
[ 0.412711] 481a8000.serial: ttyO2 at MMIO 0x481a8000 (irq = 34, base_baud = 3000000) is a OMAP UART2
[ 0.414554] omap_rng 48310000.rng: Random Number Generator ver. 20
[ 0.415658] tilcdc-panel panel: found enable GPIO
[ 0.416103] OF: graph: no port node found in /ocp/lcdc@4830e000
[ 0.416454] OF: graph: no port node found in /ocp/lcdc@4830e000
[ 0.417108] OF: graph: no port node found in /ocp/lcdc@4830e000
[ 0.417130] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[ 0.417135] [drm] No driver support for vblank timestamp query.
[ 0.417630] random: crng init done
[ 0.418425] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000120): FIFO underflow
[ 0.418460] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418482] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418502] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418522] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418542] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418561] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418581] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418601] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.418621] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000020): FIFO underflow
[ 0.422708] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000004): Sync lost
[ 0.423687] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000004): Sync lost
[ 0.427572] tilcdc 4830e000.lcdc: tilcdc_crtc_irq(0x00000004): Sync lost
[ 0.442950] tilcdc 4830e000.lcdc: fb0: DRM emulated frame buffer device
[ 0.443397] [drm] Initialized tilcdc 1.0.0 20121205 for 4830e000.lcdc on minor 0
[ 0.457496] brd: module loaded
[ 0.464654] loop: module loaded
[ 0.470363] at25 spi0.0: 128 KByte at25 eeprom, pagesize 4096
[ 0.470918] libphy: Fixed MDIO Bus: probed
[ 0.545515] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
[ 0.545533] davinci_mdio 4a101000.mdio: detected phy mask fffffffe
[ 0.546858] libphy: 4a101000.mdio: probed
[ 0.546879] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver SMSC LAN8710/LA N8720
[ 0.547729] cpsw 4a100000.ethernet: No slave[0] phy_id, phy-handle, or fixed-link property
[ 0.547865] cpsw 4a100000.ethernet: Detected MACID = 68:5e:1c:f7:72:4d
[ 0.548852] cpsw 4a100000.ethernet: initialized cpsw ale version 1.4
[ 0.548865] cpsw 4a100000.ethernet: ALE Table size 1024
[ 0.550964] PPP generic driver version 2.4.2
[ 0.551351] PPP MPPE Compression module registered
[ 0.551363] NET: Registered protocol family 24
[ 0.551625] usbcore: registered new interface driver usbserial_generic
[ 0.551680] usbserial: USB Serial support registered for generic
[ 0.552643] input: ti-tsc as /devices/platform/ocp/44e0d000.tscadc/TI-am335x-tsc.0.auto/input/i nput0
[ 0.561784] tps65910-rtc tps65910-rtc: registered as rtc0
[ 0.561890] i2c /dev entries driver
[ 0.562476] IR NEC protocol handler initialized
[ 0.562485] IR RC5(x/sz) protocol handler initialized
[ 0.562490] IR RC6 protocol handler initialized
[ 0.562495] IR JVC protocol handler initialized
[ 0.562500] IR Sony protocol handler initialized
[ 0.562506] IR SANYO protocol handler initialized
[ 0.562511] IR Sharp protocol handler initialized
[ 0.562516] IR MCE Keyboard/mouse protocol handler initialized
[ 0.562521] IR XMP protocol handler initialized
[ 0.564720] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
[ 0.566575] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22)
[ 0.566589] omap_hsmmc 48060000.mmc: Got CD GPIO
[ 0.566627] omap_hsmmc 48060000.mmc: Got WP GPIO
[ 0.567424] omap_hsmmc 48060000.mmc: Linked as a consumer to regulator.14
[ 0.594702] omap_hsmmc 481d8000.mmc: Linked as a consumer to regulator.14
[ 0.622092] u32 classifier
[ 0.622104] Actions configured
[ 0.622409] gre: GRE over IPv4 demultiplexor driver
[ 0.623291] NET: Registered protocol family 10
[ 0.626020] Segment Routing with IPv6
[ 0.626158] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
[ 0.627399] NET: Registered protocol family 17
[ 0.627570] Bridge firewalling registered
[ 0.627992] l2tp_core: L2TP core driver, V2.0
[ 0.628086] l2tp_ppp: PPPoL2TP kernel driver, V2.0
[ 0.628092] l2tp_netlink: L2TP netlink interface
[ 0.628217] Key type dns_resolver registered
[ 0.628577] Retain memory: size=65536, address=0x9f590000
[ 0.628604] omap_voltage_late_init: Voltage driver support not added
[ 0.629892] Loading compiled-in X.509 certificates
[ 0.633954] Warning: unable to open an initial console.
[ 0.634356] Waiting for root device /dev/mmcblk1p5...
[ 0.678698] mmc1: new high speed MMC card at address 0001
[ 0.680114] mmcblk1: mmc1:0001 004GA0 3.69 GiB
[ 0.680815] mmcblk1boot0: mmc1:0001 004GA0 partition 1 2.00 MiB
[ 0.681505] mmcblk1boot1: mmc1:0001 004GA0 partition 2 2.00 MiB
[ 0.681856] mmcblk1rpmb: mmc1:0001 004GA0 partition 3 512 KiB, chardev (246:0)
[ 0.686255] Alternate GPT is invalid, using primary GPT.
[ 0.686359] mmcblk1: p1 p2 p3 p4 p5 p6 p7
[ 0.719561] VFS: Mounted root (squashfs filesystem) readonly on device 179:5.
[ 0.722447] devtmpfs: mounted
[ 0.725058] Freeing unused kernel memory: 1024K
[ 0.725870] Run /sbin/init as init process
[ 0.853865] init: Console is alive
[ 0.855780] init: - watchdog -
[ 1.613222] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[ 1.627803] kmodloader: done loading kernel modules from /etc/modules-boot.d/*
[ 1.637591] init: - preinit -
[ 1.955764] tilcdc 4830e000.lcdc: reset: timeout waiting for framedone while resetting LCDC
[ 2.805517] net eth0: initializing cpsw version 1.12 (0)
[ 2.807361] libphy: PHY not found
[ 2.807387] net eth0: phy "" not found on slave 0, err -19
[ 2.906634] SMSC LAN8710/LAN8720 4a101000.mdio:00: attached PHY driver [SMSC LAN8710/LAN8720] ( mii_bus:phy_addr=4a101000.mdio:00, irq=POLL)
[ 2.946323] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 5.447399] SWUPDATE: U-Boot version 2020.01+gitAUTOINC+c2b38e82c1-r7
[ 5.494789] SWUPDATE: U-Boot startup version 1.0.0-tano1.owen16
[ 5.515283] SWUPDATE: Kernel version 4.19.94-rt39-ti-owen-ga242ccf3f1-owen10.58.1.18.17.8
[ 5.546961] SWUPDATE: Read-only filesystem version 2.4.0923.1000
[ 5.670061] mount_root: /dev/mmcblk1p1: p1, rw, start 3145728, size 8388608
[ 5.673553] mount_root: /dev/mmcblk1p2: p2, rw, start 11534336, size 67108864
[ 5.674884] mount_root: /dev/mmcblk1p3: p3, rw, start 78643200, size 536870912
[ 5.678303] mount_root: /dev/mmcblk1p4: p4, rw, start 615514112, size 67108864
[ 5.678558] mount_root: /dev/mmcblk1p5: p5, rw, start 682622976, size 536870912 [rootfs]
[ 5.681808] mount_root: /dev/mmcblk1p6: p6, rw, start 1219493888, size 402653184
[ 5.685009] mount_root: /dev/mmcblk1p7: p7, rw, start 1622147072, size 2285895680 [overlay]
[ 5.685100] mount_root: root filesystem on the /dev/mmcblk1p5 partition of /dev/mmcblk1 (rw) de vice
[ 5.701158] mount_root: founded suitable overlay partition /dev/mmcblk1p7
[ 5.702190] mount_root: loading kmods from internal overlay
[ 5.814357] kmodloader: loading kernel modules from //etc/modules-boot.d/*
[ 5.818609] kmodloader: done loading kernel modules from //etc/modules-boot.d/*
[ 6.006693] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
[ 6.006790] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 6.079544] EXT4-fs (mmcblk1p7): recovery complete
[ 6.080335] EXT4-fs (mmcblk1p7): mounted filesystem with ordered data mode. Opts: (null)
[ 6.080876] block: attempting to load /tmp/ext4_cfg/upper/etc/config/fstab
[ 6.085006] block: extroot: not configured
[ 6.132884] EXT4-fs (mmcblk1p7): mounted filesystem with ordered data mode. Opts: (null)
[ 6.208817] block: attempting to load /tmp/ext4_cfg/upper/etc/config/fstab
[ 6.212408] block: extroot: not configured
[ 6.237423] mount_root: switching to ext4 overlay
[ 6.319493] Root filesystem mounted
[ 7.579572] urandom-seed: Seeding with /etc/urandom.seed
[ 7.724388] BOOTUP: normal
[ 7.750102] preinit: enable interrupt pacing for the CPSW
[ 8.313978] cpsw 4a100000.ethernet eth0: Link is Down
[ 8.341222] procd: - watchdog -
[ 8.342977] procd: failed to set stdio: No such device
[ 8.358089] procd: - ubus -
[ 8.419879] procd: - init -
[ 12.453864] kmodloader: loading kernel modules from /etc/modules.d/*
[ 12.486640] tun: Universal TUN/TAP device driver, 1.6
[ 12.574297] usbcore: registered new interface driver cdc_wdm
[ 12.607011] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[ 12.919585] cfg80211: Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[ 12.920495] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 12.920514] cfg80211: failed to load regulatory.db
[ 12.922340] cryptodev: loading out-of-tree module taints kernel.
[ 12.936079] cryptodev: driver 1.11 loaded.
[ 12.994654] PPTP driver version 0.8.5
[ 13.018706] xt_time: kernel timezone is +0300
[ 13.021373] usbcore: registered new interface driver cdc_ncm
[ 13.069511] usbcore: registered new interface driver qmi_wwan
[ 13.081785] usbcore: registered new interface driver cdc_mbim
[ 13.097540] kmodloader: done loading kernel modules from /etc/modules.d/*
[ 26.264389] udevd[1791]: starting version 3.2.9
[ 26.612026] udevd[1791]: starting eudev-3.2.9
[ 37.553406] am335x-phy-driver 47401300.usb-phy: 47401300.usb-phy supply vcc not found, using du mmy regulator
[ 37.553494] am335x-phy-driver 47401300.usb-phy: Linked as a consumer to regulator.0
[ 37.554537] am335x-phy-driver 47401b00.usb-phy: 47401b00.usb-phy supply vcc not found, using du mmy regulator
[ 37.554600] am335x-phy-driver 47401b00.usb-phy: Linked as a consumer to regulator.0
[ 37.704587] musb-hdrc musb-hdrc.1: MUSB HDRC host driver
[ 37.704703] musb-hdrc musb-hdrc.1: new USB bus registered, assigned bus number 1
[ 37.709154] hub 1-0:1.0: USB hub found
[ 37.711494] hub 1-0:1.0: 1 port detected
[ 38.155519] usb 1-1: new high-speed USB device number 2 using musb-hdrc
[ 38.337025] hub 1-1:1.0: USB hub found
[ 38.337171] hub 1-1:1.0: 4 ports detected
[ 38.655730] usb 1-1.2: new high-speed USB device number 3 using musb-hdrc
[ 38.787770] hub 1-1.2:1.0: USB hub found
[ 38.787959] hub 1-1.2:1.0: 4 ports detected
[ 39.105789] usb 1-1.2.2: new full-speed USB device number 4 using musb-hdrc
[ 49.039845] usbcore: registered new interface driver cp210x
[ 49.041647] usbserial: USB Serial support registered for cp210x
[ 49.041923] cp210x 1-1.2.2:1.0: cp210x converter detected
[ 49.046996] usb 1-1.2.2: cp210x converter now attached to ttyUSB0
[ 66.396299] net eth0: initializing cpsw version 1.12 (0)
[ 66.417574] libphy: PHY not found
[ 66.417623] net eth0: phy "" not found on slave 0, err -19
[ 66.536118] SMSC LAN8710/LAN8720 4a101000.mdio:00: attached PHY driver [SMSC LAN8710/LAN8720] ( mii_bus:phy_addr=4a101000.mdio:00, irq=POLL)
[ 66.789914] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 68.646859] cpsw 4a100000.ethernet eth0: Link is Up - 100Mbps/Full - flow control off
[ 68.647086] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[ 88.459585] using random self ethernet address
[ 88.459626] using random host ethernet address
[ 88.526468] usb0: HOST MAC 42:61:64:55:53:42
[ 88.526777] usb0: MAC 48:6f:73:74:50:43
[ 88.672514] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[ 88.937713] IPv6: ADDRCONF(NETDEV_UP): usb0: link is not ready
[ 185.482317] usb 1-1.2.3: new full-speed USB device number 5 using musb-hdrc
[ 186.256273] input: Scanner
[ 186.256273] Scanner as /devices/platform/ocp/47400000.usb/47401c00.usb/musb-hdrc.1/usb1/1-1/1- 1.2/1-1.2.3/1-1.2.3:1.0/0003:18D1:000B.0001/input/input1
[ 186.337690] hid-generic 0003:18D1:000B.0001: input: USB HID v1.01 Keyboard [Scanner
[ 186.337690] Scanner] on usb-musb-hdrc.1-1.2.3/input0
[ 186.346302] usbcore: registered new interface driver usbhid
[ 186.347267] usbhid: USB HID core driver
[ 2026.053285] hrtimer: interrupt took 12508 ns
[ 6378.306262] sched: RT throttling activated
[root@spk110 ~]#

ВладОвен
11.10.2023, 10:31
ВладОвен а что пишет в by-id и в by-path ?

Я не знаю. Как это узнать?

melky
11.10.2023, 10:37
посмотреть в этих папках до и после подключения вашего устройства.
А так же посмотреть как выше писали через dmesg | grep usb


[ 49.041923] cp210x 1-1.2.2:1.0: cp210x converter detected
[ 49.046996] usb 1-1.2.2: cp210x converter now attached to ttyUSB0

Он у вас определился, вероятно один конвертер в него подключен?

Учитывая, что это hub и вы можете подключать конвертеры в разной последовательно, надо сделать символические ссылки через правила udev, привязавшись к появляющимся портам usb 1-1.2.2 или иное...
Если конвертеры будут одинаковые и без серийных номеров надо смотреть разницу при их подключении, чтобы привязка была однозначной.
После привязки у меня, например создаются такие ссылки /dev/mydev/Com1 и не важно куда устройство поселила система на ttyUSB0 или ttyUSB1, для меня это устройство всегда /dev/mydev/Com1

Правда я не знаю, как в таком случае обращаться к порту из CodeSys 3.5 но непосредственно в Linux это работает.

cp210x - а, это у вас и есть конвертер, а не hub, он сел на порт ttyUSB0 то есть обращение к порту /dev/ttyUSB0 или создание под него символической ссылки по правилам, чтобы оно для вас всегда было однозначным

ВладОвен
11.10.2023, 10:53
Уточните, что это устройство из себя представляет? Cкиньте ссылку на даташит.
После подключения устройства через хаб выполните команду dmesg, сохраните вывод в текстовом файле и выложите сюда.
Если подключать его напрямую в USB порт СПК - оно появляется в списке?

Это устройство собственной разработки. Но оно использует чип CP210x.
В винде оно видится:

70857

Я отключил устройство от юсб-хаба:



[64583.006313] usb 1-1.2.2: USB disconnect, device number 4
[64583.008042] cp210x ttyUSB0: cp210x converter now disconnected from ttyUSB0
[64583.008362] cp210x 1-1.2.2:1.0: device disconnected


Я отключил юсб-хаб от ПЛК:



[64924.248342] usb 1-1: USB disconnect, device number 2
[64924.248384] usb 1-1.2: USB disconnect, device number 3
[64924.248402] usb 1-1.2.3: USB disconnect, device number 5


Я включил устройство напрямую в ПЛК:



[64974.551366] usb 1-1: new full-speed USB device number 6 using musb-hdrc
[64974.735490] cp210x 1-1:1.0: cp210x converter detected
[64974.738676] usb 1-1: cp210x converter now attached to ttyUSB0


Выполнил команду:


[root@spk110 ~]# ls -lah /dev/input
total 0
drwxr-xr-x 3 root root 80 Oct 11 10:44 .
drwxr-xr-x 11 root root 2.8K Oct 11 10:45 ..
drwxr-xr-x 2 root root 60 Oct 11 10:44 by-path
crw-rw---- 1 root input 13, 64 Oct 10 16:43 event0
[root@spk110 ~]#

Евгений Кислов
11.10.2023, 11:01
Это устройство собственной разработки.

Так и не понял, почему оно должно появиться в списке HID устройств.
https://owen.ru/forum/showthread.php?t=38432&p=418036&viewfull=1#post418036

melky
11.10.2023, 11:03
Тут наверное Евгений Кислов должен подсказать. Я не работал с CodeSys 3.5 и не знаю, каким способом CodeSys должен видеть порты, подсказал бы иначе.
Символическую ссылку то так и в /dev/input (вместо моего варианта с /dev/mydev) можно сделать если в ПЛК есть udev, а судя по всему он есть. Так же конвертер должен появиться в папке by-path

я не знаю, насколько актуален будет такой подход для ПЛК, просто на Linux можно создавать симлинки на порты.
https://www.blogger.com/blog/post/edit/1718001171922027078/1857839968815016413

ВладОвен
11.10.2023, 11:03
Учитывая, что это hub и вы можете подключать конвертеры в разной последовательно, надо сделать символические ссылки через правила udev, привязавшись к появляющимся портам usb 1-1.2.2 или иное...


Это открытый вопрос. На Raspberry в CodeSys тоже постоянная путаница с портами. Надо будет в этом серьезно разобраться...

melky
11.10.2023, 11:09
ВладОвен путаница происходит из-за очередности подключения, не было портов, подключили первый, он сел на ttyUSB0, второй на ttyUSB1, поменяли очередность подключения или по каким-то причинам произошло отключение порта, он поменяет свою привязку. Первым подключите второе устройство, оно станет ttyUSB0, первое соответственно ttyUSB1.

Вот чтобы от этого уйти, для этого и делается привязка симлинков через правила udev. У меня вопросов с этим больше не возникает :)
Но там требуется немного разобраться, так как на разных платформах и с разными конвертерами приходится по разному создавать правила.

Хуже всего дешевые конвертеры, так как для системы они полностью одинаковые, привязку делаю по портам самого компьютера. Самое классное, когда у конвертера есть серийный номер, это чипы FTDI, в какой бы порт компьютера не воткнул, всегда можно сделать Com1 например...

capzap
11.10.2023, 12:31
Выполнил команду:


[root@spk110 ~]# ls -lah /dev/input
total 0
drwxr-xr-x 3 root root 80 Oct 11 10:44 .
drwxr-xr-x 11 root root 2.8K Oct 11 10:45 ..
drwxr-xr-x 2 root root 60 Oct 11 10:44 by-path
crw-rw---- 1 root input 13, 64 Oct 10 16:43 event0
[root@spk110 ~]#


почему так пытаетесь найти? Почему не с помощью find /dev -name ttyUSB0

ВладОвен
11.10.2023, 12:55
почему так пытаетесь найти? Почему не с помощью find /dev -name ttyUSB0

Пытаюсь найти командой ls -lah /dev/input - именно так говорилось в руководстве по подключению.
А команда find /dev -name ttyUSB возвращает:



[root@spk110 ~]# find /dev -name ttyUSB0
/dev/ttyUSB0
[root@spk110 ~]#


Но прикол в том, что порт 6 работает! Указатель возвращается нормально (hCom=161). Скорость 460800.
Видимо, проблема только в том, что нет отображения в команде ls -lah /dev/input.