<?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>Noob question: gatt client</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/1526/noob-question-gatt-client</link><description>I&amp;#39;m trying to reconcile two things I read about the softdevice. The GAP roles that are supported include broadcaster and peripheral. Also, there is support for a GATT client and GATT server. 
 It makes sense to me that the broadcaster and peripheral</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Wed, 05 Feb 2014 17:13:17 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/1526/noob-question-gatt-client" /><item><title>RE: Noob question: gatt client</title><link>https://devzone.nordicsemi.com/thread/6775?ContentTypeID=1</link><pubDate>Wed, 05 Feb 2014 17:13:17 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:1f842f57-ccf0-4617-abf1-ea87a647936c</guid><dc:creator>Richard von Lehe</dc:creator><description>&lt;p&gt;Great answer - thanks.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Noob question: gatt client</title><link>https://devzone.nordicsemi.com/thread/6774?ContentTypeID=1</link><pubDate>Wed, 05 Feb 2014 17:05:18 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:ce4e5d58-6b8d-41a8-9647-91b671f39894</guid><dc:creator>Carles</dc:creator><description>&lt;p&gt;Hi there,&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;I&amp;#39;m trying to reconcile two things I read about the softdevice. The GAP roles that are supported include broadcaster and peripheral. Also, there is support for a GATT client and GATT server.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;True for the S110 SoftDevice. On the S120 we support scanner and central, and GATT client and server.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;It makes sense to me that the broadcaster and peripheral roles would want a GATT server. Under what conditions would those roles ever require a GATT client? I&amp;#39;ll keep reading and I may end up finding the answer, but if somebody can set me straight in the mean time I&amp;#39;d appreciate it.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Short answer: GATT roles today are 100% independent of GAP roles.&lt;/p&gt;
&lt;p&gt;Long answer: It was originally intended that a GAP peripheral would only ever be a GATT server and a GAP central only a GATT client. For several reasons (some of them historical) this intention was set aside and today operating systems and devices support all 4 combinations:&lt;/p&gt;
&lt;p&gt;GAP central and GATT client
GAP central and GATT server
GAP peripheral and GATT client
GAP peripheral and GATT server&lt;/p&gt;
&lt;p&gt;Our S110 SD allows your application to be a peripheral and &lt;strong&gt;both&lt;/strong&gt; a GATT server and client at the same time.&lt;/p&gt;
&lt;p&gt;About what sense does it make, it really depends on how you design your profile layers. Usually the GATT server is the entity that holds the (often sensor extracted) data and and the GATT client is the peer querying and obtaining that data to store or display it. In some cases, both devices may have displays and sensors, and so it makes sense to combine roles.&lt;/p&gt;
&lt;p&gt;Completely made up example:&lt;/p&gt;
&lt;p&gt;Smartphone as central, thermometer (SD + app) with a temperature sensor and display as a peripheral.&lt;/p&gt;
&lt;p&gt;The peripheral measures and keeps a record of the current temperature as a GATT server, and the smartphone reads it over the air as a GATT client and displays it on the screen. But the same thermometer with a display and the SD running wants to display the time. In that case the thermometer would act simultaneously as a GATT client to query the time from the smartphone (which has it available through the GSM network) and display it. The smartphone would offer the current time value as a GATT server.&lt;/p&gt;
&lt;p&gt;Carles&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>