This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2640R2F: Help with using osal_snv with external serial flash device

Part Number: CC2640R2F

Our current application has a home-grown NV system in place that is nothing like the osal_snv implementation. We came to the conclusion that we need to enable pairing/bonding, so we are looking at switching our application to use the osal_snv implementation. We are very tight on flash space, so we are thinking of using an external serial flash device for NV storage (and other things as well). Obviously we would need to use a custom osal_snv implementation for this. Looking at the source/ti/blestack/osal/src/mcu/cc26xx folder, it seems that we would add osal_snv_octp.c to the stack build, but it isn't obvious to me which actual implementation file I should use as a basis for the application build. There is osal_snv,c in source/ti/blestack/osal/src/mcu/cc26xx, but there is also nvoctp.c in source/ti/blestack/services/src/nv/cc26xx. It seems like the latter would be the correct choice, but I figured I'd ask.

Also, I couldn't find any examples of how to pass the NV function pointers to the stack using osal_snv_register() - any help with how to do that would be appreciated.

  • If you are using external flash, I suggest you to refer to external flash driver in BIM_extFlash Example.
  • Thank you for the reply. I'm not so much looking for a way to talk to external serial flash (we have that). And I think modifying the actual snv implementation isn't bad either; just substitute flash driver calls with serial flash driver calls. I'm asking which snv implementation would be best to use as the basis for my changes, knowing that the application is going to "own" the implementation. And I'm also asking how to communicate the set of function pointers to the snv API functions to the stack.
  • Since you want to implement your own driver for external flash, BIM_extFlash is the best Reference.