Forces of Nature: Video of Destructive Rockslide


Overnight it was raining a lot in the central part of Switzerland. Additionally it is warming up so it adds water with all the snow melting in the higher areas. As a result, a dangerous rock- and mudslide went down today nearby in Moutathal, damaging bridges and power lines. A video records the destructive power of nature:

Continue reading

The Return of the 3D Printed Flying Toaster!


Does everybody still know why in the ‘old’ days there was the need for running a ‘screen saver’ on the computer? With the modern LCD displays they lost their initial purpose.  After “3D Printed Classic Mac Apple Watch Charging Station” I’m doing more ‘good old days’ 3D printing. The ‘elder ones’ might remember the “After Dark” screen saver software for Apple Macintosh and Microsoft Windows machines. Yes, that was 1991! For me most famous and iconic theme were the “Flying Toasters”:

Flying Toasters

Flying Toasters

Now there is a 3D printed version :-)

Flying Toaster SD Card Holder

Flying Toaster SD Card Holder

Continue reading

openHAB RGB LED Light Cube with WS2812B and NXP Kinetis


From my earlier work to use the NXP Kinetis with openHAB (see “Controlling NXP Freedom Board RGB LED with openHAB and Raspberry Pi“) it was only a small step to control a 20x20x20 cm light cube with 256 Adafruit WS2812 NeoPixels:

Kinetis RGB Cube with openHAB

Kinetis RGB Cube with openHAB

Continue reading

First NXP Kinetis SDK Release: SDK V2.0 with Online On-Demand Package Builder


There are plenty of different software packages available for microcontroller these days from all the silicon vendors. Finding a good software package is one challenge, getting what I really need is another one. Freescale is now part of NXP since December 2015, so this is probably the first release of the former Freescale part now as NXP: The NXP Kinetis SDK Version 2.0.

It comes with an interesting distribution way: instead of downloading huge packages with all-and-everything in it, I can build it ‘on demand’ online and get what I need, on demand from a web based front end:

NXP Kinetis Expert with Kinetis SDK

NXP Kinetis Expert with Kinetis SDK

Continue reading

Controlling NXP Freedom Board RGB LED with openHAB and Raspberry Pi


In “Blinky LED with openHAB on Raspberry Pi” I have used openHAB on a Raspberry Pi to control an LED attached to the Pi, and in “xx” I have explored how to connect a NXP Freedom Board over USB CDC to the Raspberry Pi. In this article I’m going to combine both: to control the LED on a NXP Freedom board remotely with openHAB on the Raspberry Pi.

ColorPicker with openHAB and FRDM-KL25Z

ColorPicker with openHAB and FRDM-KL25Z

Continue reading

3D Printed Magical MUFG Capsule to Duplicate NXP Kinetis K20 Boards


Sometimes it is all about doing fun stuff: to carry and store the tinyK20 (NXP/Freescale Kinetis K20) boards needed for next course, I wanted to build something geeky: a MUFG capsule to store and duplicate Kinetis boards :-)

MUFG Capsule with tinyK20

MUFG Capsule with tinyK20

Continue reading

Show Floating Point Variable Bytes in Eclipse CDT


My preferred variable format in Eclipse is hexadecimal (see “Debugging Variables in Hexadecimal with Eclipse“). However, this does not work well with floating point variables:

Floating Point Variables in Eclipse Variables View

Floating Point Variables in Eclipse Variables View

The above view shows all variables having the value 0x0 (zero), but that’s actually not really true.

Continue reading

Debug Multiple Boards with GDB at the Same Time


Many times it is very useful to debug multiple boards at the same time. For example if I’m debugging a communication stack between two boards: that way I can debug the protocol on both sides. Eclipse is a great framework which allows that. This post shows how to debug multiple boards (e.g. the NXP Freedom boards) in parallel from the same Eclipse IDE using GDB and the Segger J-Link:

Two NXP Freedom Boards debugged at the same time

Two NXP Freedom Boards debugged at the same time

Continue reading

Ice Flowers

Image


Waiting in the cold in the early morning can have an aesthetic aspect:

Ice Flowers

Ice Flowers

When ice builds beautiful structures on glass we call it ‘Eis Blume‘ (‘Ice Flowers’). In the past this happened on the windows in unheated buildings. These days it is a rare species with all the heated building. This one is more like snow flakes building up nice structures. With the sun coming up in the background their beauty will be gone very soon….

Happy Icing .-)

Hardware Reset for ARM Cortex-M with Segger J-Link and Kinetis Design Studio


