This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

cdc_acm problem

hello

using the usbd_ble_uart_pca10056 demo code connected to a microchip USB_CDC pic32 microcontroller I riceve this erroro on debug interface

<info> app: USBD BLE UART example started.
<info> app: USB power detected
<info> app: USB ready
<debug> nrf_ble_gatt: Requesting to update ATT MTU to 64 bytes on connection 0x0.
<info> app: BLE NUS connected
<debug> nrf_ble_gatt: ATT MTU updated to 64 bytes on connection 0x0 (response).
<info> app: Data len is set to 0x3D(61)
<debug> app: ATT MTU exchange completed. central 0xF7 peripheral 0x40
<debug> app: Received data from BLE NUS. Writing data on CDC ACM.
<debug> app: 30 31 32 33 34 35 36 37|01234567
<debug> app: 38 39 30 31 32 33 34 35|89012345
<debug> app: 36 37 38 39 |6789
<info> app: CDC ACM unavailable, data received: 01234567890123456789

NUS seems work fine but I'm not able to understand what is going wrong on usb side

thanks for any suggestion

Andrea Gonelli

Parents Reply Children
  • So you need to instrument your code (both nRF and PIC) and/or break out your debuggers (both nRF and PIC) to see exactly what's going on in the working & non-working cases - in both the host & peripheral.

    Compare & contrast.

    pic32 enumerate nrf module without errors but doesnt work

    Possibilities which spring to mind:

    • There is/are some thing(s) missing
    • There is/are some thing(s) which don't violate any USB standards, but are not compatible with this particular application;
    • The PIC32 is failing to detect and/or report some errors.
    • The nRF is relying on some thing(s) which is/are optional and ignored by the PIC32
  • I thin you may nee to tweek the descriptor.  There are quite a few settings that works in PC but might not supported by the PIC32.  I see one of them in the example APP_USBD_CDC_COMM_PROTOCAL_AT_V250.  What if you set that to none.  Best is to compare with the descriptor of the MC2200 which is known to work.  I haven't worked with nRF USB yet so can' t give you more details but check also for IAD & ACM descriptors.   

Related