]> granicus.if.org Git - esp-idf/commitdiff
component/bt:Fixed the bug for #11754:GATT service should provide command to set...
authorYulong <huangyulong@espressif.com>
Fri, 28 Apr 2017 11:23:52 +0000 (07:23 -0400)
committerYulong <huangyulong@espressif.com>
Fri, 28 Apr 2017 11:23:52 +0000 (07:23 -0400)
components/bt/bluedroid/api/esp_gatts_api.c
components/bt/bluedroid/btc/profile/std/gatt/btc_gatts.c
components/bt/bluedroid/btc/profile/std/include/btc_gatts.h

index 47b8f947a7cd6c0b77d98513ec810c69080a3875..aaf93533c2dedd85c12b0cc8d94f81f1444381a0 100644 (file)
@@ -347,6 +347,7 @@ esp_err_t esp_ble_gatts_set_attr_value(uint16_t attr_handle, uint16_t length, co
     msg.sig = BTC_SIG_API_CALL;
     msg.pid = BTC_PID_GATTS;
     msg.act = BTC_GATTS_ACT_SET_ATTR_VALUE;
+    arg.set_attr_val.handle = attr_handle;
     arg.set_attr_val.length = length;
     arg.set_attr_val.value  = (uint8_t *)value;
 
index 4dcf8b817990f87d194c3ae12e23dbe8f92114fd..7ca73435564c6b98a158ec141482bbfeebae27ee 100644 (file)
@@ -560,7 +560,8 @@ void btc_gatts_call_handler(btc_msg_t *msg)
         break;
     }
     case BTC_GATTS_ACT_SET_ATTR_VALUE:
-    
+        BTA_SetAttributeValue(arg->set_attr_val.handle, arg->set_attr_val.length, 
+                              arg->set_attr_val.value);
     break;
     case BTC_GATTS_ACT_OPEN: {
         // Ensure device is in inquiry database
index caae44de44c6b6ed0b1ff9493d7796acde73d5cd..35cf84c5b16311aa774aaf8440f8d96771393304 100644 (file)
@@ -123,7 +123,8 @@ typedef union {
     } send_rsp;
 
     //BTC_GATTS_SET_ATTR_VALUE
-    struct set_attr_val_args{
+    struct set_attr_val_args {
+        uint16_t handle;
         uint16_t length;
         uint8_t *value;
     } set_attr_val;