<?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>Can I &amp;quot;listen&amp;quot; to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/28545/can-i-listen-to-the-data-between-two-devices-under-my-control-using-a-third-device-to-get-rssi</link><description>What I am trying to accomplish is to establish a connection between an iPhone (device 1) and an NRF52 (device 2), then sniff the data sent between them from a third device (also NRF52, device 3) to get an RSSI. I have the connection part working just</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 22 Dec 2017 14:25:55 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/28545/can-i-listen-to-the-data-between-two-devices-under-my-control-using-a-third-device-to-get-rssi" /><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113079?ContentTypeID=1</link><pubDate>Fri, 22 Dec 2017 14:25:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:92619e66-8897-4720-911e-15789215ae6d</guid><dc:creator>Daniel</dc:creator><description>&lt;p&gt;Hi David, I greatly appreciate your willingness to help. As of right now, I am just connecting to the devices or reading scan RSSI, and that seems to be working. That being said, I&amp;#39;m sure it could be something I could use in the future if you still wanted to chat about it.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Thanks&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113078?ContentTypeID=1</link><pubDate>Fri, 22 Dec 2017 09:40:42 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fa13b10b-0c7e-47a8-8658-8048a84c68d7</guid><dc:creator>David Edwin</dc:creator><description>&lt;p&gt;Unfortunately there is no API available to do what you want. It is indeed possible to do what you want, In a fairly simple manner but it has not been wrapped into an API. If you can talk about your usecase , by private message, I can look at a simple module over TimeSlot API or directly over the radio.
This module would pretty much do what endnode and run_ar suggest, i.e. capture the connection request and get the channel map updates so that the receiver can see the packets in the connection and get the RSSI. It would not handle crypto so it will be a simple library (comparative to the sniffer).&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113077?ContentTypeID=1</link><pubDate>Thu, 14 Dec 2017 15:06:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:49b5ecab-0086-44a0-a262-92c703924411</guid><dc:creator>Daniel</dc:creator><description>&lt;p&gt;OK. Thanks for the replies. It looks like this is more complicated than I want to deal with, so I will pursue a different route.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113076?ContentTypeID=1</link><pubDate>Tue, 12 Dec 2017 14:06:31 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:784a94ad-c473-478a-95e5-3afb6af58db3</guid><dc:creator>run_ar</dc:creator><description>&lt;p&gt;@Daniel. As Endnode says you will have to capture the connection request and also channel map updates if you want to sniff the connection in the &amp;quot;traditional way. However, since you have a &amp;quot;backchannel&amp;quot; between Device2 and Device3, you might be able to read the radio parameters on Device2 and send them to Device3 using the backchannel (provided this is wired and using a clocked protocol such as TWI or SPI). This way device 2 could instruct device3 when to start listening on a given channel. I guess the main challenge would be to get the channel over to device 3 in time for it to listen on the correct channel. But as long as the HFXO us shut down between connection events, the startup time of this is 1.5ms, However device 3 would need to run HFXO all the time to shorten the startup time to be able to be in RX mode on time. This would also require some work though.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113075?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 16:07:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:604671df-540d-46a0-b768-ddf7486ac589</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;Oh sorry, I&amp;#39;m too much locked into my embedded system paradigm, there actually is easier way: if your device nr. 3 is some big system like Win or Linux PC then you probably can use nRF Sniffer or similar thing which might give you some low-level data and you could process them. I&amp;#39;d never imagine this would be viable set-up in the field but for some limited time in the lab it could work.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113074?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 15:58:01 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:500052b4-3ecb-42ea-acec-adc67a69c96f</guid><dc:creator>Daniel</dc:creator><description>&lt;p&gt;OK. Well I was under the impression due to the existence of the sniffer app that this was more easily accomplished using some API. I guess that answers the question. I guess I will pursue a different type of solution. Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113072?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 15:55:09 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:da8fad8d-687e-4d3c-87cf-0694d71b13c6</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;Hehe, this is kind of dreamer&amp;#39;s idea, right? Yes, nRF52 chip can be used in &amp;quot;raw&amp;quot; mode - similar to how nRF sniffer FW/app is doing it - and then you can parse and decode any packet which you get (assuming you managed to tune nRF5x receiver to the same frequency and coding so you get decoded data from Rx stage). When it comes to decoding BLE PDUs on the lowest layer there is so-called ACCESS ADDRESS which is set uniquely (= randomly:) for each connection at connection request so if you follow the connection from the very beginning you can clearly identify packets belonging to certain BLE link from other packets. The same with sides, you can easily say what is Master to Slave and what is opposite direction. That&amp;#39;s all you need in theory but I doubt you will want to go through torture of implementing this on your own (my estimation would be many months of full-time job). Good luck.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113071?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 15:50:52 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5fd1f6a6-97ab-43b4-8711-dcfe90d04b26</guid><dc:creator>Daniel</dc:creator><description>&lt;p&gt;If it helps, I have a decent amount of RF background, so it&amp;#39;s not the physical reflections/propogations, etc. that is the trouble, it is the actual implementation on the NRF52. - Thanks again&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113073?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 15:49:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:db24004f-ae68-49e2-a2c5-aa289841693d</guid><dc:creator>Daniel</dc:creator><description>&lt;p&gt;First of all, thanks for taking the time to help. Maybe I can clarify my question. I want to listen in on the transmission from device 1 (iPhone) to device 2 (nrf) with device 3. I want to get the rssi value at device 3. Then I can pass this value (via some back channel or whatever) back to the iOS device using the wireless connection of device 2 (the connected NRF).&lt;/p&gt;
&lt;p&gt;So basically in short iOS transmits, and both nrf devices read the rssi of one packet.&lt;/p&gt;
&lt;p&gt;My hangup is how to sniff a packet, determine its source and destination (I could read a data identifier or something I&amp;#39;m sure) and then get rssi using the NRF board. Is there a way for the NRF52 chip to listen to all data even for unconnected devices (monitor mode I guess it might be called), not just advertisements and pass it to my code via the api?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113069?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 15:40:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9c2867ed-15c4-4ec3-8149-ae45b725279c</guid><dc:creator>Matt</dc:creator><description>&lt;p&gt;You may be able to sniff the data, but for the received RSSI (on the iOS side) I doubt you can do it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Can I "listen" to the data between two devices (under my control) using a third device to get rssi?</title><link>https://devzone.nordicsemi.com/thread/113070?ContentTypeID=1</link><pubDate>Mon, 11 Dec 2017 15:37:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:869547a4-2aa4-4a23-8b37-b83a2e21a355</guid><dc:creator>endnode</dc:creator><description>&lt;p&gt;Little confusing to me but when it comes to RSSI: it&amp;#39;s Relative Signal Strength Indication which you can measure on any radio receiver which supports it on PHY level and provides API to it. So your device 3 can listen to any packet and measure its signal strength at its antenna. Now the question is if this is what you want;) If you want to know what is RSSI at some device which don&amp;#39;t support propagation of this to upper layers through some API then you are obviously out of luck, you cannot assume by other device what are radio properties of another device at different position. You can imagine it like sound: if you hear some sound with certain intensity you can assume if the source was loud or not but you can only guess if I hear it because you don&amp;#39;t know how sensitive my ears are and what is blocking the sound on way to my ear. And while with sound waves it might be possible to predict just based on look  on the place topology 2.4GHz radio is much less intuitive in terms of reflections and interference. So don&amp;#39;t assume anything like this...&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>