<?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>Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/30177/do-folks-just-develop-inside-the-sdk-itself</link><description>I&amp;#39;ve been playing around with the SDK these past few days using both Keil and ARM GCC options. 
 When people develop a product using this SDK, do they just clone one of the examples, keeping it inside the examples/xx directory and then develop directly</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 06 Feb 2018 18:32:34 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/30177/do-folks-just-develop-inside-the-sdk-itself" /><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/120010?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 18:32:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:b3c680ad-bbe4-410c-b7ed-3a9aa7b99807</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;Never&amp;nbsp;recommended to work inside the SDK. &amp;nbsp;I put all the third party SDK/Libraries in external folder. &amp;nbsp;It&amp;#39;s easier to maintain and change version as needed. &lt;a href="https://github.com/I-SYST/EHAL"&gt;This link&lt;/a&gt; show how I organize my stuff, see the readme.&amp;nbsp;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119994?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 16:49:21 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:76fa1669-ccf3-4aa9-b1d5-c49ac3217886</guid><dc:creator>SRA</dc:creator><description>&lt;p&gt;Pretty much my point too.&lt;/p&gt;
&lt;p&gt;I had an issue where I had an outside contractor set up our first Nordic product. He gave me code that worked but it was rooted inside an SDK example for some reason. It made sharing around to my team annoying because everyone had to make their directory structure match.&lt;/p&gt;
&lt;p&gt;Now I have it in a separate folder included in my GIT repo for this project. Now if I need him to log on or my at a different machine or a team member, just clone the repo and start working. I can check to make sure the SDK files aren&amp;#39;t changed. And I could roll us up to a new SDK version, get it working, and everyone would also be automatically upgraded at next pull.&lt;/p&gt;
&lt;p&gt;Working inside the SDK could be the same effect, but it doesn&amp;#39;t look good and isn&amp;#39;t obvious.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119993?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 16:46:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f24c51b8-8029-42da-8554-6f117611de87</guid><dc:creator>SRA</dc:creator><description>&lt;p&gt;Yea, I&amp;#39;ll start my master build from that. I&amp;#39;m not sure what Nordic was thinking when they remove things from a config header. It doesn&amp;#39;t make things any easier. A master/common file would be a way better idea.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119991?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 16:37:27 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9d687ace-254e-47ca-91ef-89a1cd864654</guid><dc:creator>Richard D.</dc:creator><description>&lt;p&gt;Our projects are kept outside the SDK because it provides a clear separation between our code and Nordic&amp;#39;s code.&lt;br /&gt;- makes source control easier to keep Nordic code out of our SCM&lt;br /&gt;- clear separation makes it easier for the lawyers&lt;br /&gt;- our own code doesn&amp;#39;t move when we update to a new SDK&lt;/p&gt;
&lt;p&gt;In creating one&amp;#39;s own application outside the SDK, it seems logical to use one of the SDK examples as a starting point. The biggest problem with this approach is that the example project files reference SDK with relative paths; i.e. project files assume that application code is in the same directory as the SDK. I found the easiest way to fix the project files was to edit them manually with a text editor ; a real nuisance, but only has to be done once.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119989?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 16:16:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c5027ee4-7cf1-48dd-a617-21482dd5841e</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;There is a base sdk_config.h at &amp;quot;&amp;lt;sdk folder&amp;gt;/config/sdk_config.h&amp;quot;, although I see that for SDK 14 that file is missing a number of defines. Hopefully that will be fixed before too long.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119983?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 15:26:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d1822364-27cc-4982-aa4a-5724f7183074</guid><dc:creator>SRA</dc:creator><description>&lt;p&gt;I just posted something similar last night.&lt;/p&gt;
&lt;p&gt;No, I don&amp;rsquo;t recommend working right from the SDK. I consider the SDK to be read-only so I&amp;rsquo;m certain it never gets messed up. I don&amp;rsquo;t want to be in a UART example and make a change to a peripheral driver that another application will use later.&lt;/p&gt;
&lt;p&gt;So more or less I put the SDK in a folder and put my application near that. I made a SoftDevice template with the things I know I&amp;rsquo;ll need for my real application and a barebones no-sd template for testing external software and peripherals. I must manually adjust the paths at the start of a new project.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;A little tip if you are using Keil, the project files are .XML and you can very effectively use Find and Replace on path names.&lt;/p&gt;
&lt;p&gt;See my other post&amp;nbsp;&lt;a href="https://devzone.nordicsemi.com/f/nordic-q-a/30216/properly-update-nrf-sdk-to-14-2-in-keilv5"&gt;devzone.nordicsemi.com/.../properly-update-nrf-sdk-to-14-2-in-keilv5&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Oh and yes, the sdk_config.h is terrible. Nordic has a master file somewhere I&amp;rsquo;m sure but they knock it down for each example so instead of dealing with one large constant file, you need to go find the parts you&amp;rsquo;ll need and integrate them into your file. It&amp;rsquo;s REALLY DUMB. I&amp;rsquo;m considering just making a master file, esp because in Keil you get a graphical config window for it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119936?ContentTypeID=1</link><pubDate>Tue, 06 Feb 2018 12:48:24 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:51be11e3-2780-457e-9501-93e2d8c0c0a0</guid><dc:creator>tesc</dc:creator><description>&lt;p&gt;I usually keep projects inside the SDK, but instead of having my own projects in an &amp;quot;&amp;lt;sdk folder&amp;gt;/examples/xx&amp;quot; folder I create a new path of folders from the &amp;lt;sdk folder&amp;gt; so that the project can be put &amp;quot;on the same level&amp;quot; as the example projects. Then I copy an example project into that location and start from there. E.g. from &amp;quot;&amp;lt;sdk folder&amp;gt;/examples/ble_peripheral/ble_app_hrs&amp;quot; to &amp;quot;&amp;lt;sdk folder&amp;gt;/my projects/project name/ble_app_hrs&amp;quot;, and then also change the folder name from &amp;quot;ble_app_hrs&amp;quot; to whatever makes sense.&lt;/p&gt;
&lt;p&gt;Do note however that my use case is fairly uncommon. I often have to quickly set up projects that I get from others, and which are usually based on SDK examples. Or I have to quickly test something based off of an SDK example. I rarely have to set up a &amp;quot;real&amp;quot; project that is supposed to grow big and fill a particular purpose, and I rarely need to migrate to a new SDK version.&lt;/p&gt;
&lt;p&gt;I would love to hear more about what other people do, when setting up a custom project and when porting an existing one from one SDK to another. I also appreciate any feedback on what can be improved in the SDK when it comes to setting up and porting your projects.&lt;/p&gt;
&lt;p&gt;Regards,&lt;br /&gt;Terje&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119645?ContentTypeID=1</link><pubDate>Sun, 04 Feb 2018 20:21:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c79dff33-4308-450e-b712-598723a23ed4</guid><dc:creator>Nguyen Hoan Hoang</dc:creator><description>&lt;p&gt;hahaha! welcome to the SDK pain. &amp;nbsp;It wasn&amp;#39;t like that in the early days. &amp;nbsp;Then it got worst and worst with every updates. &amp;nbsp;Lately the worst of the worst was introduced: the famous sdk_config.h. &amp;nbsp;You need to enable or add&amp;nbsp;3-5 defines for each module to get it compiled. &amp;nbsp;Cheers!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Do folks just develop inside the SDK itself?</title><link>https://devzone.nordicsemi.com/thread/119644?ContentTypeID=1</link><pubDate>Sun, 04 Feb 2018 19:15:40 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6d5e7e32-27e0-4faf-897b-ac95ebf2177b</guid><dc:creator>Hein</dc:creator><description>&lt;p&gt;I copy the &amp;#39;components&amp;#39;, &amp;#39;config&amp;#39; and &amp;#39;external&amp;#39; folders from the SDK to my blank project, the contain everything you might want to include from the SDK (still over 100MB)&lt;/p&gt;
&lt;p&gt;Then I set up my development environment project by looking at the make files for the example. They show you all the compiler flags, included folders and source files you need to add.&lt;/p&gt;
&lt;p&gt;If you wanted to, you could then go through the SDK folders and delete all the unused source code after you complete the project.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>