<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        
        
        <!-- This is broken by doc revisioning.
         -->
        <link rel="shortcut icon" href="../../../../../../img/favicon.ico">

        <title>ble_gattc_read_by_uuid - Apache Mynewt</title>

        <link href="../../../../../../css/bootstrap-3.0.3.min.css" rel="stylesheet">
        <link rel="stylesheet" href="../../../../../../css/highlight.css">
        <link href="../../../../../../css/base.css" rel="stylesheet">
        <link href="../../../../../../css/custom.css" rel="stylesheet">
        <link href="../../../../../../css/v2.css" rel="stylesheet">
        <link href="https://fonts.googleapis.com/css?family=Lato" rel="stylesheet">
        <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css">

        <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
        <!--[if lt IE 9]>
            <script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
            <script src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js"></script>
        <![endif]-->

        
            <script>
            (function(i, s, o, g, r, a, m) {
    i["GoogleAnalyticsObject"] = r;
    (i[r] =
        i[r] ||
        function() {
            (i[r].q = i[r].q || []).push(arguments);
        }),
        (i[r].l = 1 * new Date());
    (a = s.createElement(o)), (m = s.getElementsByTagName(o)[0]);
    a.async = 1;
    a.src = g;
    m.parentNode.insertBefore(a, m);
})(window, document, "script", "//www.google-analytics.com/analytics.js", "ga");

ga("create", "UA-72162311-1", "auto");
ga("send", "pageview");
</script>
        
    </head>


    <body class="ble_gattc_read_by_uuid">


        <div class="container">
    <div class="row v2-main-banner">
        <a class="logo-cell" href="/">
            <img class="logo" src="/img/logo.png">
        </a>
        <div class="tagline-cell">
            <h4 class="tagline">An OS to build, deploy and securely manage billions of devices</h4>
        </div>
        <div class="news-cell">
            <div class="well">
                <h4>Latest News:</h4> <a href="/download">Apache Mynewt 1.12.0, Apache NimBLE 1.7.0 </a> released (April 4, 2024)
            </div>
        </div>
    </div>
</div>

        






<nav id="navbar" class="navbar navbar-inverse affix-top" data-spy="affix" data-offset-top="150" role="navigation">
    <div class="container">
        <!-- Collapsed navigation -->
        <div class="navbar-header">
            <!-- Expander button -->
            <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
            </button>

        </div>

        <!-- Expanded navigation -->
        <div class="navbar-collapse collapse">
            <!-- Main navigation -->
            <ul class="nav navbar-nav navbar-right">
                <li 
  class=""
>
                    <a href="/"><i class="fa fa-home" style="font-size: larger;"></i></a>
                </li>
                <li 
  class="important"
>
                    <a href="/quick-start/">Quick Start</a>
                </li>
                <li 
  class=""
>
                    <a href="/about/">About</a>
                </li>
                <li 
  class=""
>
                    <a href="/talks/">Talks</a>
                </li>
                <li 
  class="active"
>
                    <a href="/documentation/">Documentation</a>
                </li>
                <li 
  class=""
>
                    <a href="/download/">Download</a>
                </li>
                <li 
  class=""
>
                    <a href="/community/">Community</a>
                </li>
                <li 
  class=""
>
                    <a href="/events/">Events</a>
                </li>
            </ul>

        </div>
    </div>
