Bricking and Recovering OpenSDA Boards in Windows 8 and 10

Getting a board from a distributor like Farnell/Element14/Mouser (add your own distributor) means that chances are high that the default firmware on it is written years from now because the inventory has not been updated, or because boards are still produced with that original firmware (because of testing?). So what happens if I use board with a firmware developed pre-Windows 8/10 area?

Freshly Unboxed NXP FRDM-KL25Z Board

Freshly Unboxed NXP FRDM-KL25Z Board

It might work, but chances are high that the bootloader and firmware is not ready for the ‘modern age’, and as a result the board might be bricked. If you still have a Windows 7 machine around (I do!), you are lucky. If not, then you need to read this article….

Continue reading

impulse: Segger SystemView in Eclipse

I’m using the Segger SystemView in many of my applications to get insights of the running application. A reader of my blog pointed me to the company ‘toem’ (http://toem.de/) based in Germany which offers powerful data viewer (‘impulse’) for Eclipse. I have tried this out, and it is really an amazing piece of technology with lots of potential. It allows me to view Segger SystemView data 🙂

Segger SystemView Data in Eclipse

Segger SystemView Data in Eclipse

Continue reading

NXP Pins Tool: Understanding Data for Offline Usage

I’m using the NXP Pins tool (see “Tutorial: Muxing with the New NXP Pins Tool“) now in several projects, and I think it is time to share a few tips and tricks.

Pins Tool

Pins Tool

So join me on a journey through the internals of the NXP Pins tool :-).

Continue reading

Salmon on Cedar Planks

A smoker is great for big pieces of pork, beef or chicken. Putting fish directly on the grid is usually not an option because the fish can fall apart or is difficult to remove. Instead wrapping it into aluminium foil or putting it on a metal or stone plate, I prefer to put fish on a cedar plank. In my opinion the best way to BBQ fish:

Salmon on Cedar Plank

Salmon on Cedar Plank

Continue reading

NXP Pins Tool: Clock Gates and Controlling the Bits

With the NXP Pins Tool (see “Tutorial: Muxing with the New NXP Pins Tool“) I can configure and mux (multiplex) the microcontroller pins. What is really powerful and what might not be so obvious at the first sight is that it gives me deep control over every register bit and setting. For example I have below the PTB1 (Port B, pin 1) muxed as GPIO (General Purpose I/O):

PTB1 Muxed with Pins Tool

PTB1 Muxed with Pins Tool

But it only generates this:

void BOARD_InitPins(void) {
  CLOCK_EnableClock(kCLOCK_PortB);                           /* Port B Clock Gate Control: Clock enabled */

  PORT_SetPinMux(PORTB, PIN1_IDX, kPORT_MuxAsGpio);          /* PORTB1 (pin 54) is configured as PTB1 */
}

So what about all the other bits and pieces? Continue reading

BBQ with Baby Back Ribs and Pulled Pork

Having a total of 14 guests in the evening, why not preparing a great BBQ? A smoker can take a lot of meat, so for this I decided to smoke two kinds of Baby Back Ribs plus one pork shoulder for pulled pork. Everyone is helping with preparing desert plus the salad dishes:

Salad bar

Salad bar

My job was to get up early to deal with the fire and meat 🙂

Continue reading

Board Bring-Up Tips, GDB Logs and Traces in Eclipse

Sometimes things don’t go well, especially with bringing up a new board design. I always sweat blood that first minute when I try to connect with the debugger to a new design: Will it work? After the optical inspection, performing electrical tests (no shortcuts? voltage levels ok?) the inflection point is when I’m connecting the first time with the debugger to the new board: either it will properly connect and program the device (hurrah!) or it will fail and potentially difficult hours of investigations have to follow.

First PCB under Debug

First PCB under Debug

Continue reading

How to Recover the OpenSDA V2.x Bootloader

More and more of my students are using Microsoft Windows 10 machines, and my computer has been upgraded to Windows 10 a couple of week ago too. From my work and experience, a new operating system causes always some challenges, and Windows 10 is no difference. And no, this is not about Microsoft vs. Apple vs. Linux, this post is about addressing a potential and painful problem which I have observed with Windows 10 machines, and to my understanding it could happen with any other operating system too. The problem is that somehow on several student machines the bootloader and OpenSDA application on their FRDM boards did not work any more.

FRDM-K64F (top) programming the OpenSDA Bootloader (bottom)

FRDM-K64F (top) programming the OpenSDA Bootloader (bottom)

Continue reading

Switching the Microcontroller Package, Device and Family

One of the major benefits of Processor Expert is that I can easily switch the device or processor used in a project. For example I can do my concept with a larger device with more FLASH and RAM, and then at the end easily switch to a smaller or even completely different device very quickly. For example I have a project working with the 64KByte FLASH version of the KE02Z (KE02Z68VLH2):

MKE02Z64VLH2

MKE02Z64VLH2

Continue reading