Organizing Projects with Eclipse and Git

There are many ways to organize projects and workflows, and I would say Eclipse is flexible enough for everything. As I have been asked recently how I organize my projects, I’ll share it here.

Eclipse Workspace and Project Location with Git
Continue reading

Upgrade to a new NXP MCUXpresso SDK

As time flies by, my projects are evolving. My lab projects get used over multiple semesters, and the MCUXpresso projects by default use the SDK version used at that time.

This is great because I do want to have control over what SDK is used. But from time to time it makes sense to upgrade a project to a newer version. In this post I’ll show how an existing project can be upgraded to use a new SDK.

Continue reading

Attach with the Debugger to a Running Target

Sometime I’m pretty sure I wrote about a topic I can find or refer to, and I was pretty sure I did write about ‘attaching to a running target’ using MCUXpresso IDE in an article, but Google does not find it? The only rational outcome is that I can blame Google and I have to come up with a potential duplicate ;-).

Anyway: attaching to a running target is such an essential life saver it deserves a dedicated article.

Haltet Target
Continue reading

Play a Sound at the End of the Build with Eclipse

Using Post-Build feature in Eclipse is a great way to augment a build with all kind of actions. What if the build takes a long time and you want to get notified? One way is to play a sound at the end of the build process.

Post-Build Step with a Sound Action
Continue reading

New MCUXpresso IDE v11.3.1

NXP has released an updated version of the Eclipse based MCUXpresso IDE: the V11.3.1 is an update of the v11.3.0 I wrote about it back in January this year.

The release includes new device support, and beside of bug fixes includes a few new things.

Continue reading

Enhancing Binary Utilities in MCUXpresso IDE

The NXP MCUXpresso IDE has a nice context menu for executing different actions on a binary in the Eclipse Project Explorer View:

Binary Utilities

What it makes it even nicer: I can configure and use it to do anything I like. For example I can convert files and copy it in one action.

Continue reading

Using Linux Shell Commands on Windows with MCUXpresso Pre-/Post-Build Steps

In “Touch & Build: Auto-Update of Firmware Date and Time” I’m using commands as ‘touch’ in a pre-build script with the NXP Eclipse based MCUXpresso IDE. That ‘touch’ command is not a Windows shell command, but common on Linux: it updates the time/date of a file.

Build Step Dialog in MCUXpresso IDE

Build Step Dialog in MCUXpresso IDE

As a Windows user you might wonder what is about this ‘Linux compatible shell’?

Continue reading

Touch & Build: Auto-Update of Firmware Date and Time

It is very valuable to have a date and time information in the binary. That way for example using a shell I can check the version of the firmware running on a device, or it can be printed on a console or UART as needed.

Firmware Date and Time

Firmware Date and Time

Continue reading

MetaClockClock Build Instructions

If you are not aware (yet?): it looks like the COVID pandemic caused a global silicon and microcontroller shortage with lead times >50 weeks in some cases. The microcontroller I have used for the MetaClockClock build (see “New MetaClockClock V3 finished with 60 Clocks” and “MetaClockClock V4 for the Year 2021“) is affected by this too, but I had luck and still enough microcontrollers to build a few more boards.

So I still have enough for building a new variant with it (not finished yet). While everyone else is waiting for the devices to arrive, here are more details and instructions for your own build.

MetaClockClock Temperature Display
MetaClockClock Temperature Display
Continue reading

“java.net.SocketException: Connection reset”: Check your Windows Updates!

One of the most frustrating part developing embedded applications is if the debug connection fails somehow: with all the different factors like operating system, virtual machines, USB ports and hubs, debug probe and firmware a ‘connection failed’ is my nightmare. And this is probably the most frustrating parts for my students (and myself!)

I do have a growing list of tips & tricks in “Debugging Failure: Check List and Hints“, so check this list. What I just have added is an entry for

java.net.SocketException: Connection reset

It occurred for a few students when they wanted to use the on-board CMSIS-DAP LinkServer debug connection on the NXP LPC845-BRK.

NXP LPC845-BRK Board

NXP LPC845-BRK Board

Continue reading