</nav>

        

        <div class="container">
            
                <div class="row">
                    <div class="col-md-3 v2-sidebar sidebar-container"><div id="docSidebar" class="hidden-print" role="complementary">
    <div class="top">
        <div role="search">
            <form id="rtd-search-form" class="wy-form" action="../../../../../../search.html" method="get">
                <div class="form-group">
                    <input type="text" name="q" class="form-control" placeholder="Search documentation" />
                </div>
            </form>
        </div>
    </div>
    <ul class="toc-nav">
      <li class="doc-version"><select class="form-control" onchange="if (this.value) window.location.href=this.value">
  <option value="/latest">
    Version: master
  </option>
  <option value="/v1_12_0/" >
    Version: 1.12.0
  </option>
  <option value="/v1_11_0/" >
    Version: 1.11.0
  </option>
  <option value="/v1_10_0/" >
    Version: 1.10.0
  </option>
  <option value="/v1_9_0/" >
    Version: 1.9.0
  </option>
    <option value="/v1_8_0/" >
    Version: 1.8.0
  </option>
  <option value="/v1_7_0/" >
    Version: 1.7.0
  </option>
  <option value="/v1_6_0/" >
    Version: 1.6.0
  </option>
  <option value="/v1_5_0/" >
    Version: 1.5.0
  </option>
  <option value="/v1_4_0/" >
    Version: 1.4.0
  </option>
  <option value="/v1_3_0/os/introduction" >
    Version: 1.3.0
  </option>
  <option value="/v1_2_0/os/introduction" >
    Version: 1.2.0
  </option>
  <option value="/v1_1_0/os/introduction" selected="selected" >
    Version: 1.1.0
  </option>
  <option value="/v1_0_0/os/introduction" >
    Version: 1.0.0
  </option>
  <option value="/v0_9_0/os/introduction" >
    Version: 0.9.0
  </option>
</select></li>
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
      
        
          
  
  
    <li ><a href="../../../../../../os/introduction/">Mynewt Documentation</a>
  
  
    <ul>
          
              
          
              
                
  
  
    <li ><a href="../../../../../../os/get_started/get_started/">Basic Setup</a>
  
  
    </li>

              
          
              
                
  <li >
    <a href="../../../../../../os/get_started/vocabulary/">Concepts</a>
  </li>

              
          
              
                
  
  
    <li ><a href="../../../../../../os/tutorials/tutorials/">Tutorials</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../../../../os/os_user_guide/">OS User Guide</a>
  
  
    </li>

              
          
              
                
  
  
    <li><a href="
  ../../../../ble_intro/
">BLE User Guide</a>
  
  
    <ul>
          
              
                
  <li >
    <a href="../../../../ble_intro/">NimBLE Introduction</a>
  </li>

              
          
              
                
  <li >
    <a href="../../../../ble_sec/">NimBLE Security</a>
  </li>

              
          
              
                
  
  
    <li ><a href="../../../../ble_setup/ble_setup_intro/">NimBLE Setup</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../ble_hs/">NimBLE Host API</a>
  
  
    <ul>
          
              
          
              
                
  <li >
    <a href="../../../ble_hs_return_codes/">Return codes</a>
  </li>

              
          
              
                
  
  
    <li ><a href="../../../ble_gap/ble_gap/">GAP</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../ble_gattc/">GATT client</a>
  
  
    <ul>
          
              
          
              
                
  
  
    <li><a href="
  ../../definitions/ble_gattc_defs/
">Definitions</a>
  
  
    </li>

              
          
              
                
  
  
    <li><a href="
  ../ble_gattc_disc_all_chrs/
