- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I have my PSoC 4 Pioneer Board wired to bring the PSoC Rx/Tx lines over to the the PSoC 5LP in an attempt to use the PSoC 5 LP as a USB-UART Bridge. This, in fact, works as expected with PuTTY and MS Windows.
However, plugging that cable into a machine with a recent version of Linux, does not yield the same success.
The USB core code is able to query the Cypress KitProg, but, cdc_acm fails to probe the device.
[2851710.658221] usb 3-1: New USB device found, idVendor=04b4, idProduct=f139
[2851710.658229] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=128
[2851710.658233] usb 3-1: Product: Cypress KitProg
[2851710.658235] usb 3-1: Manufacturer: Cypress Semiconductor
[2851710.658238] usb 3-1: SerialNumber: 191E022A021C2400
[2851710.660871] hid-generic 0003:04B4:F139.0014: hiddev0,hidraw3: USB HID v1.11 Device [Cypress Semiconductor Cypress KitProg] on usb-0000:00:14.0-1/input0
[2851710.661603] cdc_acm 3-1:1.2: This device cannot do calls on its own. It is not a modem.
[2851710.661614] cdc_acm: probe of 3-1:1.2 failed with error -22
I have scoured all through these forums and all through Google and have turned up no remedies.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
For USBUART a device driver is needed that physically connects to the USB-port and emulates a serial port to be accessed forom the OS. Cypress provides a driver for that although windows already has got one. Neither of those will run under Linux or any other OS. I would suggest you to google for "usb uart driver linux" and see if you can find something that works.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Not sure if this would help but Cypress USB SDK does have
Linux drivers -
http://www.cypress.com/?rID=57990
Regards, Dana.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Try this app note and see if it helps you. AN82072
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I tried the same thing with the CY8CKIT-059, trying to use a LINUX serial terminal program to connect to the USBUART interface with the same USB vendor ID / product ID as above. I found that it is possible to issue a modprobe command as root to get the USB device to be attached to a driver and a /dev/ttyUSBx device permitting the use of the device with terminal programs. This is what I found:
modprobe usbserial vendor=0x04B4 product=0xF139
minicom –baudrate 9600 –8bit –device /dev/ttyUSB1
#minicom –baudrate 9600 –8bit –device /dev/ttyUSB0
USB1 was the one that ended up passing target serial data to my minicom. I don’t know what USB0 is for.
You probably must also turn off hardware flow control in the terminal program in order to be able to transmit data from the PC to the USBUART.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I know this post is old but figured I would update it for those finding this page from search results.
I originally used cyc15's technique with usbserial. However, this allowed me to only use the attached CY8CKIT-059 devices and not other serial devices needing the usbserial module simultaneously. I discovered that if I updated the kitprog firmware to version 2.16, Ubuntu 16.04 LTS with kernel 4.4 successfully recognizes the device using the cdc-acm driver. I can now use minicom as normal on /dev/ttyACM0.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,i have the same problem you mentioned in the first post.Can you please elaborate on your solution?
user.warn kernel: cdc_acm: probe of 1-1.1:1.2 failed with error -22
Thanks
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hi acotarlea
just update your kitprog
then use /dev/ttyACM0 as device name
check this way (in this example on a raspberry pi )
pi@raspberrypi:~ $ dmesg | grep tty
[ 0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[ 0.000345] console [tty1] enabled
[ 0.751869] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
[ 9.037824] cdc_acm 1-1.2:1.2: ttyACM0: USB ACM device
pi@raspberrypi:~ $
then install putty terminal (easier than minicom) and test with a loop between Tx and Rx
bye from France
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
hi
One more thing
the user (pi in my example) must be a member of le dialout group
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Bob,
<<This is not Linux related, but it's the closest thread I could find for my issue>>
For my latest task, I want to use the Kitprog USB-UART Bridge as a debugging aide. But when I connect a terminal (tried both PuTTY and 232Analyzer) to the Kitprog COM port (COM3 in my Windows), it's flooded with non-stop incoming data. At 9600 they're all zeroes, but a 115K, there's more variety (but it's not really the spice of life...). It happens with the PSoC 5's Tx/Rx connected to nothing, and it and it happens with a blank project loaded on the board (no hardware modules, no code). Before I realized it was seemingly unrelated to the PSoC 4, I tried a couple of different project approaches, including the example in the CY8CKIT-042 Kit Guide, but had the same problem with all and there was no sign of characters coming across from the PSOC 4 (which I thought might somehow be intermingled with all the spurious characters).
I did find the Community Support Page: CY8CKIT-042: Buffer Overflow of USB-UART Bridge - KBA87869, but I'm using the most recent firmware on the programmer.
Target: CY8CKIT-042
Firmware Version: 2.17
IDE: PSoC Created 3.3
OS: Windows 10
Any thoughts?
Thanks.
-Dave
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@Dave (1-28 ???)
I observe the continous flooding nonsens data are sent as long as the UART is not initialized and the pins are floating.
I would suggest you to check your kit's schematic for the correct Rx/Tx pins. Did you snap-off the Kitprog and re-connect it with wires?
On my machines the com-port is a two digit com-number, check by plugging and removing the Kit while watching the device manager.
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Update: I installed the latest version of Creator on a different machine (running Windows 7) and it works fine. Will try updating my version on my main machine next.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bob,
Thanks for the input. It's good to know about the uninitialized state. Further on the Creator 4.0 update, it fixed the problem on my main (Win 10) machine. No other changes to hardware or project.
Thanks again.
-Dave