The reset and signal line of a microcontroller is probably the most important signal to a microcontroller. And if things go wrong, then a first thing to check is the reset line. So having control over reset is an important aspect for embedded development. You would think that if you download a program to a microcontroller, the debug probe would put the device into reset at the start with a short pulse like this:

Reset Signal in Logic Analyzer

Reset Signal in Logic Analyzer

Continue reading

3D Printed Classic Mac Apple Watch Charging Station


One of the first machine I used for development many years ago was a Apple Classic Macintosh computer. My days of development with Pascal and Modula-2 are long gone. But with the availability of 3D printers I can print a Classic Mac :-). But now it is not used for development: I use it to charge an Apple Watch:

3D Printed Apple Watch Charging Station

3D Printed Apple Watch Charging Station

Continue reading

McuOnEclipse Release 10-Jan-2016


With the start of the new year 2016 I have published a new McuOnEclipse component release with the following major updates:

  1. Updated Segger SystemView and Real Time Transfer (RTT): added terminal functions and extra interfaces
  2. Improved USB CDC with serial number handing
  3. FreeRTOS TaskList shell command
  4. USB Stack: added MSD Host support for MCF52259, added support for K24FN120 and for the 100 MHz K20 devices
  5. New NEOMatrix component for Adafruit NeoPixel Matrix displays

    256 NeoPixel Matrix with FRDM-KL25Z

    256 NeoPixel Matrix with FRDM-KL25Z

Continue reading

Blaze: Miniature, Powerful, Hackable Display with Touch


I’m not much monitoring what is happening on Kickstarter or Indiegogo, only for time reasons, but maybe I should? For a while I’m looking for the next level for the tinyK20 project: better and more powerful microcontroller with touch display/graphic LCD. And when I see a Freescale/NXP Kinetis microcontroller on a crowd funding platform like this one, I hardly can resist ;-) :

Blaze Board (Source: http://kck.st/1S0HyUp)

Blaze Board (Source: http://kck.st/1S0HyUp)

Continue reading

First 3D Printed tinyK20 Board Enclosure


The tinyK20 boards are now used in several projects. Initially I was considering a commercial USB thumb drive enclosure for it. But this needed some tweaking of the enclosure so at the end it was not ideal. 3D printing is probably that hot topic for 2016. So why 3D printing an enclosure for that board?

tinyK20 3D Printed Enclosure

3D Printed Enclosure for the tinyK20 board

Continue reading

How to Add Bluetooth Low Energy (BLE) Connection to ARM Cortex-M


In many of my embedded projects I’m using successfully the Nordic Semiconductor nRF24L01+ (see “Tutorial: Nordic Semiconductor nRF24L01+ with the Freescale FRDM-K64F Board“) and the HC-06 Bluetooth transceivers (see “Getting Bluetooth Working with JY-MCU BT_BOARD V1.06“) for wireless communication. However, the nRF24L01+ is using a proprietary protocol, and the HC-06 does not work with Apple products (it does very well with Android devices). To close that gap I decided to add Bluetooth Low Energy (BLE, or Bluetooth 4.x). So this post is about how to add Bluetooth Low Energy (BLE) to NXP (formerly Freescale) Kinetis devices:

BLE Enabled Kinetis

BLE Enabled Kinetis

Continue reading

Renaming Eclipse CDT Projects


When I create a project in Eclipse (e.g. in Kinetis Design Studio with the GNU ARM Eclipse plugins), I have to specify the name of the project during creation time:

Project Name in Eclipse

Project Name in Eclipse

But what if I change my mind later on and want to use a different name? How to rename the project?

Continue reading

Fane Alm


This winter in the Alps is very dry and warm. Because there is no snow it is excellent to do some hiking instead. I’m closing the year with the family in the Italian part of the Alps, and we visited today the Fane Alm, a seasonal alpine pasture. The most beautiful small alpine village I ever have seen. It is located at the top end of the valley of Vals, South Tyrol, Italy.

Fane Alm

Fane Alm

Continue reading

USB CDC with the Raspberry Pi


For my home automation project with openHAB I want to attach Freescale (now NXP) FRDM (Freedom) boards so they can take care about the realtime aspects and to act as gateways to my other systems. One way is to use USB CDC (Serial over USB) as communication channel. USB has the advantage that it powers the board, plus I can attach multiple devices: up to four on the Raspberry Pi 2 and even more with using a USB hub. In a standard configuration with a USB WiFi and a USB HID (mouse plus keyboard) dongle I still can attach two Freescale (ahem, NXP) Freedom boards to the Raspberry Pi:

FRDM-K22F and FRDM-K64F attached to Raspberry Pi 2

FRDM-K22F and FRDM-K64F attached to Raspberry Pi 2

Continue reading