">Functions</a>
  
  
    <ul>
          
              
                
  <li >
    <a href="../ble_gattc_disc_all_chrs/">ble_gattc_disc_all_chrs</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_disc_all_dscs/">ble_gattc_disc_all_dscs</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_disc_all_svcs/">ble_gattc_disc_all_svcs</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_disc_chrs_by_uuid/">ble_gattc_disc_chrs_by_uuid</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_disc_svc_by_uuid/">ble_gattc_disc_svc_by_uuid</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_exchange_mtu/">ble_gattc_exchange_mtu</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_find_inc_svcs/">ble_gattc_find_inc_svcs</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_indicate/">ble_gattc_indicate</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_indicate_custom/">ble_gattc_indicate_custom</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_notify/">ble_gattc_notify</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_notify_custom/">ble_gattc_notify_custom</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_read/">ble_gattc_read</a>
  </li>

              
          
              
                
  <li class="active">
    <a href="./">ble_gattc_read_by_uuid</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_read_long/">ble_gattc_read_long</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_read_mult/">ble_gattc_read_mult</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_write/">ble_gattc_write</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_write_flat/">ble_gattc_write_flat</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_write_long/">ble_gattc_write_long</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_write_no_rsp/">ble_gattc_write_no_rsp</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_write_no_rsp_flat/">ble_gattc_write_no_rsp_flat</a>
  </li>

              
          
              
                
  <li >
    <a href="../ble_gattc_write_reliable/">ble_gattc_write_reliable</a>
  </li>

              
          
    </ul>
  
    </li>

              
          
    </ul>
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../ble_gatts/ble_gatts/">GATT server</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../ble_hs_id/ble_hs_id/">Identity</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../ble_att/ble_att/">ATT</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../other/other/">Other</a>
  
  
    </li>

              
          
    </ul>
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../../bletiny/bletiny_api/">bletiny app Usage API</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../../btshell/btshell_api/">btshell app Usage API</a>
  
  
    </li>

              
          
    </ul>
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../../../../newt/newt_intro/">Newt Tool Guide</a>
  
  
    </li>

              
          
              
                
  
  
    <li ><a href="../../../../../../newtmgr/overview/">Newt Manager Guide</a>
  
  
    </li>

              
          
              
                
  <li >
    <a href="../../../../../../known_issues/">Known Issues</a>
  </li>

              
          
    </ul>
  
    </li>

        
      
        
          
  
  
    <li><a href="
  ../../../../../../faq/go_env/
">Appendix</a>
  
  
    </li>

        
      
    </ul>
</div></div>

                    <div class="col-md-9" role="main">
                        <div class="doc-header">
                            <div role="navigation" aria-label="breadcrumbs navigation">
  <ul class="wy-breadcrumbs">
    <li><a href="/documentation/">Docs</a></li>
    
    
        
          <li>&raquo; <a href="network/ble/ble_hs/ble_gattc/functions/ble_gattc_disc_all_chrs/">Functions</a></li>
        
      
        
          <li>&raquo; <a href="network/ble/ble_hs/ble_gattc/ble_gattc/">GATT client</a></li>
        
      
        
          <li>&raquo; <a href="network/ble/ble_hs/ble_hs/">NimBLE Host API</a></li>
        
      
        
          <li>&raquo; <a href="network/ble/ble_intro/">BLE User Guide</a></li>
        
      
        
          <li>&raquo; <a href="os/introduction/">Mynewt Documentation</a></li>
        
      
      
        <li>&raquo; ble_gattc_read_by_uuid</li>
      
    
    
      <li class="wy-breadcrumbs-aside">
        
          <a href="https://github.com/apache/mynewt-site/blob/master/docs/network/ble/ble_hs/ble_gattc/functions/ble_gattc_read_by_uuid.md"
            class="icon icon-github"> Edit on GitHub</a>
        
      </li>
    
  </ul>
</div>
                        </div>
                        
                          
                        
                          
                        
                          
                        
                          
                            <div class="alert alert-warning">
                                <p>
                                    Version 1.1.0 is not the most recent version of the Apache Mynewt
                                    documentation. Click <a href="/latest">here</a> to read the latest
                                    version.
                                </p>
                            </div>
                          
                        
                        
                            <h2 id="ble_gattc_read_by_uuid"><font color="#F2853F" style="font-size:24pt">ble_gattc_read_by_uuid</font></h2>
<div class="codehilite" style="background: #ffffff"><pre style="line-height: 125%;"><span></span><code><span style="color: #A90D91">int</span>
<span style="color: #000000">ble_gattc_read_by_uuid</span>(
            <span style="color: #A90D91">uint16_t</span>  <span style="color: #000000">conn_handle</span>,
            <span style="color: #A90D91">uint16_t</span>  <span style="color: #000000">start_handle</span>,
            <span style="color: #A90D91">uint16_t</span>  <span style="color: #000000">end_handle</span>,
    <span style="color: #A90D91">const</span> <span style="color: #000000">ble_uuid_t</span> <span style="color: #000000">*uuid</span>,
    <span style="color: #000000">ble_gatt_attr_fn</span> <span style="color: #000000">*cb</span>,
                <span style="color: #A90D91">void</span> <span style="color: #000000">*cb_arg</span>
)
</code></pre></div>

