<?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>NRF5 SDK legacy vs nrfx drivers</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/102958/nrf5-sdk-legacy-vs-nrfx-drivers</link><description>Hi Team, 
 I&amp;#39;m a little confuse regarding the legacy vs nrfx new drivers. From the documents, the majority legacy nrf is aliased to nrfx drivers via macros in the headers. To use nrfx module, I would need to enable that nrfx module in sdk_config.h I tried</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 18 Aug 2023 12:10:28 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/102958/nrf5-sdk-legacy-vs-nrfx-drivers" /><item><title>RE: NRF5 SDK legacy vs nrfx drivers</title><link>https://devzone.nordicsemi.com/thread/442082?ContentTypeID=1</link><pubDate>Fri, 18 Aug 2023 12:10:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:607d7650-1869-46ed-bee8-cc34b6ef4c3d</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;This can be a bit confusing. There are some exceptions where the old driver API also adds some features (typically related to coexistence with the SoftDevice), but generally the legacy API is only a set of header files with macros, and you end up wth the exact same code. So it does not matter in most cases if you use the nrfx API directly or the legacy API.&lt;/p&gt;
&lt;p&gt;That said, the issue you are seeing is probably related to apply_old_config.h, which is described under &lt;a href="https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/nrfx_migration_user_guide.html?cp=9_1_2_7_0#getting_started_replace_nrf_drv_options_keep"&gt;Continue using nrf_drv drivers&lt;/a&gt;. In short, as long as there are defines for the legacy API, these will be used, and will overwrite any NRFX_ defines. So you either need to remove the legacy configuration defines or set them to whatever you want the nrfx defines set to.&lt;/p&gt;
&lt;p&gt;As a side note, there will with high degree of certainty never some a nRF5 SDK release without the legacy API, and as the API difference is mostly handled by the preprocessor and nod runtime, it probably does not make sense to spend a lot of effort on migrating (if that causes problems).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>