This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Get IEEE Address with zb_GetDeviceInfo

Other Parts Discussed in Thread: CC2530EM, CC2530

I seem to be having trouble getting the correct IEEE address from my CC2530EM using the zb_GetDeviceInfo function.  

 

   uint8 *extAddr = (uint8 *)osal_mem_alloc( Z_EXTADDR_LEN );

    zb_GetDeviceInfo(ZB_INFO_IEEE_ADDR, extAddr);

     //build 32 bit int

     uint32 extAddrLower = BUILD_UINT32(extAddr[0], extAddr[1], extAddr[2], extAddr[3]);

     uint32 extAddrUpper = BUILD_UINT32(extAddr[4], extAddr[5], extAddr[6], extAddr[7]);

     //display for debug

     HalLcdWriteValue( extAddrUpper, 16, HAL_LCD_LINE_1 );

     HalLcdWriteValue( extAddrLower, 16, HAL_LCD_LINE_2 );

 

This prints out:  

123B00

1023E2B

 

But the sticker on the back of the EM says 0000 0000 0000 0C69.  Can anyone tell me what I'm doing wrong?

  • The values you print, with leading zeroes, would represent an IEEE address of 0x00123B0001023E2B, which looks legitimate - probably from info memory on the CC2530.

    If you look closely at the sticker on the back of the EM, it should show S.No. above the 0000 0000 0000 0C69 - that's the serial number of the EM, different than the IEEE address of the CC2530.