Pico 2 USB Data Streaming Reference Implementation (5.1Mbps)

I’ve been exploring Pico 2 USB data streaming for a bit now, resulting in earlier technical posts First Time USB Data Streaming from the Raspberry Pico 2W Using TinyUSB and Using the Raspberry Pi Pico 2 as a rudimentary oscilloscope. Through earlier experimentation with TinyUSB, DMA, the RP2350 ADC, and thorough oscilloscope measurements, I developed a Pico 2 USB streaming solution capable of sustaining 5.1 Mbps of throughput to a Python application running on Windows. This package contains the resulting reference implementation.
Save yourself days of debugging TinyUSB, USB descriptors, DMA transfers and host-side software by starting from a known-working 5.1 Mbps implementation.
The package currently includes:
- A PDF quick-setup guide with step-by-step instructions.
- Ready-to-flash .uf2 firmware image for your Raspberry Pi Pico 2(W).
- Python host application for USB throughput measurements.
- Measured reference throughput of 5.1 Mbps.
- Full source code for the Pico 2 firmware and Python application.
Future updates and improvements to the reference implementation will be made available through Gumroad.
Available now!
Available now for 10 euro on Gumroad!
About
The reference implementation uses the RP2350 ADC as data source, DMA transfers the ADC samples to memory from where it is copied into the TinyUSB’s TX buffer. The data is streamed to a Python application running on a Windows host.
Who is this for?
This reference application is ideal for engineers, makers, and developers looking to:
- Build a USB streaming application on Pico 2.
- Benchmark USB throughput.
- Use the project as a starting point for custom sensor or data acquisition projects.
What is not included?
This package focuses on providing a working USB data streaming reference implementation for the RP2350, including firmware, source code, a Python host application and a quick-start guide. The current release targets Windows hosts and is intended as a practical starting point rather than a comprehensive USB training course. Additional Linux support, architecture deep-dives, and detailed measurement reports may be included in future updates.
Support
If you experience issues accessing the files or if the product significantly differs from the description, feel free to get in touch. I’m happy to help troubleshoot setup issues and review refund requests on a case-by-case basis. Because this is a digital download containing source code and documentation, refunds are not guaranteed after download.
Ready to get started?
Available now for 10 euro on Gumroad!
