FreeRTOS Thread Debugging with Segger GDB in Eclipse

NXP FTF Tech Forum in Austin has been a blast! I’m running another FreeRTOS hands-on session (FTF-DES-N2048) this afternoon which yet again is fully booked. But we will squeeze in as many as possible from the waiting list.

One very exciting thing we are going to use is FreeRTOS thread awareness in Eclipse/Kinetis Design Studio: to see and debug the FreeRTOS threads in Eclipse using the Segger GDB and it will show the list of threads in the Debug view:

FreeRTOS Thread Awareness with Segger GDB

FreeRTOS Thread Awareness with Segger GDB

Continue reading

Mother of Components: Processor Expert with NXP Kinetis SDK V2.0 Projects

Unfortunately, now the NXP Kinetis SDK V2.0 does not include Processor Expert support (see “First NXP Kinetis SDK Release: SDK V2.0 with Online On-Demand Package Builder“). But at the Lucerne University we are using more than 150 different custom Processor Expert components we would like to use with that new SDK. So how to make them working with the Kinetis SDK V2.0? Using a Processor Expert as “the mother of all components”:

NXP Kinetis SDK V2.0 and Processor Expert Side-by-Side under Eclipse

NXP Kinetis SDK V2.0 and Processor Expert Side-by-Side under Eclipse

Continue reading

McuOnEclipse Components: 8-May-2016 Release

Time is passing fast, and many components have been updated to make the compatible with the NXP Kinetis SDK V2.0. As a highlight, besides of FreeRTOS the following components are now usable with the NXP Kinetis SDK:

Components compatible with Kinetis SDK

Components compatible with Kinetis SDK

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

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