Programming S-Records with GNU ARM Eclipse Debugger Plugins


By default I’m programming the Elf/Dwarf (.elf) file present in the GNU ARM Eclipse debug configuration:

Elf File to be Downloaded

Elf File to be Downloaded

But how to program the board with something different from the .elf file?

Continue reading

Changing Heap and Stack Size for NXP Kinetis SDK V2.0 gcc Projects


With Processor Expert projects it is very easy to change the heap and stack size: There is a setting for this in the Cpu component settings, under the ‘Build options’ tab:

Heap and Stack Size with Processor Expert

Heap and Stack Size with Processor Expert

As there is no Processor Expert in the NXP Kinetis SDK V2.0 (see “First NXP Kinetis SDK Release: SDK V2.0 with Online On-Demand Package Builder“), how to do the same in a SDK V2.0 project?

Continue reading

Fix for GDB and “The system tried to join a drive to a directory on a joined drive”


The bad thing with Eclipse and GDB is: if something is failing, then all what I get is a very cryptic error message when I launch the debugger:

The system tried to join a drive to a directory on a joined drive

The system tried to join a drive to a directory on a joined drive

Continue reading

Debugging Multiple NXP Boards with GDB and P&E


In “Debug Multiple Boards with GDB at the Same Time” I have used the Segger J-Link to debug multiple boards, from the same IDE, at the same time. The remaining question in that article was: how to do the same the P&E Multilink/OpenSDA?

Debugging two NXP FRDM-KL27Z Boards with P&E Debugger the same time

Debugging two NXP FRDM-KL27Z Boards with P&E Debugger the same time

Continue reading

Semihosting with Eclipse and the NXP Kinetis SDK V2.0


The world is changing, and the say is “change is good” :-). In the software and API world, change very often means that a change results into something broken. So I had battled with semihosting working on the NXP Kinetis parts, only to find out that it does not work any more with using the latest version 2.0. The semihosting output e.g. with P&E debug connection remains empty:

No Semihosting output

No Semihosting output

So how to fix this?

Continue reading

Solution for OpenOCD “Cannot communicate… target not haltet”


Related to my earlier article about using OpenOCD, I want to share something I have learned (again) with OpenOCD v0.10.0:

I was running often into the following error:

Warn : Cannot communicate... target not halted.
Error: auto_probe failed
Error: Connect failed. Consider setting up a gdb-attach event for the target to prepare target for GDB connect, or use 'gdb_memory_map disable'.
Error: attempted 'gdb' connection rejected
OpenOCD cannot communicate

OpenOCD cannot communicate

Continue reading

FreeRTOS Thread Debugging with Eclipse and OpenOCD


FreeRTOS is probably the number one RTOS used, and Eclipse is likely the most popular IDE I can think of. But debugging FreeRTOS applications with Eclipse and GDB is somewhat limited? What I would like to get at the minimum is this: ability to see all the different threads in the Eclipse debug view like this:

FreeRTOS Threads in Eclipse with OpenOCD

FreeRTOS Threads in Eclipse with OpenOCD

As you might guess from that screenshot: this post is about how to make FreeRTOS tread debugging possible with Eclipse and GDB :-).

Continue reading

Music Player with Eight 3.5″ Diskette Drives


These days, everyone is using USB memory sticks to transfer data from one machine to another. Or we are using CDs or DVD’s to install software. Well, sometimes at least.

Still remember the ‘old’ days where 3.5″ Diskettes were commonly used? Seems like these days are gone. So what to do with that hardware? Play music!

Music Player with Eiight Diskette Drives

Music Player with eight Diskette Drives

Continue reading

McuOnEclipse Components: 3-Apr-2016 Release


It has been already two months after the Feb 2016 release, and so much things are going on, so a new release was overdue. Today I have released a new version of the McuOnEclipse components on SourceForge with the following main changes and features:

  • Kinetis SDK v2 with Processor Expert: Now many components can be used even with the Kinetis SDK v2.0 even with the Kinetis SDK not having Processor Expert included.
  • Updated Segger SystemViewer to v2.32a with post-mortem and static buffer support
  • Updated Segger RTT to v5.10u and fixed an issue with interrupts on Cortex-M4
  • FreeRTOS Thread Awareness with OpenOCD

See readme on SourceForge for the full history.

McuOnEclipse 2016-04-03 Release

McuOnEclipse 2016-04-03 Release

Continue reading

NXP Kinetis Design Studio v3.2.0


For my classes I had so far asked the students to install the Kinetis Design Studio (KDS) v3.0.0 and then apply several updates and upgrades available. NXP has now released the v3.2.0 of their KDS (Kinetis Design Studio):

Kinetis Design Studio v3.2.0

Kinetis Design Studio v3.2.0

The v3.2.0 is including all the 3.x.x updates in a single installation which makes things easier to start with. And it now works for Mac OS X “El Capitan” and the latest GNU ARM Eclipse plugins :-).

Continue reading

Flashing many ARM Boards without a Host PC


So here I have 50 new NXP Kinetis K22 Robot boards (see “Zumo Robot with Magnetic Encoders“), and they all need to be programmed with the first firmware on the bench:

Programming Robot Boards

Programming Robot Boards

The challenge is: how to do this in a fast an efficient way, without the need for an IDE or even host PC machine?

Continue reading