SDK 2.2.0 for KW41Z. Missing files in the "smac_connectivity_test" example

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

SDK 2.2.0 for KW41Z. Missing files in the "smac_connectivity_test" example

1,012 Views
grigoryemelyano
Contributor I

Hi. I'm trying to compile "wireless_example_smac_connectivity_test_bm" from SDK 2.2.0 for KW41Z. In case I use default configuration of this example, there are not any errors. However, if I enable cPWR_UsePowerDownMode mode or gPHY_802_15_4g_d mode, I get errors that some files can not be found. 

For cPWR_UsePowerDownMode, it is "PWR_Interface.h".

For gPHY_802_15_4g_d, it is "PhyPib.h", "PhyExtended.h" and "PhyTime.h

So the question is how to enable and use both modes. I was trying to find any description for these modes (and aforementioned files), but without any success. I guess, I'm missing something, but I have not found anything helpful in the SDK documentation yet.

Thanks in advance,

0 Kudos
Reply
3 Replies

889 Views
grigoryemelyano
Contributor I

Hi.

Also, are you using the latest SDK ? There was a release made yesterday. 

Yes, I'm using the latest version of SDK. Just in case, I've dowloaded the latest SDK from site and compare with one I have. There is no difference, I get the same error.

Could you please let me know what are you trying to achieve? 

Right now I'm trying to understand how to use this SDK for developing firmware (we are in the processes of developing a replacement for our old device). So I faced with few problems:

  1. It looks like PWR_Interface module is not implemented, but there are references to this module in the SDK examples (cPWR_UsePowerDownMode has to be enabled in order to get compilation error - "PWR_Interface.h is not found"). 
  2. SMAC module has at least one option (gPHY_802_15_4g_d), which is not available and leads to compilation errors.
  3. SMAC module uses high-level functions from SDK framework (MemManager, TimersManager, OSAbstraction and etc), but at the same time it is not possible avoid using low-level functions to control MCU peripherals (I'm talking about using SerialManager instead of fsl_lpuart.c, TimersManager instead of fsl_tpm.c and etc.). In this case, firmware code becomes messy.
0 Kudos
Reply

889 Views
grigoryemelyano
Contributor I

Hi.

Also I found one more problem inside SMAC.c which is included in the latest version of SDK. In case gUseSMACLegacy_c options is enabled, SMACPacketCheck() function inside SMAC.c leads to compilation error. The problem is in this part (highlighted by bold font):

static bool_t SMACPacketCheck

(

pdDataToMacMessage_t* pMsgFromPhy,

smacMultiPanInstances_t instance

)

{

....

#else

     if( (pMsgFromPhy->msgData.dataInd.pPsdu[0] != 0x7E) ||

         (pMsgFromPhy->msgData.dataInd.pPsdu[1] != 0xFF))

        return FALSE;

     if( (pMsgFromPhy->msgData.dataInd.pPsdu[2] != gBroadcastAddress_c)

            && (pMsgFromPhy->msgData.dataInd.pPsdu[2] != u16ShortSrcAddress))

     return FALSE;

#endif

...

}

u16ShortSrcAddress variable is not defined. I found that smacInternalAttrib_t structure has field with the same name. So I guess that this part of code should be fixed in this way:

     if( (pMsgFromPhy->msgData.dataInd.pPsdu[2] != gBroadcastAddress_c)

            && (pMsgFromPhy->msgData.dataInd.pPsdu[2] != maSmacAttributes[mSmacActivePan].u16ShortSrcAddress))

Could you confirm my guess about fix?

Also I'm looking forward to hearing any news about missing files mentioned above.

Best regards,

Grigory

0 Kudos
Reply

889 Views
estephania_mart
NXP TechSupport
NXP TechSupport

Hello, 

Could you please let me know what are you trying to achieve? Is there a specific reason why you would like to add those macro definitions?  I'm asking you this in order to try to guide you correctly. 

Also, are you using the latest SDK ? There was a release made yesterday. 

Best regards, 

Estephania 

0 Kudos
Reply