Zumo Robot assembled

This week we were busy with building and documenting the first robots based on the Zumo Robot Chassis PCB.

Chassis Base PCB

The chassis is designed to hook up the FRDM-KL25Z board from Freescale. It is using parts from Pololu (chassis, motors, DC-DC converter, line sensor, H-Bridge, encoders):

ZumoBaseBoardOverview

Zumo Base Board Overview

Continue reading

Overview of ARM Microcontrollers and Tools

In this semester course, students (and myself too, of course :-)) are building a Mini Sumo Robot. That robot is using the Freescale FRDM-KL25Z board with an ARM Cortex-M0+ on it. Today I’ll give an introduction to the ARM core to the class, and timing is right: this morning I have found an excellent overview about ARM microcontroller and tools written by Jay Carlson.: Getting Started with ARM Microcontrollers.

Continue reading

Zumo Robot Chassis PCB arrived!

Excellent news: I received this week the 40 INTRO Zumo Robot Base/Chassis PCBs, ready to bring the Zumo Robot project based on the FRDM-KL25Z board from Freescale to the next level:

Intro Zumo PCB TopSide

Intro Zumo PCB TopSide

Continue reading

New CodeWarrior for MCU10.5

On Friday, Freescale has updated CodeWarrior for MCU10 from V10.4 to V10.5, available on http://www.freescale.com/cwmcu10. I have not had much time to use it over the week-end, but here is a list of the things which in my view will make me switch my projects over to 10.5 and use it in my university classes:

  • Smaller: smaller setup and less disk space
  • Faster: faster debugging and flashing
  • Features: Eclipse Juno, detachable editor views, ‘unlimited’ breakpoints, simplified debugger attach/connect/download, and more.

Continue reading

Mini Sumo Robot with Proximity Sensors

The new semester is approaching fast! And I’m under pressure to get everything lined up and ready. This time, I want the students of the INTRO (Infotronic) course at the Lucerne University of Applied Sciences and Arts to have some fun with building and programming Mini-Sumo Robots 🙂

Opponent View

No chance to escape!

Continue reading

Mini Sumo Robot Competition running with FRDM-KL25Z

Rigi Schwinget (Roman Koch) (Source: http://en.wikipedia.org/wiki/File:Turnerundsennenschwinger.jpg)

Rigi Schwinget (Picture: Roman Koch)

Every three years, there is the “Eidgenössisches Schwing- und Älplerfest” in Switzerland. A really big thing for us here. If you are not familiar with what this is, then have a read about the long tradition of  Schwingen in Switzerland.

Wondering what “Schwingen” or wrestling has to do with a technology blog? It is about having fun with robots!

Continue reading

The Freescale OpenSDA Trap: “No Device Available”, or something like that….

Self-Motivation: I write this post in the hope to cut the number of ‘please help me’ emails in my inbox ;-):

If you want to debug one of the Freescale boards with OpenSDA (FRDM-KL25Z, FRDM-K20, FRDM-KL05Z, FRDM-KL46Z48M, FRDM-KL02Z, TWR-KL47Z48M, …), and if you get this dialog …

No Device Available

No Device Available

… then read on.

Continue reading

Optimized FreeRTOS: Stack Check and SysTick for ARM Cortex Cores

The ARM Cortex specification includes the ‘SysTick’ (System Tick Timer): a dedicated system timer which is intended to be used as time base for an RTOS. While technically it would be possible to use any periodic interrupt timer, I’m using as well the SysTick for my FreeRTOS ARM ports. And because Processor Expert includes a nice timer interface, I’m using the TimerUnit_LDD:

TimerUnit LDD for SysTick

TimerUnit LDD for SysTick

While this is great for flexibility, it has its price in efficiency. That TimerUnit_LDD adds overhead. So I want to get rid of the TimerUnit_LDD and use a more efficient way.

Continue reading

USB for the Freescale ARM Kinetis KL46Z and K21D50M

As I was so pleased with the FRDM-KL46Z board, that I have ordered the Tower version of it, the TWR-KL46Z48M:

FRDM-KL46Z with TWR-KL46Z48M

FRDM-KL46Z with TWR-KL46Z48M

What I missed so far was USB support for the KL46Z. So time to have a quick look at board(s) and to add USB support for it.

Continue reading