linux-bluetooth.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Santiago Carot-Nemesio <sancane@gmail.com>
To: linux-bluetooth@vger.kernel.org
Cc: Santiago Carot-Nemesio <sancane@gmail.com>
Subject: [PATCH 2/6] Confiure C.C.C descriptor during the thermometer configuration
Date: Tue, 22 Nov 2011 15:49:44 +0100	[thread overview]
Message-ID: <1321973388-16300-3-git-send-email-sancane@gmail.com> (raw)
In-Reply-To: <1321973388-16300-2-git-send-email-sancane@gmail.com>

---
 thermometer/thermometer.c |   22 ++++++++++++++++------
 1 files changed, 16 insertions(+), 6 deletions(-)

diff --git a/thermometer/thermometer.c b/thermometer/thermometer.c
index 2a0fb0f..1746e60 100644
--- a/thermometer/thermometer.c
+++ b/thermometer/thermometer.c
@@ -340,21 +340,31 @@ static void process_thermometer_desc(struct descriptor *desc)
 	bt_uuid16_create(&btuuid, GATT_CLIENT_CHARAC_CFG_UUID);
 
 	if (bt_uuid_cmp(&desc->uuid, &btuuid) == 0) {
+		uint8_t atval[2];
+
 		if (g_strcmp0(ch->attr.uuid,
 					TEMPERATURE_MEASUREMENT_UUID) == 0) {
-			/* TODO: Check if we have to enable it */
-			DBG("C.C.C in Temperature Measurement");
+			if (g_slist_length(ch->t->fwatchers) == 0)
+				return;
+
+			atval[0] = 0x02;
+			atval[1] = 0x00;
 		} else if (g_strcmp0(ch->attr.uuid,
 					INTERMEDIATE_TEMPERATURE_UUID) == 0) {
-			/* TODO: Check if we have to enable it */
-			DBG("C.C.C in Intermediate Temperature");
+			if (g_slist_length(ch->t->iwatchers) == 0)
+				return;
+
+			atval[0] = 0x01;
+			atval[1] = 0x00;
 		} else if (g_strcmp0(ch->attr.uuid,
 					MEASUREMENT_INTERVAL_UUID) == 0) {
-			/* TODO: Enable indications */
-			DBG("C.C.C in Measurement Interval");
+			atval[0] = 0x02;
+			atval[1] = 0x00;
 		} else
 			goto done;
 
+		gatt_write_char(ch->t->attrib, desc->handle, atval, 2,
+								NULL, NULL);
 		return;
 	}
 
-- 
1.7.7.4


  reply	other threads:[~2011-11-22 14:49 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-11-22 14:49 Health Thermometer Profile patches Santiago Carot-Nemesio
2011-11-22 14:49 ` [PATCH 1/6] Implement SetProperty D-Bus method Santiago Carot-Nemesio
2011-11-22 14:49   ` Santiago Carot-Nemesio [this message]
2011-11-22 14:49     ` [PATCH 3/6] Process measurements interval indication Santiago Carot-Nemesio
2011-11-22 14:49       ` [PATCH 4/6] Fix possible null pointer deference Santiago Carot-Nemesio
2011-11-22 14:49         ` [PATCH 5/6] Fix access to an invalid memory sector if time stamp is not supported Santiago Carot-Nemesio
2011-11-22 14:49           ` [PATCH 6/6] Use system types instead of GLIB ones Santiago Carot-Nemesio
2011-12-02 11:26     ` [PATCH 2/6] Confiure C.C.C descriptor during the thermometer configuration Johan Hedberg
2011-12-02 11:52       ` Santiago Carot
2011-12-02 15:41         ` Anderson Lizardo
2011-12-07 14:58   ` [PATCH 1/6] Implement SetProperty D-Bus method Johan Hedberg
2011-12-09 10:02     ` Santiago Carot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1321973388-16300-3-git-send-email-sancane@gmail.com \
    --to=sancane@gmail.com \
    --cc=linux-bluetooth@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).