PAN1322Application Note 33 Revision 1.2, 2013-12-18Design GuideSince the Smart Phones uses different operating systems they need their own App implementations toconnect to an accessory. Also the behavior and requirement of the Smart Phones may differdepending on both operating system and version. Included here are the basics for securing easy set-upand compatibility with the major Smart Phones and OS’s.5.2.1 Android Smart PhonesTo keep up compatibility with Android Smart Phones using specific Bluetooth Apps there are a couplethings to keep in mind both for the Accessory and App development. The below is valid for 4.x versionsand possibly also older versions of Android but it cannot be guaranteed.5.2.1.1 Registering service for Android compatibilityAn Android application that shall work with an Accessory (eUniStone) solution can either use a UUIDcontaining the Serial Port Profile UUID or a it can use the random UUID which only is used foraccessories (or other Apps) connecting to specific Android Apps. In either case it is important that thechosen UUID is registered in eUniStone and used in the Android application. It is recommended to usea CoD other than 0x000000, since some Smart Phones with specific Android versions, will require this.The Serial Port Profile UUID, CoD, service name and port number of the service is registered with thecommand AT+JRLS, and the values shall be written to eUniStone as initialization. The below exampleshould work with most Android Smart Phones. The service is called “Serial port” and set to port 0x01.The name and port number can be chosen to be different to the example. Registering a UUID containing the serial port profile:AT+JRLS=32,11,0000110100001000800000805F9B34FB,Serial port,01,240704What CoD to choose depends on the specified behavior of the accessory. However, in some cases it isalso important to use info from the field on what works. Details about CoD can be found onhttps://www.bluetooth.org under the section called “Assigned numbers, Baseband”.Random UUID can be used if the Accessory (eUniStone) only shall work with a specific Android SmartPhone App. If eUniStone uses a random UUID, an Android Smart Phone App needs to be developedwhich use the same specific random UUID. The specific accessory with eUniStone and the AndroidSmart Phone App will then more easily be associated in a way so that this Android Smart Phone Appwill only connect to the accessory using that specific random UUID. Registering a random UUID:AT+JRLS=32,11,D2CA6960F6A042308BE980CF63B25BAF,Serial port,01,240704Observe that the long random UUID is only generated randomly once during development of theaccessory and Smart Phone App. Most programing languages and tools contain functions forgenerating a long random UUID. UUID generators can for example be found in Java. Also there areonline webpages that can generate random UUID’s.