• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Low Power RF & Wireless Connectivity » Low Power RF Bluetooth® Low Energy & ANT Forum » UUIDs for Service and Characteristic
Share
Low Power RF & Wireless Connectivity
  • Forums
  • Announcements
  • Files
  • E2E Wiki
Options
  • Subscribe via RSS

UUIDs for Service and Characteristic

UUIDs for Service and Characteristic

This question is not answered
Jim Conrad
Posted by Jim Conrad
on Dec 20 2012 18:28 PM
Intellectual360 points

Now that I have my prototype board programmed and running (a modified version of simpleBLEPeripheral) I need to connect to an iPhone5 app that our contracted developer has.  The app is installed on my iPhone5 and runs to the point of trying to connect and send time to my board.  The developer tells me to set my Service UUID to 6B3B68E6-E4E3-4F87-81DB-9DC1D62C9E18 and the UUID for my "set time" characteristic to B9F80190-321F-499E-9B1E-242DBA4EF067.  Where and how do I put these UUIDs into my CC2540 modified simpleBLEPeripheral code?  Searching through the source code and documentation shows nothing with numbers this large.  Please help.

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Eng351
    Posted by Eng351
    on Dec 20 2012 23:42 PM
    Expert2980 points

    The standard simpleBLEPeripheral uses only 16bit UUIDs which are ok for development but are reserved for specific functions. For manufacturer specific services, 128 bit UUIDs are required. See this resource:

    http://processors.wiki.ti.com/index.php/128_Bit_UUID_SimpleBLE

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Jim Conrad
    Posted by Jim Conrad
    on Dec 21 2012 13:27 PM
    Intellectual360 points

    Eng351     Thank you for the answer and link.  I have created copies of the Central and Peripheral projects, renaming to have a leading 128_ to keep them separate from the unmodified originals.  Not working quite yet.  I have debugged down to simpleBLECentralStartDiscovery() where:

    uint8 uuid[ATT_UUID_SIZE] = { TI_UUID(SIMPLEPROFILE_SERV_UUID) };

    results in uuid[] being loaded with 00:00:00:00:00:00:00:B0:00:40:51:04:F0:FF:00:F0.   This is not what is in the macro definition for TI_UUID(SIMPLEPROFILE_SERV_UUID).  It seems the initialization of uuid is getting corrupted.  Am I missing something?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Jim Conrad
    Posted by Jim Conrad
    on Dec 21 2012 14:05 PM
    Intellectual360 points

    Think I found it!  I changed the TI_UUID definition as shown

    //#define TI_UUID(uuid)       0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB0,0x00, 0x40, 0x51, 0x04, LO_UINT16(uuid), HI_UINT16(uuid), 0x00, 0xF0
    #define TI_UUID(uuid)       LO_UINT16(uuid), HI_UINT16(uuid), 0x00, 0x00, 0x00, 0x00, 0x00, 0xB0,0x00, 0x40, 0x51, 0x04, 0x00, 0x00, 0x00, 0xF0

    and now I get the proper "Char 1: n" at the Peripheral.

    Now the question becomes, what about the characteristic uuid?  The iPhone developer gave me two 128-bit VERY different uuids.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Eng351
    Posted by Eng351
    on Dec 21 2012 15:20 PM
    Expert2980 points

    The UUIDs can be whatever you want. The TI base UUID is just an example but you can use your own base.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Jim Conrad
    Posted by Jim Conrad
    on Dec 21 2012 15:24 PM
    Intellectual360 points

    But can the uuid for services be completely different from the uuid for a characteristic?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Jim Conrad
    Posted by Jim Conrad
    on Dec 27 2012 11:08 AM
    Intellectual360 points

    Please mark this URGENT:

    Proceeding on, I have the Peripheral side working with 128-bit Service UUID and 16-bit Characteristic UUID.  Working is defined here as using BTOOL to connect to the peripheral, discover its 128-bit Service UUID, then write and read Characteristic 1 using UUID F1:FF.  However, I have not been successful in getting the Central side program to do more than connect.  It fails to discover the peripheral.  What needs to be changed on the central side to make it discover a 128-bit service UUID and 16-bit characteristic UUIDs?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use