Recovering bricked LPC55Sxx EVK Boards

While developing applications, it can happen that things go wrong. And in my case I ended up with two LPC55Sxx EVK boards on my desk, which seemed not to be usable any more. The issue: the boards were not accessible with the debug probe, because right after main they muxed the pins in a wrong way :-(.

bricked board with set of debut probes

The standard GDB debug connections (both on-board and off-board) were not able to regain access of the board, because the MCU was running into the fault condition pretty much right out of reset.

Luckily, after a lot of trial-and-error, I have found a way to recover them.

Continue reading

Silicon Shortage and Semihosting with NXP MCUXpresso SDK on FRDM-KE02Z

The silicon shortage is still going on. While the NXP Kinetis KE devices might not be my first choice, they still seem to be available, in at least in lower quantities. This has been recognized by others, as I’m getting more and more questions and requests for the KE and KV family. This is why I un-dusted my old FRDM-KE02Z to be used with the latest MCUXpresso SDK and IDE.

FRDM-KE02Z Board

And in case you want to use that board or device with semihosting, I have you covered.

Continue reading

MCUXpresso IDE 11.5.0

I’m now in the middle of the university fall semester exam season with writing exams and grading student work, and the same time the new semester courses need to be prepared. With the global silicon and board shortage, this will be again a challenge to equip all the labs with the needed infrastructure. The good thing is that there is no shortage on software and tools side of the infrastructure: NXP released last week their new flagship Eclipse based IDE: the MCUXpresso IDE 11.5.0. Time to check it out for the upcoming lectures and classes….

NXP MCUXpresso IDE Version 11.5.0

Spoiler Alert: It has a new view for FreeRTOS lovers, plus new features for energy/power measurements!

Continue reading

DIY Split-Flap Display

Split-flap displays are electromechanical display devices, which were common in airports or railway stations a few years ago.Unfortunately, most of them are gone and replaced by LED displays. Why not create a DIY version of it?

2×10 Split-Flap Display
Continue reading

LoRaWAN with NXP LPC55S16 and ARM Cortex-M33

LoRaWAN is getting more an more popular, both for terrestrial and increasingly with low-orbit satellite systems. The ‘Long Range’ in ‘LoRa’ makes it an ideal solution for low-power and low data rate applications. For a university research project we selected the Semtech SX1261/62 transceiver together with the NXP LPC55S16 mikrocontroller. Because the board used for that project is not available for the public (yet), I share here how you can run the LoRaWAN stack with the NXP LPC55S16-EVK.

LoRaWAN with Semtech SX126x and NXP LPC55S16
Continue reading

Doubling the performance of NXP LPC845 with improved Flash Access Time

For more than two years I’m using the NXP LPC845 in my university courses. Beside of that it is used in many projects. First, because the LPC845-BRK board is small, breadboard friendly and inexpensive. Second, for many small projects that Cortex-M0+ provides just the right amount of processing power and memory.

NXP LPC845-BRK Board
NXP LPC845-BRK Board

If you search for ‘LPC845’ on my blog, you will find many articles about it. We are using the LPC845 in a research project, and one developer asked me why the LPC845 seems to run slower than expected. And I was sure that I wrote already an article about this, but to my disappointment: even Google did not find it? So complete this unfortunate gap, here is it: how to optimize the LPC845 and running it at full speed, with the hand-brake released.

Continue reading

Key-Value pairs in FLASH Memory: file-system-less minINI

Many embedded systems application need to store some kind of data in a persistent way: calibration values, settings or log information. For a smaller amount of data, using an external memory or file system is an overkill. In many system I’m using minINI to store key-value pars in in a ‘ini-file’ way, but it requires the use of a file system of some kind. minINI is great and efficient, and makes getting and storing data really easy. But for simple cases, a single FLASH memory page or sector is just all what I need. Instead managing that page directly, why not using minINI without a file system?

Continue reading

Adding RGBW Wings and Enclosure to a Debug Probe

I’m using debug probes on a daily base. They have to be functional, and I value functionality over aesthetics. For cost reasons many debug probe vendors either only provide a bare PCB without enclosure, or the enclosure is made of simple plastic enclosure.

That’s OK. But when I received my NXP MCU-Link Pro debug probe, I wanted to add an enclosure for it: Not only to add protection,but to have it look cool too :-).

MCU-Link Pro Enclosure
Continue reading

New “MCU-Link Pro”: Debug Probe with Energy Measurement

After the release of the NXP MCU-Link debug probe, there have been hints in the Eclipse based MCUXpresso IDE that there must be another one coming. And indeed: another and more powerful debug probe is now available: the MCU-Link Pro. It is not only a debug probe but a power/energy measurement tool too, including an extra LPC804 mikrocontroller which can be used for all kind of things, like automation or scripting.

NXP MCU-Link Pro
Continue reading

Tutorial: GNU gcov Coverage with the NXP i.MX RT1064

This tutorial shows how to use and collect coverage data using the GNU gcov tool. As board and hardaware I’m using the NXP i.MX RT1064 EVK:

MIMXRT1064-EVK running ThreadX
MIMXRT1064-EVK

While this tutorial uses this specific board, things are pretty generic and should be applicable for any other board or MCU.

Continue reading