NXP / GenAVB_TSN

NXP AVB/TSN stack
83 stars 25 forks source link

Integration with MCUXpresso, MCUXpresso VScode extension or other host debug tools #6

Open erlingrj opened 9 months ago

erlingrj commented 9 months ago

Hi.

Thanks for greatly improving the documentation! It was a very pleasant experience to go through the steps to build AVB applications targeting FreeRTOS and iMXRT1170EVK. It would be really great with some advice on how to integrate this into MCUXpresso (or the VScode plugin). Currently, I am dragging and dropping the generated .bin files onto the Mass Storage Device exposed by the companion chip on the EVK. It would be great to have the ability to flash and debug the code, use the managed linker scripts etc.

Alternatively, can you recommend some other host debug tools that enable flashing and stepping through code and interacts with GDB. I have some MCU Link and MCU Link Pro's here.

Thanks for suggestions

rpmsousa commented 9 months ago

Hi,

The MCUXpresso IDE support is currently being worked on and should be available in a future release (tentative date, end Q2/2024). But currently you should already be able to attach to a running target with a debug probe and use the generated .elf image to have symbols/source code available for debugging.

erlingrj commented 9 months ago

@rpmsousa thanks for your feedback. I have another question about the implementation that you might be able to help me with. I am trying to understand your network stack implementation. When searching through the code it seems as if you are implementing your own network stack directly ontop of the ethernet mac drivers (fsl_enet_qos). I see that you have implemented special sockets for avtp, ptp, l2, mrp and other. But there is also a lwip dependency, it provides a BSD Socket implementation. What exactly is the relationship between your network stack and lwip? If I want to open other sockets in my application, what API should I use? In the demo apps I can see that the lwip stack is started. But I cannot find any includes of lwip headers in your network stack implementation. Is there a design document or some sort of documentation of this?

Thank you.

However, there is also a lwip dependency in the SDK. How does these network stacks interact?