Going to Mars: Building a DIY Eclipse IDE for ARM Embedded Microcontrollers

It has been a while since I published my ‘build my own DIY IDE’ (see “DIY Free Toolchain for Kinetis: Part 1 – GNU ARM Build Tools“). I have used that approaches in my classes successfully. Now a new semester is coming up, so time to update the instructions using the latest Eclipse IDE (Mars) and tools (GCC ARM Embedded (launchpad) with GNU ARM Eclipse).

Eclipse Mars Splash Screen

Eclipse Mars Splash Screen

Continue reading

Better Debugging with Eclipse: Step Into Selection

Some might say that Eclipse is too powerful and has too many features. But to me, the many small and somehow hidden gems can make a big difference in my daily life. One of these features is ‘Step Into Selection’ while debugging.

Very often I have a source line with nested function calls like this:

Nested Functions

Nested Function Calls

Continue reading

Programming Kinetis with CodeWarrior from the DOS Shell

In “CodeWarrior Flash Programming from a DOS Shell” I showed how to program a device from the DOS shell. Because that example was for ColdFire and CodeWarrior for MCU10.2, here is the same for a Kinetis (FRDM-KL25Z) and CodeWarrior for MCU10.6. In my workspace (c:\tmp\wsp_10.6) I have a project folder (FRDM-KL25Z).

I’m using the ‘Flash Programmer’ to sneak the needed commands:

Sneaking Commands from Flasher

Sneaking Commands from Flasher

Continue reading

Lakeside View

Image

It was a very warm (32°C) and beautiful summer Sunday. Spent some time at the ‘house lake’. The picture shows a view over Lake Lauerz to my home village on the other side:

Lake View

Lake View over Lake Lauerz (click to enlarge)

Far to the left the Rigi, with the Rossberg in the middle. On the left of the Rossberg is the rock slide area from 1806 (see “Hacking the Heating System for Cooling – Geothermal Drilling with extra Benefits“). On the right the Spiegelberg and then far to the right part of the Mythen.

Happy Laking 🙂

Updating Segger Tools in Eclipse Kinetis Design Studio

Segger releases often new application and firmware updates. If I install an IDE like the Freescale Kinetis Design Studio, it comes with that firmware version available at that time. How to take advantage of a new Segger release?

Segger Download Page

Segger Download Page

Continue reading

Batch Programming with GDB: Segger J-Link and P&E Multilink

I need to program several boards with a firmware: a number too small for serious batch/factory programming, but a number too high doing this with the debugger. I want this:

  1. Connect the board with the debug probe and power it
  2. Run a script to flash the program and run it
  3. Disconnect and restart step 1.
First set of sensor nodes with two programming adapters

Need to program a few boards…

Continue reading

Tutorial: Using GNU Profiling (gprof) with ARM Cortex-M

I have published a Sneak Preview how GNU gprof profiling looks for an embedded target ARM Cortex-M in an earlier post:

Freescale Kinetis Microcontroller Application Profiling
Freescale Kinetis Microcontroller Application Profiling

This tutorial explains how to profile an embedded application (no RTOS needed) on ARM Cortex-M devices with GNU gprof. Additionally I explain the inner workings to generate the data necessary for gprof.

Continue reading

Sunday and Rain is Coming …

Image

It is Sunday morning, and the sun shines into the valley of Schwyz. It looks like it could be a beautiful Sunday, but the weather forecast predicts clouds and rain for the afternoon. So I make a panorama shot to the west to my home village and the Rigi mountain int the background. Rain is coming soon…

Talkessel Schwyz

Talkessel Steinen (click to enlarge)

Happy Sundaying 🙂