Connecting MIMXRT1170 EVAL board running AVB demo app. Port 0: resetting upon link not ready.

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

Connecting MIMXRT1170 EVAL board running AVB demo app. Port 0: resetting upon link not ready.

7,097 Views
usala
Contributor III

I connected MIMXRT1170 EVAL board running AVB demo app (Listener only) onto a AVTP TSCF, AFF network I am trying to use the AVB demo as prove of concept. I have an sniffer connected and I see that the AVB demo app uses AVTP CRF and I get  this error message at the EVAL board's console running the AVB app.

INFO 461.345043248 fgptp md_sync_rcv_sm : Port 0: resetting upon link not ready (state DISCARD - 1 1 0)

I have attached the a large screen capture of the errors.  I made some changes in the code at aar_crf_stream_t g_crf_streams[] in avb_stream_config.c for stream_id and destination_mac.

I tried changing the subtype from CRF to TSCF and all I get is PTP messages.  Any ideas of what's going on?

Best regards,

Ulises

0 Kudos
17 Replies

7,047 Views
usala
Contributor III

Gustavo,

Is the talker_id the same as stream_id?  Stream ID is the term used in the automotive AVB network and there is no reference to talker ID.

Best regards,

Ulises

0 Kudos

7,007 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ulises,

The regular scope of support for the AVB stack would be the use cases covered in the documentation, but the R&D kindly provided these insights which I hope will be of help.

“From the log gPTP is not working. That should be the first problem to address. This can come from wrong network configuration: the mac address for the board needs to be unicast and unique on the network. Independently from AVTP, gPTP should always be running and synchronized.

If you're running gPTP in automotive profile in the network (static gPTP configuration as specified in AVnu AutoCDSFunctionalSpec-1_4 and not the standard profile), you would need to set the default config for gPTP to automotive with the right parameters gm_id, initial_neighborPropDelay ...

As for AVTP, it's not clear if you're using AVDECC or not to connect streams or just a static AVTP stream creation on talker side... As you already tested, the back-to-back mode between the two i.MX RT boards is using AVDECC fast connect mode with the right talker ID to connect the listener to talker. In addition, both boards are using AVDECC entities advertising the same stream formats (AAF 2ch 24/32 bits 48KHz) for input and output.

Using a different talker with a different audio format (AAF 5 ch) would need to have a different listener AVDECC entity advertising the same new format as the talker. To try and workaround this format mismatch, you can hack the AVDECC event GENAVB_MSG_MEDIA_STACK_CONNECT on application level for the listener, so that you override the format received from the AVDECC stack with the right stream format parameters as the talker (sample rate. channel number ...) to create the listener AVTP stream.

If you're not using AVDECC, you would need to create the listener stream manually with the right format and do the MSRP listener registration in application level (same as the CRF stream static creation) so that the stack can start receiving the packets.

Regarding rendering the audio packets using the in-board audio jack, the IMXRT1170 EVK is using an WM8960 stereo (2ch) codec with support for multiple sample rates, so rendering the 5 channels audio packets would probably need some software processing (reducing channels number) after the AVB stack receive and before handing the audio buffers to the codec.”

If you need further support for your AVB implementation, I would suggest that you contact NXP Professional Engineering Services (more information on the link below).

https://www.nxp.com/support/support/nxp-engineering-services/professional-engineering-services:PROFE...

Regards,
Gustavo

7,001 Views
usala
Contributor III

Gustavo,

You have always come through for me and I truly appreciate the extra effort.  Thank you.  The suggestions made by NXP R&D will definitely help.  As you probably know by  now I am new at AVB networking and need all the help I can get.  We really want to use NXP's AVB stack and I have been tasked to get it to work in automotive AVB networks.  Your suggestions will definitely get a step closer to reaching that goal.

Best regards,

Ulises

6,360 Views
usala
Contributor III

Gustavo,

When in listener mode I am having clock domain validity problems and I believe that because of that I am also getting this error:

MSRP_ATTR_TYPE_LISTENER MRP_ATTR_EVT_MT MSRP_LISTENER_DECLARATION_TYPE_ASKING_FAILED

When clock domain validity is FALSE the the main code never gets executed.  If I change the mclock_mode from 1 to 0 making it a talker then the validity becomes TRUE and it executes the main loop code but now I have 2 talkers and the error is NOT AVB CAPABLE.  (see attached shell log).

Any suggestions?

Best regards,

Ulises

0 Kudos

6,342 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello @usala !

I have no experience with this error. But I would suggest that you create a new thread so that someone in the Community may help. I see a thread (below) you created that seems to relate to this issue, if that is the case please provide any further information there and you should receive an answer from someone more knowledgeable in this regard.

