8 Replies Latest reply on Jan 20, 2015 8:43 AM by MichaelF_56

    [BCM20736 SDK2.2] The add devices on Windows 7

      Hi Sir,

       

      I have 2 devices and follow the following link to change device name.

      Re: How to change the device name?

       

      Then I add new BT devices on Windows 7, these two devices show in the same logo and jump back and forth.

      Can it be shown as two independent logo?

      ScreenClip.png

      ScreenClip.png

        • 1. Re: [BCM20736 SDK2.2] The add devices on Windows 7

          My bad, this is due to the same id... I've solved it.

          • 2. Re: [BCM20736 SDK2.2] The add devices on Windows 7

            Hi Sir,

            I have one more question about the add device on Win7.

            When the length of the local_name over 8, the device only show Bluetooth LE Device.

            Anyway to overcome it?

            ScreenClip.png

            • 3. Re: [BCM20736 SDK2.2] The add devices on Windows 7
              VikramR_26

              I was not able to reproduce, I have a BLE name " BLE Prox key fob" greater than 8 and it shows up. It depends on your pc's bluetooth(LE chip and driver) for Windows 7.

               

              BLE_Scan.png

              1 of 1 people found this helpful
              • 4. Re: [BCM20736 SDK2.2] The add devices on Windows 7

                Hi Sirs,

                 

                I do more experiment. It's not only happen on Win7. I use my iphone6 plus and install an App which name is eBeacon. It detect the local name as null.

                 

                Experiment 1:

                If I define the local name with the length over 8 bytes in the  "BLE_PROFILE_CFG", this shows correct.

                 

                Experiment 2:

                I follow the code on the forum to change the local_name dynamically. See the bold part. One is 7 bytes local name, and another one is 15 bytes local name. The 7 bytes local_name can be shown correct on both Win7 and the eBeacon app. But, the 15 bytes local_name can't be shown correct on Win7 and eBeacon.

                 

                The code is as follow:

                    // Read value of the service from GATT DB.

                    bleprofile_ReadHandle(HANDLE_MI_MAIN_SERVICE_UUID, &db_pdu);

                    ble_tracen((char *)db_pdu.pdu, db_pdu.len);

                 

                    if (db_pdu.len != 16)

                    {

                        ble_trace1("\rmicro_inverter bad service UUID len: %d", db_pdu.len);

                    }

                    else

                    {

                    BLE_ADV_FIELD adv[3];

                 

                        // flags

                        adv[0].len     = 1 + 1;

                        adv[0].val     = ADV_FLAGS;

                        adv[0].data[0] = LE_LIMITED_DISCOVERABLE | BR_EDR_NOT_SUPPORTED;

                 

                        adv[1].len     = 16 + 1;

                        adv[1].val     = ADV_SERVICE_UUID128_COMP;

                        memcpy(adv[1].data, db_pdu.pdu, 16);

                 

                        // name, TODO: the final version should get the address from microcontroller.

                        UINT8 *bda = emconinfo_getAddr();

                        //sprintf(bleprofile_p_cfg->local_name, "SMI%02x%02x%02x%02x%02x%02x", bda[0x05], bda[0x04], bda[0x03], bda[0x02], bda[0x01], bda[0x00]);

                        sprintf(bleprofile_p_cfg->local_name, "SMI%02x%02x", bda[0x01], bda[0x00]);

                 

                        BLEPROFILE_DB_PDU p_pdu;

                        p_pdu.len = strlen(bleprofile_p_cfg->local_name) + 1;

                        memcpy(&p_pdu.pdu[0], bleprofile_p_cfg->local_name, strlen(bleprofile_p_cfg->local_name));

                        bleprofile_WriteHandle(0x0016, &p_pdu);

                        adv[2].len      = strlen(bleprofile_p_cfg->local_name) + 1;

                        adv[2].val      = ADV_LOCAL_NAME_COMP;

                        memcpy(adv[2].data, bleprofile_p_cfg->local_name, adv[2].len - 1);

                 

                        bleprofile_GenerateADVData(adv, 3);

                    }

                    blecm_setTxPowerInADV(0);

                    bleprofile_Discoverable(HIGH_UNDIRECTED_DISCOVERABLE, micro_inverter_remote_addr);

                 

                Any comment and idea?

                • 5. Re: [BCM20736 SDK2.2] The add devices on Windows 7
                  MichaelF_56

                  Is the goal to change the device name dynamically (To change the device's name dynamically)?

                   

                  The name needs to be changed in two places per this thread: Re: Unable to change device name

                   

                  The first one is used during a connection as it allows a client to read the device name value from the GATT database  and the second instance is what’s placed in the advertisement packet.

                  • 6. Re: [BCM20736 SDK2.2] The add devices on Windows 7

                    The 2nd link is fail.

                    • 7. Re: [BCM20736 SDK2.2] The add devices on Windows 7
                      ShawnA_01

                      mmfae/fran - I get the un-authorized error message when I try to view the 2nd link as well.

                      • 8. Re: [BCM20736 SDK2.2] The add devices on Windows 7
                        MichaelF_56

                        userc_7964 ShawnA_01

                         

                        I think I was able to fix the access issue.  Give it another try.