RA - > Synergy BSP Problems

Hello everyone. My customer has requested I move from RA to Synergy, and I'm perplexed by the HAL differences.  

This project uses just about every peripheral available, and I enjoyed porting to RA initially.  The IDE and configurator and code all worked exceptionally well.  The R_ interfaces for configuring and using the underlying driver model had few bugs or issues, and I really appreciated being able to mouse over and get the help context popups too for each R_ function.  

But Synergy is really taxing me. While the R_ functions are sometimes defined in the synergy driver libraries, they all appear to be private, and instead the framework exposes global members with their own differently-named functions for performing the same functions. I've been told by our local Renesas FAEs that examples don't exist for much of the BSP and pointed me to the Synergy Software Package User's Manual. But this does not list the names of the global variables and many of the underlying structures used to make this all work.

For example with the ADC. On FSP you'd do:

err = R_ADC_Open (&g_adc0_ctrl, &g_adc0_cfg);

In SPP however this becomes

err = g_adc_on_adc.open(g_adc0.p_ctrl, g_adc0.p_cfg);

For some peripherals I've been able to sort out the syntactical changes. But others are just eluding me. There's just a never-ending depth to all the configure and control registers and their new associated global structures. So I'm hesitant to proceed without asking for help first. Am I missing the big picture here? Is there a way to enable access to the R_ calls I'm used to?

Thank you for any insight you can provide!

- Jason

Parents
  • Hello,

    I am a bit surprised that someone moves from RA to Synergy, which means from a newer device family to an older.

    However there is no migration guide from RA to Synergy or vice versa to automate the process of porting between the families. You would need to manually re-create a new project and add the software modules from the beginning. SSP and FSP are similar but not identical so every change of API should be handled individually.

  • Yes, I am starting with a blank project from scratch and attempting to recreate everything inside SSP with Synergy.  But the HAL calls and foundational structure is considerably different.  The documentation is often outdated, and code examples do not seem to exist.  FSP with RA was a breeze to work with.  SSP with Synergy is very bad in comparison.  Please confirm this is the way of things?

    As to the why...

    Renesas unfortunately provided my customer and I with some initial bad recommendations, with continued mixed messaging.  Renesas never released 5V tolerant capable of IO to the RA packages the product requires.  So that set the stage for where things ended up.

Reply
  • Yes, I am starting with a blank project from scratch and attempting to recreate everything inside SSP with Synergy.  But the HAL calls and foundational structure is considerably different.  The documentation is often outdated, and code examples do not seem to exist.  FSP with RA was a breeze to work with.  SSP with Synergy is very bad in comparison.  Please confirm this is the way of things?

    As to the why...

    Renesas unfortunately provided my customer and I with some initial bad recommendations, with continued mixed messaging.  Renesas never released 5V tolerant capable of IO to the RA packages the product requires.  So that set the stage for where things ended up.

Children