<?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>Channel Sounding example with swapped GAP roles</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/123873/channel-sounding-example-with-swapped-gap-roles</link><description>I am working with the connected_cs examples on the nRF54L15 DK and trying to swap the GAP roles. In my case: 
 
 
 Initiator = GAP Peripheral 
 
 
 Reflector = GAP Central 
 
 
 However, when I attempt this setup, I cannot start CS Security on the Initiator</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Tue, 16 Sep 2025 13:45:57 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/123873/channel-sounding-example-with-swapped-gap-roles" /><item><title>RE: Channel Sounding example with swapped GAP roles</title><link>https://devzone.nordicsemi.com/thread/548909?ContentTypeID=1</link><pubDate>Tue, 16 Sep 2025 13:45:57 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:95d10596-e4f6-40a7-aaaf-244b8102085f</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Thank you for sharing! Especially these days, when channel sounding is still fairly new, it is useful to have some samples like this, showing how to swap the roles. In fact, swapping roles like this can be useful if you want to measure the distance between one moving target and several stationary. You would want the moving target to be the central device, because it needs to handle several connections. But you want to offload the majority of the work to the stationary devices, because they are only doing measurements for one device each, so it makes sense to make their CPU handle the heavy mathematics.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Channel Sounding example with swapped GAP roles</title><link>https://devzone.nordicsemi.com/thread/548799?ContentTypeID=1</link><pubDate>Mon, 15 Sep 2025 20:01:04 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2f914169-f2b5-439f-bb20-c0ede0e03afa</guid><dc:creator>nychyporuk</dc:creator><description>&lt;p data-start="62" data-end="76"&gt;Hello Edvin,&lt;/p&gt;
&lt;p data-start="78" data-end="145"&gt;Thank you for getting back to me, and no worries about the delay!&lt;/p&gt;
&lt;p data-start="147" data-end="364"&gt;Your example works perfectly on the latest toolchain (v3.1.0). With your advice, I also managed to modify the examples I was working on. I&amp;#39;m attaching my updated samples - maybe they will be useful for someone else as well.&lt;/p&gt;
&lt;p data-start="593" data-end="649"&gt;Thanks again for your help&amp;nbsp;- this really unblocked me.&lt;/p&gt;
&lt;p data-start="651" data-end="678"&gt;Best regards,&lt;br data-start="664" data-end="667" /&gt; Oleksandr&lt;/p&gt;
&lt;p data-start="147" data-end="364"&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/0066.channel_5F00_sounding.zip"&gt;devzone.nordicsemi.com/.../0066.channel_5F00_sounding.zip&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Channel Sounding example with swapped GAP roles</title><link>https://devzone.nordicsemi.com/thread/548539?ContentTypeID=1</link><pubDate>Thu, 11 Sep 2025 19:29:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:27893857-2f86-4d8d-bc35-6902b0e1e418</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Again, I am terribly sorry for the late reply. I have had a long backlog of channel sounding questions, so I am trying to go through them all.&lt;/p&gt;
&lt;p&gt;I finally got it working, with some help from our R&amp;amp;D.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I started with the samples found in NCS v3.1.0\nrf\samples\bluetooth\channel_sounding_ras_initiator/reflector, and came to the same conclusion that you did, but then I figured that it is the central (now reflector) that needs to deal with the security, and it is the initiator that needs to call&amp;nbsp;&lt;span&gt;bt_le_cs_set_procedure_parameters() and bt_le_cs_procedure_enable().&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;This lead up to this:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;a href="https://devzone.nordicsemi.com/cfs-file/__key/communityserver-discussions-components-files/4/channel_5F00_sounding_5F00_swapped_5F00_roles.zip"&gt;devzone.nordicsemi.com/.../channel_5F00_sounding_5F00_swapped_5F00_roles.zip&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I am sorry, it is a bit messy, with parts of the code still commented out, but it should be working.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Give it a go, and let me know if it doesn&amp;#39;t work on your end.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Best regards,&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Edvin&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Channel Sounding example with swapped GAP roles</title><link>https://devzone.nordicsemi.com/thread/546849?ContentTypeID=1</link><pubDate>Wed, 27 Aug 2025 07:51:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6c2ee58e-bd1a-4136-a97a-8936c5442309</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;Sorry for the late reply.&lt;/p&gt;
&lt;p&gt;No, there is no requirement that the initiator needs to be the central or peripheral. I have seen it being done before, but I tried all day yesterday, and ended up with the same result as you. I will continue to investigate, and get back to you.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Best regards,&lt;/p&gt;
&lt;p&gt;Edvin&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>