Silabs has released the new EFR32MG12 and EFR32MG13 parts which are supported in Simplicity Studio V4 via the Software Update and new stack installation process, but if I want to compile or debug directly in IAR, how do I get the new parts?
Answer
In the Silabs Portal under Software Releases, find the version of IAR you are using, for example IAR Embedded Workbench for ARM, v7.80.2(sorting Release Name alphabetically under "I" helps).
In the Associated Content, find the IAR-EFR32xG12x-part-support-5.1.0and download the zipfile. This contains support for MG1, MG12 and MG13 parts, in spite of the name. Inside it, there is another zipfile that contains the sub-family you are looking for. In specific, most Mesh users will want the IAR-EFR32-Mighty-5.1.0.zip file. Copy this file into your IAR installation, in the top level of the EWARM version you are using. In this case, C:\Program Files (x86)\IAR Systems\Embedded Workbench 7.5\ -- it goes wherever the armdirectory exists.
Make sure the IAR application is closed. Unzip the file "here". This will place the contents into the correct subdirectories. When you restart, you will be able to specify the part used when you open the eww file by right-clicking on the project name, and picking Options... > General Options > Target > Device and pulling the menu down to SiliconLaboratories EFR32MG12[the rest of your part number here].
When building the sample applications or xNCP images for the EFR32 on the WSTK, UART0 can be routed to the USB mini-B connector (located between the Ethernet port and the battery socket) or the 20 pin expansion header on the opposite end of the board. By default the board controller will pick which ever interface is enabled first. This can be problematic when trying to use the expansion header while powering the WSTK via a PC or certain smart charger which energize the D+/D- lines.
You can force the WSTK to route UART0 serial through the expansion header by making PA5 and output and setting the value high. As a shortcut, this can be done with a define statement in any of you files, like your board header:
#define ENABLE_EXP_UART
This define will call a function halEnableVCOM(), which will enable this port for you. Saving you the need to explicitly enable PA5 as an output and set it high.
Zigbee & Thread Knowledge Base
How do I bring new Silabs EFR32MGxx parts into Studio/IAR?
Question
Silabs has released the new EFR32MG12 and EFR32MG13 parts which are supported in Simplicity Studio V4 via the Software Update and new stack installation process, but if I want to compile or debug directly in IAR, how do I get the new parts?
Answer
In the Silabs Portal under Software Releases, find the version of IAR you are using, for example IAR Embedded Workbench for ARM, v7.80.2 (sorting Release Name alphabetically under "I" helps).
In the Associated Content, find the IAR-EFR32xG12x-part-support-5.1.0 and download the zipfile. This contains support for MG1, MG12 and MG13 parts, in spite of the name. Inside it, there is another zipfile that contains the sub-family you are looking for. In specific, most Mesh users will want the IAR-EFR32-Mighty-5.1.0.zip file. Copy this file into your IAR installation, in the top level of the EWARM version you are using. In this case, C:\Program Files (x86)\IAR Systems\Embedded Workbench 7.5\ -- it goes wherever the arm directory exists.
Make sure the IAR application is closed. Unzip the file "here". This will place the contents into the correct subdirectories. When you restart, you will be able to specify the part used when you open the eww file by right-clicking on the project name, and picking Options... > General Options > Target > Device and pulling the menu down to SiliconLaboratories EFR32MG12[the rest of your part number here].
Now you should be able to build and debug in IAR.
Forcing EFR32 serial communications through WSTK expansion header