Thursday, June 19, 2014

TI Tiva-C Connected LaunchPad

Allow me to introduce the shiny new Texas Instruments (TI) Tiva-C Connected LaunchPad!


Lots of pins, two 40-pin BoosterPack headers, two buttons, four LEDs, a USB host/slave port and an Ethernet port! All for $20 with free shipping.

That last bit is why I bought one the moment I read about it. Then I started hoping that Energia supported it. Luckily for me, Energia seems to have started working with TI directly and already had support for this board. Energia is even linked on TI's product page and mentioned in the user manual / datasheet.

If you aren't familiar with Energia, it's a port of the Arduino IDE to work with TI LaunchPads. It supports most of the LaunchPads, and more are being added fairly regularly. Energia also has a decent pile of libraries for the various LaunchPads, including the basic i2c, SPI, and so on, as well as Ethernet and WiFi. This makes getting your LaunchPad connected to the outside world just as easy as with an Arduino.

That double row of 0.1" spaced holes along the bottom of the board are a complete breakout of all the pins. The manual / datasheet gives header part numbers you can buy from your favorite parts house and instructions to install them. Once you do, you can plug the entire board into the middle of a solderless breadboard. It's a fairly interesting feature, and one that I hadn't seen before.

The most attractive part of this board to me is the cost. At $20 it costs less than an Arduino ($25) or an Ethernet Shield ($31 for a genuine Arduino), let alone both. It even comes with a USB cable for programming it as well as an extendable/retractable Ethernet cable. To any annoyed Arduino fans out there, know that I too am an Arduino fan and use them often.

On the bottom of the Tiva-C Connected LaunchPad (that's enough of the official name, I'm going to call it the TM4C1294 LaunchPad from here on out; the core chip is a TM4C1294) we find female headers as well as pin designations:


The white stickers have your board's serial number and MAC (media access control) number, though you can set the MAC in software to be anything you'd like.

Beyond Ethernet, there are plenty more communication methods and channels at the TM4C1294's disposal.
  • 7 TTL Serial ports.
  • 3 I2C ports.
  • 6 SPI ports.
  • USB Host / Device port.
  • At least two CAN bus ports.
Is that enough for you?

Before you start worrying about having enough RAM for all this, let me assure you: You do. You get 256KB (that's kilobytes, no funny business with kilobits) of RAM, 6KB of EEPROM storage arranged in 32bit cells, and a full megabyte of flash storage for programs. Oh, and don't forget the 120MHz ARM Cortex A4 CPU with hardware floating point abilities.

For input / output you get 20 analog inputs spread between two 2 million samples per second 12bit ADCs, tons (>70) digital inputs/outputs, >20 PWM outputs, two pushbuttons and four LEDs, plus a RESET button and a WakeUp button. For a full rundown on the pins available in Energia, here's a pinmap.

So we've got tons of everything, what do we do with it?


Anything?

Beyond the snarky answer, I have no idea what you want to do with it. Here's something cool though! Texas Instruments bought a chunk of Exosite.com for people to use with LaunchPads, or any other device.

Exosite is a cloud storage and delivery platform, among other things. Using TI's section of it you can create a free account and start uploading your data, whatever it might be. Once it's there you can do all sorts of interesting things with it. I've been having it chart the light level in my living room for the last 18 hours or so. Here's the chart ti.exosite.com generates for me:


It can do far more than just graph data, as well. I'll go into more detail on how to get your TM4C1294 LaunchPad, Arduino Ethernet, Raspberry Pi, desktop computer, or anything else that can speak basic HTTP, connected to TI's slice of Exosite in a future blog post.

Alternatively, you have enough RAM storage and CPU power to use the TM4C1294 as a web host itself. If you're only going to use your data (whatever it might be) on a single network, there is no reason to bring the cloud into things at all. Writing webpages inside programs is time consuming, but certainly doable. The first thing I did was make a webpage hosted on the TM4C1294 that allowed me to turn the onboard LEDs on and off.

In conclusion, if you're looking to dig into the much vaunted Internet of Things, this might be a good place to start.

-Ed Smith

No comments:

Post a Comment