S3A6 USBX Pool Memory Size CDC-ACM


Is it possible to reconfigure USB X CDC-ACM to decrease USBX Pool Memory Size for S3A6?


The problem is S3A6 has only 32K RAM,

According to Express Logic USBX Memory Requirements

we need 18K for USBX Pool Memory size, also 8K used for BSP stack and heap, only 6K RAM left for our application.

The 6K RAM left insufficient for our application.

  • Hi dxwak,

    I don't have S3A6, but I've tried to use the Communications Framework on USB on DK-S3A7 board. First, go to Project > Properties and define two preprocessor macros: UX_DEVICE_SIDE_ONLY and UX_SYSTEM_DEVICE_ONLY.

    Then, attach USBX Source and USBX Device Class CDC-ACM Source components to your project. I set USBX Pool Memory Size to 6144 in USBX on ux and the project worked fine.

    Please remember to click "Generate Project Content" and rebuild the project after above changes.


  • Hi Adboc.
    Why did you use 6144 in the Pool Memory Size?
    Is it possible to decrease that number in order to free more RAM memory?
Reply Children
  • Hi Hardwaiano-
    Here is a Knowledge Base article that discusses USB memory sizing
  • Thanks for the article Warren.
    It takes me to a short article on the minimun size of USB pool and suggests to check the last SSP release notes to see if the minimun value of 18k has changed. I use SSP 1.6.2 and I couldn't find release notes for this version so I checked the notes for SSP 1.6.0 and 1.6.3, and they do not say anything about USB pool size.

    In addition, your link takes me to another RenesasRulz thread. However, it doesn't explain why is it possible to reduce the pool size from 18k to 6k.

    Is it possible to use any value for the USB pool size after using the preprocessor macros UX_DEVICE_SIDE_ONLY and UX_SYSTEM_DEVICE_ONLY? I have a project with 8192 bytes and it works fine.