<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/5095/how-to-check-which-sdk-my-keil-project-is-linking-against</link><description>I&amp;#39;m using S110 version 7.1.0, but need a way to validate in general which S110 and which SDK version I have associated with this .uvprojx project. 
 Much of this stems from not understanding the difference between the Soft Device (compiled firmware app</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 12 Jan 2015 07:35:03 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/5095/how-to-check-which-sdk-my-keil-project-is-linking-against" /><item><title>RE: How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/thread/17919?ContentTypeID=1</link><pubDate>Mon, 12 Jan 2015 07:35:03 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5e957237-caaa-4f28-b0b9-e3284192e629</guid><dc:creator>la-ble</dc:creator><description>&lt;p&gt;Thank you for the response.  Is there a way to easily group the sdk into a directory within your app directory?  What you mentioned about having to place your project within the SDK tree is a huge pain I have right now (my remote repo is horrendous to follow).  I want to understand everything that goes into my app and don&amp;#39;t like how I&amp;#39;m currently referencing up 4 or so directories.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/thread/17918?ContentTypeID=1</link><pubDate>Sun, 11 Jan 2015 12:21:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:85ec6cf9-66bf-473f-a9d7-1e2038f728de</guid><dc:creator>Marc Nicholas</dc:creator><description>&lt;p&gt;I&amp;#39;ve edited my answer into an answer for your specific question. Hope it helps.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/thread/17917?ContentTypeID=1</link><pubDate>Sun, 11 Jan 2015 01:39:35 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:528270bd-dcf2-4d25-97fc-9d4f4580757f</guid><dc:creator>la-ble</dc:creator><description>&lt;p&gt;Done.  Appreciate any help you can offer as I poke around the IDE.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/thread/17916?ContentTypeID=1</link><pubDate>Sun, 11 Jan 2015 01:34:48 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:92256e0d-fc5a-4a3f-9f08-eaec90b1f724</guid><dc:creator>Marc Nicholas</dc:creator><description>&lt;p&gt;Well, if you edit your question, I&amp;#39;ll edit my answer...because if you edit your question, my comment would be moot :)&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/thread/17915?ContentTypeID=1</link><pubDate>Sun, 11 Jan 2015 01:28:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d6ce6777-6004-40e6-837a-dc3630ea7e02</guid><dc:creator>la-ble</dc:creator><description>&lt;p&gt;It&amp;#39;s wasn&amp;#39;t the most well-worded question, I agree, but this does not provide an answer.  Move to a comment?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to check which SDK my Keil project is linking against?</title><link>https://devzone.nordicsemi.com/thread/17914?ContentTypeID=1</link><pubDate>Sat, 10 Jan 2015 21:23:19 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0192a76c-57d1-49a0-93bf-c05967340799</guid><dc:creator>Marc Nicholas</dc:creator><description>&lt;p&gt;The SoftDevice is a compiled binary (hex) file supplied by Nordic containing functions to perform various BLE/ANT, peripheral and event/task oriented functions.&lt;/p&gt;
&lt;p&gt;Because it&amp;#39;s a compiled binary, to identify and call the various functions you need a set of external API calls. This is what Nordic refer to as the SDK.&lt;/p&gt;
&lt;p&gt;There is a loose coupling between the SDK and the SoftDevice. What I mean by this is that you&amp;#39;re expected to make sure that you have the correct SDK in your compiler path for the particular SoftDevice that is your target. i.e. the SoftDevice that has been loaded onto your silicon (nRF51822, most likely).&lt;/p&gt;
&lt;p&gt;The compiler (Keil) has no direct knowledge of the existence of the SoftDevice, other than the linking in the SDK (APIs).&lt;/p&gt;
&lt;p&gt;Where you might find some confusion is that there are device profiles in Keil that help it understand the target, and when you&amp;#39;ve installed the SDK files, you&amp;#39;ll find that you&amp;#39;ll have targets called things like &amp;quot;nRF51822 S110&amp;quot;. These are merely profiles that help the compiler understand the amount and organization of the RAM/Flash on the chips. The amount of RAM/Flash available for your application is more-or-less halved (not exactly) when you&amp;#39;re using a SoftDevice as the SoftDevice also needs space and memory to function.&lt;/p&gt;
&lt;p&gt;On later SoftDevices, I believe it&amp;#39;s 80K of Flash (out of 256K) and 8K of RAM (out of 16K) that&amp;#39;s &amp;quot;set aside&amp;quot; for SoftDevice workspace. The rest is available for your application.&lt;/p&gt;
&lt;p&gt;To answer the crux of your question: it&amp;#39;s the inclusion of the SDK (API) source files in your project&amp;#39;s path that specifies which SDK you&amp;#39;re using. As the path is relative, and many folk start with one of the example apps, you&amp;#39;ll often find you need to place your own projects within the SDK tree -- unless you want to rebuild the paths my manually adding them to a fresh Keil project.&lt;/p&gt;
&lt;p&gt;Does that make some sense? It&amp;#39;s early here and I haven&amp;#39;t had any coffee yet, so let me know ;)&lt;/p&gt;
&lt;p&gt;-m&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>