<?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 for Mesh: Send status message with acknowledgement</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/39391/nrf5-sdk-for-mesh-send-status-message-with-acknowledgement</link><description>I am working on a BT mesh network where nodes are mostly sleeping (to conserve power) when they wake up, they need to send a sensor reading to another node (which is always on and in transmit range) and then go back to sleep. The way it currently works</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 17 Oct 2018 13:58:45 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/39391/nrf5-sdk-for-mesh-send-status-message-with-acknowledgement" /><item><title>RE: nRF5 SDK for Mesh: Send status message with acknowledgement</title><link>https://devzone.nordicsemi.com/thread/153264?ContentTypeID=1</link><pubDate>Wed, 17 Oct 2018 13:58:45 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d98434aa-3abd-4209-bc25-ea9b3587ed92</guid><dc:creator>strudel</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;I was able to implement sending messages from the server model with ACK from the client. It seems to be working well.&lt;br /&gt;&lt;br /&gt;Thanks for your help!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5 SDK for Mesh: Send status message with acknowledgement</title><link>https://devzone.nordicsemi.com/thread/152849?ContentTypeID=1</link><pubDate>Mon, 15 Oct 2018 11:23:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:53b335c6-e600-4520-9ef0-c56714902793</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;There is a feature in Bluetooth Mesh called low power node, which requires a friend node.&lt;/p&gt;
&lt;p&gt;Low power nodes are not yet supported in the Mesh SDK (not listed in the supported features). It is currently being worked on, but I can&amp;#39;t say anything about when it comes.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;When you have a low power node with a friend node, the friend node will store all messages for the low power node until it wakes up. This is currently not supported.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;However, if your sensor nodes are only sending data, and it doesn&amp;#39;t need any data from other nodes, other than ACKs, then it should be possible to implement this the way that you describe.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;All Mesh nodes work the same way. There are no actual difference between &amp;quot;servers&amp;quot; and &amp;quot;clients&amp;quot;. A mesh node is told by the provisioner during configuration what channels to subscribe to, and what channels to publish on. As mentioned, you just need to use the message&amp;nbsp;&lt;strong&gt;with&lt;/strong&gt; ACKs, as it is done in the light_switch client example. Look at that example on the SDK version that you use.&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: nRF5 SDK for Mesh: Send status message with acknowledgement</title><link>https://devzone.nordicsemi.com/thread/152716?ContentTypeID=1</link><pubDate>Fri, 12 Oct 2018 14:06:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:59cfbaaf-2825-49f7-8623-e8b1f7e05c86</guid><dc:creator>strudel</dc:creator><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;Thanks for getting back to me! I haven&amp;#39;t yet looked into the sleeping part. Where did you learn that the SDK doesn&amp;#39;t currently support sleeping? This will be important for our application. Also, do you know if Nordic has plans to add support for this in the foreseeable future?&lt;br /&gt;&lt;br /&gt;The problem is with sending status updates. The way we currently have it setup is that the sensor nodes use a &amp;quot;sensor server model&amp;quot; and spontaneously publish their status to another node. I presume we could do it the other way around, i.e., have the client model be on the sensor nodes and use acknowledged set messages for sending the status (sensor reading). However, this seems backwards, i.e., it seems more natural to me for the sensor nodes to use the server model. The Sensor Server root model also seems to be intended to work that way. &lt;br /&gt;&lt;br /&gt;So the question boils down to: Is it possible for a server model to spontaneously (without the client using &amp;quot;get&amp;quot;) publish their status and get an acknowledgement from the client model? If so, how do I configure that?&lt;br /&gt;&lt;br /&gt;Thanks!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: nRF5 SDK for Mesh: Send status message with acknowledgement</title><link>https://devzone.nordicsemi.com/thread/152661?ContentTypeID=1</link><pubDate>Fri, 12 Oct 2018 10:47:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:43027a02-e9ed-4851-82de-25a99e68d546</guid><dc:creator>Edvin</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;The functions that you refer to is from the PyACI libraries, which is the scripts used for provisioning/configuration, right?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Whether or not to require an ACK is up to the nodes application. Nordic&amp;#39;s Mesh SDK does not officially support sleepy nodes yet, but I guess it is possible to do some custom implementation of this, which is probably what you are trying to do.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;If you look in the light_switch examples, in the client application&amp;#39;s main.c there is a function called&amp;nbsp;button_event_handler(), which can send both messages that both require and don&amp;#39;t require ACKs.&lt;/p&gt;
&lt;p&gt;These functions are&amp;nbsp;generic_onoff_client_set() and&amp;nbsp;generic_onoff_client_set_unack(), respectively. Note that these names are from the nrf5_SDK_for_Mesh_v2.2.0_src, and I believe they have different names in earlier versions of the Mesh SDK, however, they should still be in the button_event_handler().&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;These are the functions to send messages to specific addresses that you find during configuration. Is the problem that you can&amp;#39;t get the sleeping node configured, or that you want to get certain that the message from the node is ACKed before going back to sleep?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It is also possible to do some sort of ACKing in the application layer. Just send a message from the sleepy node to the receiving node, and send a message back to the sleepy node when the message is received. Then don&amp;#39;t go to sleep before you get this message.&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>