<?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>Changing a read characteristic value during a connection</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/7598/changing-a-read-characteristic-value-during-a-connection</link><description>I was disappointed to see from this question that when calling sd_ble_gatts_characteristic_add(), the value of the characteristic is copied to the SD&amp;#39;s memory region: 
 devzone.nordicsemi.com/.../ 
 A change to the value after a connection is made will</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 12 Jun 2015 13:34:20 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/7598/changing-a-read-characteristic-value-during-a-connection" /><item><title>RE: Changing a read characteristic value during a connection</title><link>https://devzone.nordicsemi.com/thread/27113?ContentTypeID=1</link><pubDate>Fri, 12 Jun 2015 13:34:20 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c7c95f0f-2fc9-4ca1-a979-8b1a9b12e3bf</guid><dc:creator>Eliot Stock</dc:creator><description>&lt;p&gt;I see, thanks. Wasn&amp;#39;t clear how BLE_GATTS_VLOC_USER differs to BLE_GATTS_VLOC_STACK with respect to copying the value. Perhaps the documentation could be improved.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Changing a read characteristic value during a connection</title><link>https://devzone.nordicsemi.com/thread/27112?ContentTypeID=1</link><pubDate>Fri, 12 Jun 2015 12:44:34 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dbeec617-8604-4585-a429-dd341805a573</guid><dc:creator>P&amp;#229;l H&amp;#229;land</dc:creator><description>&lt;p&gt;There is a parameter that you can set in the &lt;code&gt;attr_md_t&lt;/code&gt; that tells the stack not to store the value in the SD memory region but in the application region, this should exist in
attr_md_t structure you supply with the characteristic add (&lt;code&gt;attr_md.vloc = BLE_GATTS_VLOC_USER;&lt;/code&gt;).
&lt;a href="https://developer.nordicsemi.com/nRF51_SDK/nRF51_SDK_v8.x.x/doc/8.1.0/s130/html/a00305.html"&gt;developer.nordicsemi.com/.../a00305.html&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you modify the value length at a later point, you should make sure to update the metadata with &lt;code&gt;sd_ble_gatts_value_set(...)&lt;/code&gt; so that the length is updated in the stack and it knows how much data to return to the peer. But as long as it is only the value or bytes that changes, it does not matter.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>