LED Clock with Kitchen Hot Pan Protector

When I showed my 60 NeoPixel LED clock prototype to my daughter and her girlfriend, and they both wanted to have one right away :-). Well, that clock was just a proof of concept, with lots of temporary wiring. So I decided this week-end to beautify it and to make it look nice and clean(er). There is nothing like a week-end project with adding a few more LEDs and features :-).

Adafruit Neopixel Clock with 60+24+12 LEDs

Adafruit Neopixel Clock with 60+24+12 LEDs

Continue reading

A Compendium: is this what you are looking for?

When I started this blog back on February 1st 2012 with a ‘hello world‘ post, I did not know where and how this well end up. WordPress.com (the host of this blog) counted 1862 views in that first month. 30 months later (time is flying by!), views they are beyond 100k every month! Thanks to you all for commenting and liking posts, which is very encouraging. And there was one suggesting made recently which I would like to address:

Compendium Page

Compendium Page

Continue reading

Adding the CAM8000-D Camera Module to the RIoT Board

One reason for me to buy the RIoT board was that it has a camera connector. So I had ordered the CAM8000-D module from Farnell (part number 2362812). The Farnell product page was not clear if it comes with the 30pin FPC cable, but luckily, it shipped with it:

Unpacked CAM8000-U Camera and Board

Unpacked CAM8000-U Camera and Board

Continue reading

Flashing a new Android Image to the RIoT Board

I understand the challenges of board vendors: they produce many boards, and typically they have an early/first firmware version on it. And when that board gets shipped to customers, that firmware typically is old and outdated :-(. Same for the RIoT board I have received: I was desperately trying some advanced features, only to realize that the firmware on the board is an older one from this year. So time to update the Android on that board.

Freescale RIoT Board

Freescale RIoT Board

Continue reading

Exclude Source Files from Build in Eclipse

Sometimes I have source files in my project which I do not want to get compiled (or excluded from build). Because as I’m using the ‘managed make’, all source files matching certain extensions (like *.c) are automatically included into the build.

To exclude a file from build, I right-click on it to get to the properties. There I can select a check box to have it excluded from the build:

File Excluded from Build

File Excluded from Build

Continue reading

Preserving Memory Ranges with Eclipse and P&E GDB Server

For my boot loaders I need the functionality that I can keep memory ranges from being erased while downloading the rest of the application. P&E provides a GDB server which interfaces with their probes (P&E Universal Multilinks, Tracelinks, …) and as well with the OpenSDA present on many of the Freescale evaluation boards. In CodeWarrior there is an option for ‘Advanced Programming Options’ which allows to preserve memory of the microcontroller FLASH (see “Programming part of flash“). However, that option or button is not present in the Eclipse version of the P&E GDB server (e.g. in Kinetis Design Studio). So how can I preserve some areas of FLASH in Eclipse with GDB?

Preservation of Non-Volatile Memory in CodeWarrior

Preservation of Non-Volatile Memory in CodeWarrior

Continue reading

Listing Code and Data Size for each Source File with GNU and Eclipse

I have used the ‘classic’ CodeWarrior IDE for years, before I moved over to Eclipse some years ago. And as with any IDE or tool switch, things are different in the ‘new world’. In summary, I don’t want to go back anyway, and Eclipse is my development tool of choice now. But from time to time I get challenged about something like “hey, this was possible in the previous tool, so how can I do the same in Eclipse?”. As a fan of Eclipse, this then gets my attention as I feel that Eclipse can do it, and it can do it better. 😉

So what about this one: In CodeWarrior the project view lists code and data size for each source file:

Code And Data Size in CodeWarrior

Code And Data Size in CodeWarrior

Continue reading

UART printf() for the FRDM-K64F Board and Kinetis Design Studio

I had great plans for this Saturday: to work on really cool project. But as so many times, things turned out to be different. Maybe you have read my recent posts about printf()? A colleague wanted to use that article to the same thing with the Kinetis Design Studio on the FRDM-K64F board. I used the FRDM-KL25Z board, so I expected this to work out of the box for him too. Well, turned out that I was wrong about this, and my Saturday was used for debugging and googling about a printf() problem 😦

While things work as expected for the FRDM-KL25Z (ARM Cortex-M0+) and using the standard GNU GCC ARM Embedded from the launchpad, the application traps on the K64F (ARM Cortex-M4F) in initialise_monitor_handles() with KDS:

Trap in initialize_monitor_handles()

Trap in initialize_monitor_handles()

Continue reading

Switching ARM GNU Tool Chain and Libraries in Kinetis Design Studio

The Freescale Kinetis Design Studio (KDS) V1.0.1 beta is using a different GNU ARM toolchain than the ARM Inc. supported one on launchpad (GCC ARM Embedded). Additionally, KDS is using newlib 1.19 and newlib-nano 1.0, while there just has been a new release of the GCC ARM Embedded a month ago with the 4.8.4 update 2 release in June this year. So how to upgrade KDS to the latest and greatest GCC ARM Embedded?

Continue reading