<h3 id="description">Description</h3>
<p>Initiates GATT procedure: Read Using Characteristic UUID.</p>
<h3 id="parameters">Parameters</h3>
<table>
<thead>
<tr>
<th><em>Parameter</em></th>
<th><em>Description</em></th>
</tr>
</thead>
<tbody>
<tr>
<td>conn_handle</td>
<td>The connection over which to execute the procedure.</td>
</tr>
<tr>
<td>start_handle</td>
<td>The first handle to search (generally the handle of the service definition).</td>
</tr>
<tr>
<td>end_handle</td>
<td>The last handle to search (generally the last handle in the service definition).</td>
</tr>
<tr>
<td>cb</td>
<td>The function to call to report procedure status updates; null for no callback.</td>
</tr>
<tr>
<td>cb_arg</td>
<td>The optional argument to pass to the callback function.</td>
</tr>
</tbody>
</table>
<h3 id="returned-values">Returned values</h3>
<table>
<thead>
<tr>
<th><em>Value</em></th>
<th><em>Condition</em></th>
</tr>
</thead>
<tbody>
<tr>
<td>0</td>
<td>Success.</td>
</tr>
<tr>
<td><a href="../../ble_hs_return_codes/#return-codes-core">Core return code</a></td>
<td>Unexpected error.</td>
</tr>
</tbody>
</table>
                        
                        <div class="row">
                            



<ul class="nav nav-pills" style="margin-bottom: 10px">
    <li>
    
    </li>
    <li class="pull-right">
    
    </li>
</ul>
                        </div>
                        <footer class="row">
    <div class="col-xs-12">
        
            <p class="copyright">Apache Mynewt is available under Apache License, version 2.0.</p>
        
    </div>
    <div class="col-xs-12">
        <div class="logos">
            <a href="https://www.apache.org/">
                <img src="/img/asf_logo_wide_small.png" alt="Apache" title="Apache">
            </a>
            <p>
                Copyright © 2015-2021 The Apache Software Foundation.<br>
                <small class="footnote">
                    Apache Mynewt, Mynewt, Apache, the Apache feather logo, and the Apache Mynewt
                    project logo are either registered trademarks or trademarks of the Apache
                    Software Foundation in the United States and other countries.
                </small>
            </p>
            <a href="">
                <img src="https://www.countit.com/images/add_to_slack.png" alt="Slack Icon" title="Join our Slack Community" />
            </a>
        </div>
    </div>
    <a href="https://www.apache.org/licenses/">
        <button class="button-footer-asf">
            License
        </button>
    </a>
    <a href="https://www.apache.org/foundation/sponsorship.html">
        <button class="button-footer-asf">
            Sponsorship
        </button>
    </a>
    <a href="https://www.apache.org/foundation/thanks.html">
        <button class="button-footer-asf">
            Thanks
        </button>
    </a>
    <a href="https://www.apache.org/security/">
        <button class="button-footer-asf">
            Security
        </button>
    </a>
    <a href="https://apache.org/events/current-event">
        <button class="button-footer-asf">
            ASF Events
        </button>
    </a>
</footer>
                    </div>
                </div>
            
            
        </div>

        <script src="../../../../../../js/jquery-1.10.2.min.js"></script>
        <script src="../../../../../../js/bootstrap-3.0.3.min.js"></script>
        <script src="../../../../../../js/highlight.pack.js"></script>
        <script src="../../../../../../js/base.js"></script>
        <script src="../../../../../../js/custom.js"></script>
            <script src="search/main.js"></script>

    </body>
</html>