<?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>Maximum Services and Characteristics</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/100985/maximum-services-and-characteristics</link><description>Hi there , 
 
 I am building a prototype ble device. For this I&amp;#39;m currently using a nRF52840 dongle and using https://github.com/google/bumble . 
 We&amp;#39;re currently hitting some limits: I have added about 175 characteristics and on most Android devices</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 22 Jun 2023 10:44:07 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/100985/maximum-services-and-characteristics" /><item><title>RE: Maximum Services and Characteristics</title><link>https://devzone.nordicsemi.com/thread/432492?ContentTypeID=1</link><pubDate>Thu, 22 Jun 2023 10:44:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:5ea3bbac-bbdf-4f04-af90-98cccb77ed87</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;No, since you mentioned that it times out on some Android devices I assume that this is an issue on the phone side and not on the nRF side, so I expect the nRF log will not be very helpful.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can run out of memory for more characteristics on the nRF side as well, but then you should get an error when you try to configure your services/characteristics.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum Services and Characteristics</title><link>https://devzone.nordicsemi.com/thread/432277?ContentTypeID=1</link><pubDate>Wed, 21 Jun 2023 11:11:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:6a6b6bc8-a9c4-4193-9437-5cbdb6c582b0</guid><dc:creator>Elias Lecomte</dc:creator><description>&lt;p&gt;Ind we are, and with proprietary services. I thought you meant reading logs on the nrf usb board.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum Services and Characteristics</title><link>https://devzone.nordicsemi.com/thread/432186?ContentTypeID=1</link><pubDate>Wed, 21 Jun 2023 07:15:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:20533fb5-380a-4331-92cd-4774d8f38630</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi&lt;/p&gt;
&lt;p&gt;I assumed you were developing your own app, but maybe that is not the case?&amp;nbsp;&lt;br /&gt;When&amp;nbsp;running an app from Android Studio you&amp;nbsp;can get log output as described &lt;a href="https://developer.android.com/studio/debug/logcat"&gt;here&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;If you run the nRF Connect app you can also get logging in the app by sliding to the right after you have connected to a device. Change the log level to &amp;quot;DEBUG&amp;quot; for a more detailed log.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum Services and Characteristics</title><link>https://devzone.nordicsemi.com/thread/432020?ContentTypeID=1</link><pubDate>Tue, 20 Jun 2023 12:53:05 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:d56cad4a-49bf-4624-82c8-b80b4ae5f8d7</guid><dc:creator>Elias Lecomte</dc:creator><description>&lt;p&gt;Could you point me to the docs regarding how to capture this debug log? Thank you.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum Services and Characteristics</title><link>https://devzone.nordicsemi.com/thread/431941?ContentTypeID=1</link><pubDate>Tue, 20 Jun 2023 10:33:28 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:3420f238-383b-4d16-bc9c-7e5d11fcf96e</guid><dc:creator>ovrebekk</dc:creator><description>&lt;p&gt;Hi Elias&lt;/p&gt;
&lt;p&gt;It is very unusual to have such a large number of characteristics. Most BLE applications use a handful of services, with a couple of dozen characteristics max.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Since this must be a proprietary service I would recommend trying to reduce the number of characteristics, by integrating more functionality into each one. Each additional characteristic will increase memory consumption both on the client and server side, and will also slow down the service discovery process.&amp;nbsp;&lt;/p&gt;
[quote user=""]Are there hardware limits? How could I investigate if I am hitting memory limits due to the sheer amount of Services &amp;amp; Characteristics or if it&amp;#39;s something else?[/quote]
&lt;p&gt;I doubt this is a hardware limitation. Theoretically you can have 65k attributes in the GATT protocol, where each characteristic typically consists of 2-4 attributes, but as I mentioned it is very rare to set up a service with hundreds of characteristics.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Are you getting any error messages on the app side, if you check the debug log?&amp;nbsp;&lt;/p&gt;
&lt;p&gt;In the end&amp;nbsp;I think it will be hard to get a consistent and reliable experience if you use such a large number of characteristics, as every phone might have a different limitation depending on available memory etc.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Best regards&lt;br /&gt;Torbjørn&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>