How to get Data off an Embedded System: FatFS with USB MSD Host and FreeRTOS Direct Task Notification

This is a follow-up article of my earlier project presented in “FatFS, MinIni, Shell and FreeRTOS for the NXP K22FN512“. I wanted to extend it with a USB MSD (memory stick) device: The USB storage device gets automatically mounted, and depending on a configuration (.ini) file on the memory device I can perform various actions, for example automatically copy data from the SD card to the USB device. For example the system logs data, and to get the data I insert the memory stick, it copies the data on it and automatically unmounts it, and I can remove the memory stick.

FRDM-K22F USB Host Mode with Memory Sticks

FRDM-K22F USB Host Mode with Memory Sticks

Continue reading

Behind the Canvas: Making of “60 Billion Lights”

As promised I’m going to share more details about the “60 Billion Lights” project. It is about a project to build a piece of electronics behind a 100×50 cm canvas to show animations or to display information like temperature, humidity, weather, time or just any arbitrary text.

Make it

Writing text

Continue reading

McuLog: Logging Framework for small Embedded Microcontroller Systems

An essential tool especially developing larger applications or distributed firmware is to use logging. This article presents an open source logging framework I’m using. It is small and easy to use and can log to a console, to a file on the host or even to a file on an embedded file system as FatFS.

Log Output

Log Output

Continue reading

DIY ‘Meta Clock’ with 24 Analog Clocks

Human since 1982 claims

“Human since 1982 have the copyright to works displaying digital time using a grid arrangement of analog clocks…”

I’m not a lawyer, but without obligations (imho) I have removed the content.

You can read more of the details here: Copyright Law for Makers and Educators

Thanks for understanding,

Erich

Driver for VL53L0X Time-Of-Flight (ToF) Sensor and NXP K20DX128

I’m using the VL6180X ToF (Time-of-Flight) sensors successfully in different projects. The VL6180X is great, but only can measure distances up to 20 cm and in ‘extended mode’ up to 60 cm. For a project I need to go beyond that, so the logical choice is the VL53L0X which measures between 30 cm and 100 cm or up to 200 cm. For this project I’m using the VL53L0X breakout board from Adafruit, but similar products are available e.g. from Pololu.

NXP K20dx128 with adafruit vl53l0x tof sensor

NXP K20dx128 with Adafruit VL53LOx tof sensor

Continue reading

McuOnEclipse Components: 09-July-2017 Release

I’m pleased to announce that a new release of the McuOnEclipse components is available in SourceForge, with the following major changes and updates:

  • Complete refactoring for 1-Wire stack and DS18B20 temperature sensor components
  • Added HID Joystick device class to the FSL_USB_Stack
  • New SDK_Timer component to work with Kinetis SDK
  • New ST756P LCD driver component
  • New TSL2561 digitial temperature sensor driver
  • Added ReadByte() and WriteByte() GenericI2C functions
  • Added 64bit mapping functions to Utility
  • added configUSE_NEWLIB_REENTRANT and newlib reentrancy support to FreeRTOS
  • Pull resistor support for SDK_BitIO
  • Many smaller bug fixes and enhancements
SourceForge

SourceForge

Continue reading

Making-Of Sea Shell Sand Clock

The year is coming to an end, the Holiday season is approaching. In case you are looking for a nice present: I have completed my version of a sand clock: a clock writing the time into sand:

Sandclock

Sandclock

If you are interested to build your own version, I have documented the different steps with tips and tricks…

Continue reading

McuOnEclipse Components: 30-Oct-2016 Release

A new McuOnEclipse components release was long overdue, so I’m pleased to announce that a new drop is available with the following major changes:

  • Segger SystemView library with kernel time reporting
  • GenericTimeDate supports different hardware RTC devices
  • Utility with little endian packet handling functions
  • Shell Standard I/O handlers for USB CDC, Segger RTT and Bluetooth
  • FreeRTOS and stack size reporting
  • printf() support in Shell component
  • Various small bug fixes and improvements
SourceForge

SourceForge

Continue reading

McuOnEclipse Components: 31-July-2016 Release

Time for a new major update of the McuOnEclipse components, with the fillowing main features and changes:

  • FatFS component updated to R0.12 with patch 3 and exFAT support
  • Extended support for Cortex-M7
  • Extended support for Kinetis SDK V2.0
  • USB component support for Kinetis SDK V1.3
  • Improved FreeRTOS for NXP FreeRTOS TAD plugin
  • Added C++ wrappers to multiple components
  • Many smaller fixes and improvements

    SourceForge

    SourceForge

Continue reading

FatFS with Adafruit MicroSD Breakout Board and NXP FRDM-KL25Z

Breakout boards are great: they allow me to explore functions quickly, without to build my custom board: all what I need is some wires and ideally a bread board.

Adadfruit MicroSD Card Breakout Board

Adadfruit MicroSD Card Breakout Board

Continue reading