The CP2130 USB Endpoint 1 uses a double-buffered FIFO, whereas Endpoint 2 uses a single-buffered FIFO. To improve SPI data transfer performance, Endpoint 1 can be used to double-buffer read data or write data transfer packets.


Table below shows the CP2130 USB Bulk endpoint usage for different device configuration.

Device Configuration

Bulk OUT 


Bulk IN 


High-Priority Write Mode EP1 EP2
High-Priority Read Mode EP2 EP1


By default, the CP2130 is configured in high-priority write mode.


AN792 describes CP2130 Interface Specification, and AN792SW contains an example for CP2130 Write and Read commands using libusb for Linux. Just a reminder that there is a known bug on the cp2130_libusb_read_example(), the endpoint for the 2nd libusb_bulk_transfer() call should be 0x82 indicating using Bulk IN endpoint 2.


Below is an example for the CP2130 WriteRead command.


  • USB Bridges
  • Knowledge Base Articles
  • Interface