<?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>Why are BLE service modules in the SDK implemented to work as instance managers?</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/44679/why-are-ble-service-modules-in-the-sdk-implemented-to-work-as-instance-managers</link><description>Hello, 
 I&amp;#39;m working on the implementation of some custom services and I started to question why the SDK implements the service modules as instance managers (as of SDK 15). 
 What I mean with instance manager is that the module itself doesn&amp;#39;t actually</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Mon, 18 Mar 2019 10:15:44 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/44679/why-are-ble-service-modules-in-the-sdk-implemented-to-work-as-instance-managers" /><item><title>RE: Why are BLE service modules in the SDK implemented to work as instance managers?</title><link>https://devzone.nordicsemi.com/thread/176654?ContentTypeID=1</link><pubDate>Mon, 18 Mar 2019 10:15:44 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:57c4f08b-9bfb-4660-87b1-5e116a55848a</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>&lt;p&gt;I agree with you. I cannot think of a use case where it would make sense to add multiple services with the same UUID. I can see the point of having&amp;nbsp;the same&amp;nbsp;service with the same UUID on multiple devices or having multiple characteristics in one service.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Why are BLE service modules in the SDK implemented to work as instance managers?</title><link>https://devzone.nordicsemi.com/thread/175954?ContentTypeID=1</link><pubDate>Wed, 13 Mar 2019 13:32:55 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:659f8926-cfba-4a89-9039-4303e0c0fdb7</guid><dc:creator>Andy</dc:creator><description>&lt;p&gt;And what would be the use case of adding multiple services with the same UUID? How would you be able to tell them apart?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Why are BLE service modules in the SDK implemented to work as instance managers?</title><link>https://devzone.nordicsemi.com/thread/175953?ContentTypeID=1</link><pubDate>Wed, 13 Mar 2019 13:32:13 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:fe604b70-394c-4cc6-ade2-298932fec8a1</guid><dc:creator>Andy</dc:creator><description>&lt;p&gt;I guess that makes sense for the central &amp;quot;services&amp;quot;, which aren&amp;#39;t really services, they are more like &amp;quot;service handlers&amp;quot;. These are for example the BLE_BAS_C and BLE_DIS_C modules. For these modules I guess I agree it&amp;#39;s useful to have the implementation as instance managers. But for the actual service modules, it still doesn&amp;#39;t make much sense to me.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Why are BLE service modules in the SDK implemented to work as instance managers?</title><link>https://devzone.nordicsemi.com/thread/175925?ContentTypeID=1</link><pubDate>Wed, 13 Mar 2019 12:48:22 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:2405749b-6940-4484-b044-390c93ba9012</guid><dc:creator>Bj&amp;#248;rn Kvaale</dc:creator><description>[quote user=""]But from the BLE service point-of-view it doesn&amp;#39;t make much sense to me. Why would someone instantiate multiple&amp;nbsp;battery services in a peripheral? Or multiple&amp;nbsp;device information services? And is it even possible to add multiple services with the same UUID?[/quote]
&lt;p&gt;&amp;nbsp;I agree that it may not make sense to instantiate multiple battery services in a peripheral. However, it may make sense to instantiate multiple same services in a central that is connected to multiple peripherals. That way, you could have one service for each peripheral connection. Yes, it is possible to add multiple services with the same UUID.&lt;/p&gt;
&lt;p&gt;Let me ask the team about why they have done this this way &amp;amp; I will get back to you.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>