2.2 Migrate MHC based TCP/IP Demos to TCP/IP Configurator

Follow the steps to migrate existing TCP/IP application demo to work with TCP/IP Configurator.

  • Open TCP/IP application demo to migrate, in MPLAB X IDE
  • Ensure that the project uses the latest toolchain (viz MPLAB X and XC32) from microchip’s official website.
  • Open .mc3 file (Important files -> demo_name.mc3). Check for the version numbers of MCC Core and Harmony Library. Update them to the latest.
  • Open MCC project graph
  • (Only for SAME70/V71 projects) Clear user setting of GMAC descriptor for MPU in System configurations.
  • Remove all TCP/IP Components in Driver Layer Group box.
    • Note down any user configurations made in the removed components. This is needed when adding these modules using TCP/IP Configurator. Expand all the options available and check in a proper order to avoid losing the information
  • Remove Driver Layer Group box.
  • Remove all TCP/IP Components in Basic Configuration Layer Group box.
    • Note down any user configurations made in the removed components. This is needed when adding these modules using TCP/IP Configurator. Expand all the options available and check in a proper order to avoid losing the information
  • Open group boxes of TCP/IP Stack and remove 'Configurators': for example, ‘TCP/IP Application Layer Configurator’ from TCPIP STACK/APPLICATION LAYER
    • If the group boxes don’t get removed, try removing it for few times again, even after trying many times if it doesn’t go away then ignore and move forward to next step
  • While you’re removing the configurators, if you get a prompt for the removal of other component(s), note down the component(s) name shown in the prompt and click Ok and proceed for now. Don’t forget to add them later using the TCP/IP Configurator plugin before regenerating)
  • Close the MCC and re-open it again (to avoid any configuration errors)
  • After re-opening MCC project graph, you must see that the changes you did before are all visible and every component is in its expected group box, and nothing is unexpected.
    • Verify that component which was not removed even after multiple tries is now REMOVED automatically
  • Open TCP/IP Configurator from plugin drop-down menu
  • In Basic Config layer, add TCP/IP Core and TCP/IP CMD modules. Apply user settings to the modules if any.
  • In Data Link layer, add Network Interface by clicking '+'. Drag and drop MAC and PHY modules. Apply user settings to the modules if any.
  • Make connections between Network Interface, MAC and PHY
    • Ensure a green colored link is established between the intended components
  • Remove and add TCP Component from Transport Layer of the stack.
    • This is to make sure that all dependencies of TCP module is updated.
  • Go to the project graph’s root layer, connect Console dependency on TCP/IP STACK to SYS_CONSOLE module.
  • Save the configurations. (Not required if auto-save is enabled)
  • Go to config summary and check if any concerns are listed there and do take necessary actions if required.
  • Go to overview to view the entire stack at once and to cross check the components present in each layer.
  • Close the TCP/IP Configurator
  • Go to the Resource management window and find the ‘Generate’ button.
  • Press/click the ‘Generate’ button and wait for MCC to complete the regeneration of the files (If in case any merges are required, then please click on the merge symbol (=>) for each files being displayed there. Make sure that the user modified files like main.c, app.c, app.h and application files are not overwritten with changes. Close the merge window by selecting ‘yes’ to the prompt which comes as soon as you close the merge window)
  • Click on ‘Clean and Build’ and wait for it to be completed.
  • Once Build is successful then click on ‘Load’ button to load your application on to your Hardware board (whichever was selected in the device properties)
  • Test your application demo and see if it’s working properly and having an expected behavior, if not then check if any step you’ve missed during migration.
  • Finally, your application demo is migrated successfully.