<?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>The function readCharacteristic() of Android-BLE-Library-2.4.0 can&amp;#39;t read all data</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/86467/the-function-readcharacteristic-of-android-ble-library-2-4-0-can-t-read-all-data</link><description>Hi: 
 When i read data from the device nrf52833 to android app, only get 600byte data and it should be 4096byte. The app use the Android-BLE-Library-2.4.0 lib. 
 The nrf52833&amp;#39;s read response function is under code: 
 uint8_t data_source[4096]; static</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 01 Apr 2022 12:23:47 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/86467/the-function-readcharacteristic-of-android-ble-library-2-4-0-can-t-read-all-data" /><item><title>RE: The function readCharacteristic() of Android-BLE-Library-2.4.0 can't read all data</title><link>https://devzone.nordicsemi.com/thread/361226?ContentTypeID=1</link><pubDate>Fri, 01 Apr 2022 12:23:47 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:bd9d4174-4ea5-4776-9ae7-6f43337bf783</guid><dc:creator>Aleksander Nowakowski</dc:creator><description>&lt;p&gt;Hello,&lt;/p&gt;
&lt;p&gt;When you&amp;#39;re reading from a characteristic, and the value is longer than the MTU, the stack will use Long Read Procedure. This internally uses ATT_READ_BLOB_REQ for requesting more and more data. Although the maximum characteristic value length is 600 bytes, this blobs can in theory go all the way until 65536 bytes, but many implementations, like blueZ, limit the value to 600.&lt;/p&gt;
&lt;p&gt;Have a look at: &lt;a href="https://stackoverflow.com/a/52996807/2115352" rel="noopener noreferrer" target="_blank"&gt;https://stackoverflow.com/a/52996807/2115352&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In BLE library you can instead use `merge` method available in the ReadRequest or ValueChangedRequest. This allows will make multiple read calls until your merge method returns true.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>