JN5168 not receiving 802.15.4 data from coordinator after a Data Request.

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

JN5168 not receiving 802.15.4 data from coordinator after a Data Request.

1,776 Views
hazeman
Contributor II

Hi All,

 

My JN5168 based endpoint is not seeing the data returned from a beaconed coordinator after a Data Request. There is no ACK either.

Looking at the current being drawn by my endpoint it appears to be shutting down its receiver immediately after sending the data request. This fits in with the lack of an ack.

The coordinator is Atmel not Jennic based. bAutoRequest of the Pib is set true.

wireshark.jpg

In the above screenshot of a network capture 1134 causes the coordinator to want to send data to the endpoint. Beacons get bigger as endpoint short address is appended.

1138 is the data request which the coordinator responds to at 1140. Theres no Ack because I think endpoint has shut down its receiver. This seems to be the basic problem.

Any idea what is going on? 

The structure of the code is as HomeSensorEndDevice example from the old Jennic days.

kind regards

Labels (2)
0 Kudos
10 Replies

1,593 Views
hazeman
Contributor II

Hi Mario,

The SDK I’m using is

JN-SW-4163 Revision 1307

And I am compiling under BeyondStudio.

 

I have not based this on a AN number because I don’t see any that feature beaconed coordinator operation. Its actually based on an old Jennic application JN-AP-1050-802-15-4-Home-Sensor-Demo because this did.

 

If you have an example for the JN-5168 I’d like to try it.

kind regards

Liam

0 Kudos

1,593 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Liam,

Is it possible that you can update the SDK version?

IEEE 802.15.4 for JN516x and JN517x | NXP 

You will find the examples that could help you with the application that you want.

Regards,

Mario

0 Kudos

1,589 Views
hazeman
Contributor II

Hi Mario,

 I have updated to SDK 1416 and based my code on JN-AN-1080. I had to modify it to send a packet (sendNodeReq) to the coord to force it to start the Data Request transaction. Ultimately I'd expect vProcessIncomingMcps to see some data. It does not and wireshark shows no ack to the Data response from the coord.

I've attached my modification of the home demo source. I should stress that this does not work with the HomeDemoCoord because that does not handle Data Requests. It designed to work with another coordinator which we do not have the source code to. But in wireshark I see nothing wrong with its responses.

kind regards

Liam

0 Kudos

1,593 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Liam,

I want to confirm the issue that you are facing. Are you trying to request information from the coordinator? are you using a SED?

Is it possible that you could provide the sniffer log?

Regards,

Mario

0 Kudos

1,589 Views
hazeman
Contributor II

Hi Mario,

 I am trying to request information from a coordinator.

 The device trying to get that information is a SED (Sleeping End Device) in the sense that the receiver is shut down between beacons. I have checked this by observing the current drawn using an oscilloscope.

 Sniffer log attached. You can see that there is no ACK to the reply from the coordinator reply to a Data Request.

kind regards

Liam

0 Kudos

1,593 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Liam,

I have been checking your c file and your sniffer log. I need more information about what are you trying to do.

The file that you provide was releases in 2007, however what is your application code?

Are you working with the JN-AN-1180?   What is the final application that you are developing?

I recommend to move on this appication and also I could provide some feedback about what are you trying to do.

Regards,

Mario

0 Kudos

1,593 Views
hazeman
Contributor II

I have done some further tests by modifying the size of the packets transmitted by the Atmel coordinator.

I've found that its only broadcast DATA packets with a payload length of <= 8 bytes that are lost. If its bigger than this they are received just fine.

However broadcast packets with payloads less than 8 bytes from coordinators based on a different chipset are received fine.

So it still seems like a subtle incompatbility between Jennics and Atmels.

0 Kudos

1,593 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Liam,

Please look at the next function, the example is looking for a specific length and looking for payload from the coordinator, DEMO_BEACON_IDENTIFIER 0xb5

PRIVATE void vProcessRxBeacon(MAC_MlmeDcfmInd_s *psMlmeInd)
{
    uint8 *pu8Payload;
    uint8 u8RxVal;
    uint8 u8Bsn;

    /* There has been a beacon notify, so get configuration from beacon
       payload and re-synchronise timing */
    if ((psMlmeInd->uParam.sIndBeacon.u8SDUlength != 8)
        || (psMlmeInd->uParam.sIndBeacon.u8SDU[0] != DEMO_BEACON_IDENTIFIER))
    {
        /* Not the payload we were looking for */
        return;
    }

Regards,

Mario

0 Kudos

1,593 Views
hazeman
Contributor II

Hi Mario,

 As an experiment I looked into bypassing the MAC and implementing the Data Request process myself.

 I enabled promiscous mode using the following code

vResetMac();
 MAC_vPibSetShortAddr(s_pvMac, 1 );

MAC_vPibSetPanId(s_pvMac, 0x889);
 MAC_vPibSetRxOnWhenIdle(s_pvMac, TRUE, FALSE);
 s_psMacPib->u16CoordShortAddr = 0;
 MAC_vPibSetPromiscuousMode(s_pvMac, TRUE, FALSE);

 DisplayPib( s_psMacPib );
 sDemoData.sSystem.eState = E_STATE_RUNNING;


while (1)
 {
/* Run main loop. This processes interrupts util the 'reset' key
 combination is pressed */
 vProcessInterrupts();
 }


The MLCS handler shows all the beacons from the coordinator which is based on an Atmel controller. It does not see any broadcast packets even though Wireshark is showing them as sent.

If I use the above code to connect to a JN5168 based beaconed coordinator I can see the beacons AND the broadcast packets.

So it seems to me that there is an incompability between the JN5168 and the Atmel device but only on broadcast packets.

Does this sound possible to you Mario? Its absolutely critical that I can receive broadcast packets.

kind regards

Liam

0 Kudos

1,589 Views
mario_castaneda
NXP TechSupport
NXP TechSupport

Hi Liam,

I hope you are doing great.

Could you please confirm the AN and the SDK that you are working on? What is the version?

Regards,

Mario

0 Kudos