https://community.nxp.com/t5/i-MX-Processors/MSRP-LISTENER-DECLARATION-TYPE-ASKING-FAILED/m-p/140983...

Regards,
Gustavo

0 Kudos

6,340 Views
usala
Contributor III

Gustavo,

Thanks for your quick response.  I did opened the other thread and I haven't heard anything from others I contacted you because you are highly responsive and I thank you for that.

Best regards,

Ulises

0 Kudos

6,848 Views
usala
Contributor III

Gustavo,

I have a separate topic opened for more that 3 weeks and I am not getting the response I need from NXP.  Can you take a look or get someone to look at it.

https://community.nxp.com/t5/i-MX-Processors/Debugging-MIMXRT1176-FreeRTOS-Hello-World-ERROR-Could-n...

Best regards,

Ulises

0 Kudos

6,837 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ulises,

I see that there is someone already working on that thread so I would recommend posting a new comment asking for an update. My apologies for the delay in obtaining a reply.

However, from what I understand the issue you mentioned (debugging of dm4 demos not being possible) would also require updating the JLink version to 7.51B & above. I see that you are using JLINK 7.50 so I would recommend updating it from Segger’s website to see if that fixes this problem.

I hope that this information helps!

Regards,
Gustavo

0 Kudos

6,816 Views
usala
Contributor III

Gustavo,

Thanks for your quick response.  I updated the J-Link firmware to version 7.58e (the latest from SEGGER) and I am still experiencing the same cannot connect error.

I have twice let tech support b36402 know about needing a response on this issue for 3 weeks without a response.

Best regards,

Ulises

0 Kudos

6,790 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ulises,

There is also the following document, which seems to be an answer to the troubles debugging for the cm4 on the i.MXRT1170, as there are also some configurations required, not only updating the JLINK version.

https://community.nxp.com/t5/i-MX-RT-Knowledge-Base/How-to-use-JLINK-to-debug-RT1170-dual-core/ta-p/...

My apologies for the trouble obtaining the pertinent follow up. If this document does not solve this issue, one alternative would be opening a new thread on the i.MXRT Community space.

Regards,
Gustavo

0 Kudos

6,778 Views
usala
Contributor III

Gustavo,

I tried the steps described in the link you provided using dual core Hello World demo project and still get the same " Cannot connect to target" error.

0 Kudos

6,682 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ulises,

My apologies for all the trouble solving this problem.

Given that there has not been an update on the original thread I would recommend creating a new thread on the i.MXRT section of the community and adding the additional information you have gathered, so that you may get proper follow up in this matter.

Regards,
Gustavo

0 Kudos

7,094 Views
usala
Contributor III

This may be the issue but how do I resolve it?

INFO 460.199261696 srp msrp_vector_add_event : port(0) stream_id(91e0f000fe810001) MSRP_ATTR_TYPE_LISTENER MRP_ATTR_EVT_JOINMT MSRP_LISTENER_DECLARATION_TYPE_ASKING_FAILED

Best regards,

Ulises

0 Kudos

7,085 Views
usala
Contributor III

Can someone help me find out why I am getting this error.

MSRP_ATTR_TYPE_LISTENER MRP_ATTR_EVT_JOINMT MSRP_LISTENER_DECLARATION_TYPE_ASKING_FAILED on the AVB Demo app?

Best regards,

Ulises

0 Kudos

7,078 Views
usala
Contributor III

I did a Wireshark (zip) capture of the communication between the AVTP network and the listener MIMXRT1170 eval board along with a capture from the shell screen of the eval board (see attached).

Best regards,

Ulises

0 Kudos

7,062 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Ulises,

I haven’t been able to find more information on this error.

However, would you please provide more information about the network you are connecting the board to and how it is sending the stream to the board?

Have you already tested connecting two i.MXRT1170-EVKs (if you have two boards available)?

Regards,
Gustavo

0 Kudos

7,056 Views
usala
Contributor III

Gustavo,

I have 2 MIMXRT1170 EVAL board running AVB demo app and I build the code and the talker/listener demo works when connected back to back.  But when I connect the listener via a AVB switch and connected to automotive Ethernet AVB network is when I see the error and I Wireshark capture the communication.  So far I notice that the automotive network uses 5 channel and transmits TSCF and AAF messages whereas the MIMXRT1170 EVAL board talker/listener capture I only see CRF messages and no AAF messages.  The sampling rate for the automotive AVB network is 48KHZ and I have no idea what the MIMXRT1170 EVAL board's sampling rate is.  The only change I made to the code was the stream_id to match that of the automotive network.  I also change the MAC  hw_addr and the ip_addr via the shell to match that of the audio amplifier in the automotive network.

Best regards,

Ulises

0 Kudos