Preparing for Austin/TX – with no Rudy’s Sauce


YES! I’m going to attend the Freescale Technology Forum conference (http://www.freescale.com/ftf) in Austin, Texas Jun 22-25 this year. Right on time, as I have run out of Rudy’s BBQ sauce (see “Smoking BBQ Baby Back Ribs – Swiss Style“): I will need to travel light so I have enough space and weight room for bringing back BBQ sauce :-). But ‘no sauce’ does not mean ‘no BBQ‘!!!!

Smoking BBQ

Smoking BBQ

Continue reading

Code Coverage with gcov, launchpad tools and Eclipse Kinetis Design Studio V3.0.0


What makes Eclipse great: using open source tools there are a lot of tools and techniques available which usually are only provided for desktop development.

A while back I described how to do code coverage with Eclipse Kepler and the GNU ARM Embedded (launchpad) tools (see “Code Coverage for Embedded Target with Eclipse, gcc and gcov“). With Kinetis Design Studio out, time to do the same with that Eclipse distribution, especially as Freescale is now using the stock GNU ARM Embedded tools too.

Coverage with multiple Files

Coverage with multiple Files

Continue reading

Problem: undefined reference to ‘__end__’ if using Semihosting


In case you are running into the following GNU linker error about a missing __end__:

'Building target: MyProject.elf'
'Invoking: Cross ARM C++ Linker'
...
toolchain/bin/../lib/gcc/arm-none-eabi/4.8.4/../../../../arm-none-eabi/lib/armv6-m/rdimon-crt0.o: In function `_start':
(.text+0xdc): undefined reference to `__end__'
collect2.exe: error: ld returned 1 exit status
make: *** [MyProject.elf] Error 1
Failed link because missing __end__

Failed link because missing __end__

The GNU linker complains that rdimon-crt0.o needs the symbol __end__.  This symbol marks the end of the user data/RAM section, and is needed by the rdimon library specs which is used with semihosting.

Continue reading

Merging NXP LPCXpresso IDE with Freescale Kinetis Design Studio, Processor Expert and Kinetis SDK


So NXP announced here a $40 Billion Merger with Freescale. Frequent readers of my blog will know that I’m using in my own and university projects many Freescale devices with Eclipse based tools (Eclipse Kepler/Luna, Emprog ThunderBench, Atollic TrueSTUDIO, Freescale CodeWarrior and of Freescale Kinetis Design Studio) in combination with Processor Expert. In a few projects I have used NXP devices with the CodeRed Eclipse base tools too. So I was curious how that merger of the two silicon companies could look like, if you merge the Freescale and NXP Eclipse based tools, and mix it with Processor Expert and the Freescale Kinetis SDK? The result looks like this:

LPCXpresso v7.7.2 with Processor Expert and Kinetis SDK

LPCXpresso v7.7.2 with Processor Expert and Kinetis SDK

Continue reading

Semihosting for Kinetis Design Studio V3.0.0 and GNU ARM Embedded (launchpad)


Freescale has released the v3.0.0 version of the Kinetis Design Studio: this one comes with a great positive change: instead of a custom toolchain, it is coming with the standard GNU ARM Embedded (launchpad) toolchain from ARM. Beside of better code density and less RAM needed, there is one change which affects semihosting. Previously, semihosting was enabled by default in the V2.0.0 libraries. Now semihosting needs to be turned on. This post is how to do this.

Semihosting Console with Output in Eclipse

Semihosting Console with Output in Eclipse

Continue reading

Solving “The connected emulator does not support serial wire output (SWO)” for Segger J-Link


SWO (Serial Wire Output) is a cool feature defined by ARM as part of the CoreSight debug block. However, not every debug connection supports SWO, as it requries extra pins routed from the microcontroller to the debug JTAG/SWD header.

If I’m using the Segger J-Link, and if my hardware does not support SWO, I will get a dialog telling me “The connected emulator does not support serial wire output (SWO).”

The connected emulator does not support serial wire output (SWO)

The connected emulator does not support serial wire output (SWO)

Continue reading

GDB Client and Server: Unlocking GDB


In case you face problems with launching GDB: Then I have a quick solution (well: workaround): kill the GDB server and or client process. The problem can show up in many way, but in general gdb is stuck or does not respond:

GDB stuck?

GDB stuck?

But it could be an error message like this too:

Error in services launch sequence
Starting J-Link GDB Server timed out.

Continue reading

Smoking BBQ Baby Back Ribs – Swiss Style


Tired of my tech articles? Too much geeky Eclipse stuff? Well, then I have something completely different for you: Smoking Baby Back Ribs! No electronics, no microcontroller, no software: only heavy metal, fire wood, meat and beer :-).

❗ WARNING: this post shows raw meat and alcoholic beverages!  You are only allowed to continue reading if you are 18 years or older 😉

BBQ Ribs

BBQ Ribs

Continue reading

Debugging the FRDM-K64F with P&E Multilink


The FRDM-K64F board as other Freescale Freedom board have an onboard debugging device. For everyone who wants to debug the FRDM-K64F board with say a P&E Universal Multilink, here is my setup in case you do not get it working out of the box:

FRDM-K64F with P&E Multilink

FRDM-K64F with P&E Multilink (click to enlarge)

Continue reading

CodeRed Debug Perspective in Kinetis Design Studio


I very much liked the CodeRed Eclipse based IDE (see “Red Suite 5: Eclipse Juno, Processor Expert and unlimited FRDM-KL25Z“). But back in May 2013 CodeRed was acquired by NXP. I have not used much NXP devices for my projects, and as CodeRed was focusing on the NXP parts, CodeRed was not running daily on my desk any more :-(. Well, things might make a full back circle, as NXP announced back March 1st 2015 to acquire Freescale :-). And maybe as a taste how things might come out, the GNU ARM Eclipse plugin release from March 22nd 2015 includes a CodeRed debug view 🙂 🙂

CodeRed Debug Perspective in KDS

CodeRed Debug Perspective in KDS

That debug perspective mimics a CodeRed debug perspective. The advantage of this Eclipse perspective is that it works very well with small screens. This post is about adding this perspective to the recently release Kinetis Design Studio v3.0.0.

Continue reading

Breadcrumbing Mother’s Day: Minimized Debugging View with Eclipse


What I love with Eclipse: it has lots of small and useful features, either built-in or available as plug-in. Recently I started to use a feature which is present in Eclipse for some time: the ability to save screen real estate during debugging with the ‘breadcrumb’ view option:

Expanded Breadcrumb View

Expanded Breadcrumb View

Continue reading

Reduce Eclipse ‘Install New Software’ Installation Time


In Eclipse, the usual way to add new plugins or extend the IDE is using the menu Help > Install New Software. Same thing for the newly released Freescale Kinetis Design Studio V3.0.0: I add the support for new devices in the Freescale Kinetis SDK from the SDK Eclipse update:

Installing Kinetis SDK v1.2 update in Eclipse

Installing Kinetis SDK v1.2 update in Eclipse

One thing I noticed with this (and all others updates I do) is that they take much time to install. That’s expected if the update needs to be downloaded from the web. But I was wondering why it takes so long even if the files are local?

Thanks to a tip (thank you, Marek!), there is a setting to cut the installation time :-). Continue reading

Editing Compiler Include (or other) Settings in Eclipse


So now I have carefully set up my compiler include paths in Eclipse to tell the GNU compiler where to find my header files:

Include Paths

Include Paths

The question is: how can I apply these settings to another project?

Continue reading