Channels ▼

Al Williams

Dr. Dobb's Bloggers

eZ430-Chronos and Linux

July 02, 2010

In an earlier blog I wrote about the TI eZ430-Chronos. This is a $50 development kit with a twist. Instead of a generic target board, you get a wristwatch. It's more of a "Casio-style sports watch" than a Rolex, but inside is a fairly powerful MSP430 CPU and I/O including a 3-axis accelerometer, a temperature sensor, a pressure sensor, and a wireless connection back to a PC. You also get a USB programmer, and the USB receiver for the watch. Use coupon code HALFMSPTOOL (don't know when that expires) and the price drops to under $25.

I've had one of these for a bit and finally got around to playing with it. I thought you might be interested in what I found out. TI ships two "evaluation" development tools with the watch -- IAR (limited to 4K) and CCS (limited to 16K). I've used CCS before on different CPUs and I wanted the higher limit, so I installed that in a virtual Windows box (I run Linux and none of these were available for Linux as far as I could tell).

The watch firmware is included as source code, but its too big for the demo version of CCS to compile. To work around this, TI provides some "drivers" as precompiled libraries. That's great, but it looks like they have a version mismatch on the libraries. So if you reflash the watch with the included CCS project it behaves erratically. The worst effect was it wouldn't let me get into the wireless reflash, so I had to open the watch and reflash it while it was connected to the PC.

I tried to resolve the issue for a bit, but decided instead to switch to the OpenChronos firmware. This is essentially the same as the TI code, minus some of the proprietary bits. You can build it with the mspgcc port of gcc. Simple, right?

Not quite. The mspgcc tools haven't been updated lately so there is a fork (mspgcc4) that has more recent tools. Their most recent update only had Window binaries, so I stuck with Windows for now. The compiler did its job on the OpenChronos source. I was even able to make a simple change to the watch firmware.

Of course, if I'm using gcc, why am I running Windows? I got the previous version of gcc (there were binaries for Linux) from the web site. Unfortunately, it did not know about the processor on the watch which is apparently a newer member of the MSP430 family.

Well, I hated to build gcc. I've done that before for other processors and it has always been a pain. But I finally bit the bullet. As it turns out, the MSPGCC4 page has a build script that goes out and downloads what you need and does the build and install very painlessly. Once the build completed, I was in business.

The TI site has both Linux and Windows versions of the "control center" that lets you work with the watch. The Linux version is written in TCL and worked fine to download code to the watch, set the time, and even use the watch as a mouse.

I haven't tried debugging yet, but that looks like another problem. There is a gdb proxy. Maybe I'll get lucky and it will work on 64 bit Linux. Maybe.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.