<?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 number of services</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/443/maximum-number-of-services</link><description>Hi, 
 Could you tell me please the maximum supporting number of services? 
 This number may be varied depending on number of attributes in each service and its size. So how can I evaluate maximum size of GATT table? 
 I decided to create several services</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 16 Sep 2013 06:00:43 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/443/maximum-number-of-services" /><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2292?ContentTypeID=1</link><pubDate>Mon, 16 Sep 2013 06:00:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:f54bfad9-dc0a-4dde-a708-1b9cd57c6a11</guid><dc:creator>andy2003hunan</dc:creator><description>&lt;p&gt;ok,thank you anyway.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2291?ContentTypeID=1</link><pubDate>Mon, 16 Sep 2013 05:49:07 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:075b6a30-d22f-4d1a-94f9-547caadf6ff6</guid><dc:creator>Carles</dc:creator><description>&lt;p&gt;I doubt it, but I am not sure. For iOS related questions there may be better forums than this one however.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2290?ContentTypeID=1</link><pubDate>Mon, 16 Sep 2013 05:42:00 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:10ea531c-6516-4114-b881-ac9456bae2ee</guid><dc:creator>andy2003hunan</dc:creator><description>&lt;p&gt;ok,thank you.
and  does IOS has the limitation of the number of services and characteristics?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2289?ContentTypeID=1</link><pubDate>Mon, 16 Sep 2013 05:33:16 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:e45ba376-6938-4575-85af-b16d2222b9e5</guid><dc:creator>Carles</dc:creator><description>&lt;blockquote&gt;
&lt;p&gt;by the way,is the characteristics number in a service limited?if is,what is the maxim number?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;No, not at all. There are no limits at all imposed by the stack in terms of service, characteristic or descriptor counts. The only limit is the memory available for the attribute table.&lt;/p&gt;
&lt;p&gt;Carles&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2288?ContentTypeID=1</link><pubDate>Sat, 14 Sep 2013 05:03:50 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9757e5a1-3eca-4a00-a166-52204e455770</guid><dc:creator>andy2003hunan</dc:creator><description>&lt;p&gt;by the way,is  the characteristics number in a service  limited?if is,what is the maxim number?
tks!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2287?ContentTypeID=1</link><pubDate>Fri, 13 Sep 2013 06:00:59 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:47523069-c1b3-4fcb-8bc8-ef7263880e86</guid><dc:creator>Artem Zemlyanukhin</dc:creator><description>&lt;p&gt;Ok, thanks!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2286?ContentTypeID=1</link><pubDate>Fri, 13 Sep 2013 05:59:10 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:c52bc4cc-a178-4de0-86bb-bfa91020ee24</guid><dc:creator>Carles</dc:creator><description>&lt;p&gt;No, CCCDs as of today have to live inside the stack. The reason for that is that it is the stack itself the one that actually creates them.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2285?ContentTypeID=1</link><pubDate>Thu, 12 Sep 2013 17:48:23 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:9181734e-e0c9-4754-8202-e7ddc3c0f2d7</guid><dc:creator>Artem Zemlyanukhin</dc:creator><description>&lt;p&gt;Thank you,
I optimized my services and they all fit.&lt;/p&gt;
&lt;p&gt;And I am interested, can I store CCCD data in user ram? CCCD also has &amp;#39;vloc &amp;#39; parameter, but donn&amp;#39;t see where I can pont data.. There is no corresponding struct member for pointer to cccd data.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2284?ContentTypeID=1</link><pubDate>Tue, 10 Sep 2013 12:30:36 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1b3b0fc4-dad2-462e-a2bc-df8f2e40dd9a</guid><dc:creator>Ole Morten</dc:creator><description>&lt;p&gt;Also see this answer to another question:
&lt;a target="_blank" href="https://devzone.nordicsemi.com/index.php/sd-characteristics-per-service-limit#reply-827" rel="nofollow"&gt;https://devzone.nordicsemi.com/index.php/sd-characteristics-per-service-limit#reply-827&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Maximum number of services</title><link>https://devzone.nordicsemi.com/thread/2283?ContentTypeID=1</link><pubDate>Tue, 10 Sep 2013 11:40:43 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:dfa12a7e-4d10-4078-9a71-3fcc09f5ebda</guid><dc:creator>Carles</dc:creator><description>&lt;p&gt;Hi there,&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Could you tell me please the maximum supporting number of services?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;There really is not a maximum number of services in the attribute table. Instead, the table is allocated a fixed number of bytes in memory and you fill those in when you add attributes in general, until space runs out and no more can be added.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;This number may be varied depending on number of attributes in each service and its size. So how can I evaluate maximum size of GATT table?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Unfortunately at this point you cannot with exactitude. You will have to try and fit what you need until you run out of memory. We have not made the layout of our internal table public, and so I cannot give you exact numbers.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Also I interested in what cases it is advantageous to use option BLE_GATTS_VLOC_USER.
For example, I have attribute with length 1 byte.
If I use BLE_GATTS_VLOC_USER, I think, stack will have pointer to my data (size of pointer = 4 bytes).
If I use BLE_GATTS_VLOC_STACK, does is take 1 byte in table inside Stack?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The internal pointer exists regardless of the vloc type you use. Hence the more attributes with BLE_GATTS_VLOC_USER the less space you will take inside our attribute table and the more services/characteristics/descriptors you will be able to fit.&lt;/p&gt;
&lt;p&gt;Regards,&lt;/p&gt;
&lt;p&gt;Carles&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>