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

7.x.x SDK compatibility with nRF51422 - V2 chips

To support a mix of v2 and v3 chips, I want to use the 7.x SDK. But I'm not sure it's compatible. The matrix at infocenter.nordicsemi.com/.../nRF51_Series_Compatibility_Matrix_v2.3.pdf contains a blank space:

image description

Is there meant to be an 7.x SDK there, or am I stuck maintaining two builds and SDK targets?

Parents
  • There's blank space there because there's no SDK which has the 8.0.0 SD plus library code compatible with the rev 2 chip. The last SDK with library code for the rev2 chip is 6.1, however you can use softdevice v8 with rev2 (provided you set a couple of flags).

    You're really better off using two builds and two SDKs, although you could use the 6.x SDK and the 8.x softdevice on both rev 2 and rev 3, that would work, just need to figure out which chip you have at runtime and turn the flags on, or not.

  • I don't compile against the headers for the softdevice built-in to the SDK, you don't have to, it's just a convenience to make one package out of it. I compile library code from the SDK, although not much of it because I don't use much from the SDK, and the header paths for the softdevice come directly from the softdevice version I'm going to use. That ensures the SVC numbers are going to match.

    The SD API is pretty stable at least, it does change slowly but usually in a way which shows up during compilation. As long as you use headers for the SD you're going to load and it compiles, it works fine.

Reply
  • I don't compile against the headers for the softdevice built-in to the SDK, you don't have to, it's just a convenience to make one package out of it. I compile library code from the SDK, although not much of it because I don't use much from the SDK, and the header paths for the softdevice come directly from the softdevice version I'm going to use. That ensures the SVC numbers are going to match.

    The SD API is pretty stable at least, it does change slowly but usually in a way which shows up during compilation. As long as you use headers for the SD you're going to load and it compiles, it works fine.

Children
No Data
Related