Possible way to change mac address of Wicedsense sensor tag

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi i'm new in using Wicedsense sensor tag. I have two sensor devices, device1 and device2,  in one I have factory firm and in the second one other firmware which is not the factory firmware.  Now, I have face the following scenario. First, I am able to connect to the factory loaded firmware in device1 and get all the readings such as temperature , pressure , humidity etc. Second, when I switch too device2 which has the new firmware which is not factory loaded (I use wicedsense explorer to observe  whether any reading are sent). And as expected no reading are sent. Third, i turn off device2 and connect to device1 but this time it is loads with device2 characteristics.

I think the reason this is happening is because both the devices have the mac address. So, I want know whether I am going in the right direction or not. I am fairless new to this field so any kind of help is appreciated.

0 Likes
1 Solution
BoonT_56
Employee
Employee
500 likes received 250 likes received 100 likes received

I use the below make target when I download the wiced_sense app onto the sense kit. This make target allows one to insert the BD address. Perhaps you can adapt the below to yours...

wiced_sense-BCM920737TAG_Q32 download BT_DEVICE_ADDRESS=7223A11874A8 UART=COM23

View solution in original post

4 Replies
BoonT_56
Employee
Employee
500 likes received 250 likes received 100 likes received

I use the below make target when I download the wiced_sense app onto the sense kit. This make target allows one to insert the BD address. Perhaps you can adapt the below to yours...

wiced_sense-BCM920737TAG_Q32 download BT_DEVICE_ADDRESS=7223A11874A8 UART=COM23

MichaelF_56
Moderator
Moderator
Moderator
250 sign-ins 25 comments on blog 10 comments on blog

Confirming that your issue appears to be related to the fact all our our kits ship with the same BD_ADDR.  boont​ response to changing the the BD_ADDR via the make option should be sufficient to overcome this obstacle.

0 Likes
ChristopherA_76
Employee
Employee
5 likes given First like received First like given

Remember that you can use an arbitrary BD_ADDR  while developing (the easiest way is by setting an address with the WICED SDK make tools when you build and program the device), but outside of your lab, each Bluetooth product in the real world has a unique address. If you are using more than one Tag in your lab, be sure to give them different BD_ADDRs. Otherwise you will get anomalous behavior as each device is not unique. In other words, having two BT devices in the same space with the same address doesn't work.

Finished BT products each have a unique BT address, just as a WLAN chip needs a unique MAC address. The most common way to store this address is either in NVRAM on the chip (it can be programmed during manufacture of your product with your own range of addresses), or if you have a system where a Bluetooth chip is attached to a host MCU (e.g. An Android phone) the BD_ADDR can be stored in persistent storage in the host filesystem and after the chip is powered and firmware downloaded, the unique address is written to the BT chip's RAM with the standard BT SIG HCI commands.

Gregg

Per cgariss​ comment "it can be programmed during manufacture of your product with your own range of addresses", we have enabled Avnet​ to mass program the BCM2073XS devices, which includes the ability to program unique BD_ADDRs the customer provides.