I'm trying to build and test the SLSTK3401A_dmadrv_example from Application Note 1029, but it says I have no toolchain. I've installed the GNU ARM toolchain 4.9.2015.q3 and the Gecko MCU SDK 184.108.40.206. Is there anything else I need?
As far as I know Silabs re-construct the folder struction for the new SDK, I am not sure if this cuase a problem on your side. Do you mind tell me the detaield stepes you import the example project to the IDE?
I actually wanted to examine an LDMA example for the EFR32FG, but when I select that it seems I cannot even select a preferred SDK. When in the launcher I select the EFR32FG1P133F256GM48 it says 'Preferred SDK: None v0.0.0 Click here to change the preferred SDK.' And when I click 'here' I get:
So I click 'Manage SDKs...' and then I get this:
As you can see, there are no EFR32FGs in this list.
So instead I selected an 'EFM32PG12 Pearl Gecko Starter Kit (SLSTK3402A)' in the launcher under Solutions.
Then I select Documentation and scroll to 'AN1029: Ldma' and click it. In the next popup the 'AN1029: Ldma' is selected and I click the 'Import Project...' button. And in the following popup I choose the first 'SLSTK3401A_dmadrv_example.slsproj' and click OK. The result is a project with no toolchain specified.
When in the launcher I go to 'Update Software' and choose the 'Tools' tab, I see:
But I don't have a clue how to set the toolchain. The funny thing is that the toolchain is not under the menu 'Window' -> 'Preferences':
Do you see the GCC arm toolchain in the folder
If yes do you have problem to add it into the SS through
launcher->settings->Simplicity Studio->Toolchains->add...->browse to the folder include the GCC toolchain->you could see the detected toochian was listed
click ok then you could see the tool chain like below (I have 2 version of GNU ARM toolchain).
Yes, I see the toolchain on disk, though in a slightly different location. My SS4 is not in v4_3 but in plain v4. And the SiliconLabs directory is not in the root of my C: drive, but under C:\Programs . I hate programs that think they can install in my disks root.
When I 'Add...' the toolchain, what directory am I supposed to browse to? It does not automatically appear in 'Detected toolchains'. And whatever directory I seem to browse to, I never see the OK button being enabled.
The instructions given should have specified a generic [SimplicityStudioInstallation] directory or something along those lines. So if Simplicity Studio is installed at:
C:\Program Files (x86)\SiliconLabs\SimplicityStudio\v4\
then browse to this folder:
C:\Program Files (x86)\SiliconLabs\SimplicityStudio\v4\developer\toolchains\gnu_arm\4.9_2015q3 and hit [OK]
The toolchain should then show up as being detected.
Please note after I installed Simplicity Studio to the C:\Program Files (x86) directory, I then have to run Simplicity Studio as administrator (even though I am administrator on my PC). If I don't do that then updates and other attempts to write to the hard drive do not happen (when I look at the folder properties it is marked as "Read Only") This is on Windows 10. Running as administrator I am able to import the Ap note project you mentioned, and compile and debug it.
I did not install SS4 in 'C:\Program Files' or 'C:\Program Files (x86)'. I installed in 'C:\Programs'. And running it as Administartor makes no difference.
So I browse to 'C:\Programs\SiliconLabs\SimplicityStudio\v4\developer\toolchains\gnu_arm\4.9_2015q3' and the OK button stays disabled. When you say 'hit [OK]' it almost sounds like an OK button on your keyboard.
If you launch the Package Manager (Update) and click on the "Tools" tab does the ARM IDE - x.x.x (mine shows 4.0.5) show it is installed? If it is then please try uninstalling it and the gcc toolchain and then restart Simplicity Studio and install both packages again.
Ah, that's it. I did not have 'ARM IDE - 4.0.5' installed.
Now back to my other question. Why can't I choose an SDK for the Flex Gecko (EFR32FG)?
There is some overlap in part support for the different stacks or sdks, but in general the EFR32FGs are supported by the 'Flex SDK'. It can be installed from the Package Manager after signing in to Simplicity Studio and then going to the 'Stacks' tab in the Package Manager. The latest version is "Flex SDK - 220.127.116.11", all of its examples use the gcc toolchain. The Gecko MCU SDK doesn't seem to have any examples for the EFR32FG parts as you highlighted in your earlier post.
That being said, it is possible to edit the dmadrv example for the EFR32FG. The main things:
1. In Project Properties edit the C/C++ Build Board / Part / SDK to match the board and target part being used.
2. Add a symbol for the part being used in the Settings GNU ARM C Compiler and ARM Assember sections, for example EFR32FG1P133F256GM48 with a value of 1.
3. Add the include path for the board being used in the GNU ARM C Compiler Includes, for example:
When I did the above 3 steps the dmadrv example build correctly for me.