You are here

PSOC5LP Dev Kit Data Acquisition 500Ksps | Cypress Semiconductor

PSOC5LP Dev Kit Data Acquisition 500Ksps

Summary: 5 Replies, Latest post by jlangfo5 on 30 Jan 2015 09:44 AM PST
Verified Answers: 0
Last post
Log in to post new comments.
jlangfo5's picture
67 posts

Hey PSOC Forums!


I am wanting to know if it's feasable for a PSOC5lp dev kit to be used in a situation where data is sampled at 500 Ksps and transfered to a PC without dropping any samples. Over a span of lets say 30 minutes. USB UART is ruled out because the sample rate is to high, but I was thinking i could instead try and use USB Bulk Transfers protocol to send the data over. I am very new to USB and don't have very much time to learn right now,  so I don't know if this is realistic or not..

If it is feasabile, Any sugestions torwards an implementation? I was thinking about starting with one of the example projects that uses DMA to move data from the ADC to the USB TX Buffer, any sugestios on what I should do on the receiving end? 



user_1377889's picture
9262 posts

A PC has usually got an operating system that will serve several different processes quasi-parallel (look into your task manager)

This will hinder a contineous data stream accepted from the PC side. When the data width and thus the precision is 8 bits you will get a transfer-rate of 0,5 MB/s which is well within the transfer-rate of USB 2.0. With techniques as double buffering and DMA on the PSoC side you might be able to reach your wanted performance.



user_14586677's picture
7646 posts

The USBUART is Full Speed, 12 Mb/s, so possibly could handle 12 bits

at a 1 MB/s rate.


USB UART is ruled out because the sample rate is to high,


Build a protocol to handle that problem......?


Do you need this to be sychronous over the local net ?

Regards, Dana.



Related Application Notes and Example Projects

USB Peripheral Basics - AN57294
PSoC® 3 / PSoC 5 USB HID Fundamentals - AN57473
PSoC® 3 / PSoC 5 USB HID Intermediate - AN58726
USB Bulk Loopback With PSoC® 3 - AN56718
USB Vendor Commands with PSoC® 3 - AN56377
Interrupt Loopback - PSoC® 3 / PSoC 5
Isochronous Transfers in PSoC® 3 / PSoC 5




user_385660486's picture
33 posts

On host side, at least you have to write a descriptor for your device and use the OS drivers APIs in your application. I know some litterature on this and at least the following pointers could be usefull :

- Using WinUSB Functions

- USB Descriptors, the whole site is interesting


I think, the throughput with USB-FS in Bulk mode is OK (effective throughput of 1MB/s > 0.75) if you pay attention to limit protocol overhead but there is no guarantee of latency (the host can send IN packet whenever it wants). Latency could conduce you to implement some buffering on device and accept to hazardously loose some data. At least you should be able to detect when it happens. Perhaps, you can implement some compressions depending on your signal characteristics and make a feasability.





user_342122993's picture
527 posts


This link should help implement bulk USB transfer PSoC5LP - PC


There were many requests here similar to yours. Please post demo project if successful.


jlangfo5's picture
67 posts

 I would if I had ended up using my PSoC to solve the problem. In the end since this was for getting data inside of the lab and not the field, so we ended up going with some data aquistion tools that we had already developed.

Log in to post new comments.