Reply
Posts: 2,810
Registered: ‎02-07-2002
Accepted Solution

What toolchain is required for AN1029 DMADRV_example?

Hello,

 

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 5.1.3.0. Is there anything else I need?

 

Maarten

Posts: 1,733
Registered: ‎10-14-2014

Re: What toolchain is required for AN1029 DMADRV_example?

@vanmierlo

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?

http://community.silabs.com/t5/32-bit-MCU/Application-Notes-and-the-v5-0-0-Gecko-SDK/m-p/185660/high...

WeiguoLu
Posts: 2,810
Registered: ‎02-07-2002

Re: What toolchain is required for AN1029 DMADRV_example?

Hello WeiguoLu,

 

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:

 

SiLabs SS4 SDK selection.png

 

So I click 'Manage SDKs...' and then I get this:

 

SiLabs SS4 EFR32FG preferred SDK.png

 

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.

 

SiLabs SS4 No toolchain.png

 

 

When in the launcher I go to 'Update Software' and choose the 'Tools' tab, I see:

 

SiLabs SS4 Toolchains.png

 

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':

 

SiLabs SS4 Preferences Toolchains.png

 

Maarten

Posts: 1,733
Registered: ‎10-14-2014

Re: What toolchain is required for AN1029 DMADRV_example?

Do you see the GCC arm toolchain in the folder

C:\SiliconLabs\SimplicityStudio\v4_3\developer\toolchains\gnu_arm

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).

 

 

WeiguoLu
Posts: 2,810
Registered: ‎02-07-2002

Re: What toolchain is required for AN1029 DMADRV_example?

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.

Posts: 210
Registered: ‎12-05-2016

Re: What toolchain is required for AN1029 DMADRV_example?

Hi @vanmierlo,

 

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.

 

Thank you,

jpitt

 

Posts: 2,810
Registered: ‎02-07-2002

Re: What toolchain is required for AN1029 DMADRV_example?

[ Edited ]

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.

 

SiLabs SS4 Add Toolchains no OK.png

Posts: 210
Registered: ‎12-05-2016

Re: What toolchain is required for AN1029 DMADRV_example?

Hi @vanmierlo,

 

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.

 

Thank you,

jpitt

Posts: 2,810
Registered: ‎02-07-2002

Re: What toolchain is required for AN1029 DMADRV_example?

Ah, that's it. I did not have 'ARM IDE - 4.0.5' installed.

 

Thank you.

Posts: 2,810
Registered: ‎02-07-2002

Re: What toolchain is required for AN1029 DMADRV_example?

Now back to my other question. Why can't I choose an SDK for the Flex Gecko (EFR32FG)?

Posts: 210
Registered: ‎12-05-2016

Re: What toolchain is required for AN1029 DMADRV_example?

Hi  @vanmierlo,

 

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 - 1.1.1.0", 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:

"${StudioSdkPath}/hardware/kit/EFR32FG1_BRD4251B/config"

 

When I did the above 3 steps the dmadrv example build correctly for me.

 

Thank you,

jpitt