RoadTest: Tiva DK-TM4C129x Connected Development Kit
Author: mraureliusr
Creation date:
Evaluation Type: Evaluation Boards
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?:
What were the biggest problems encountered?: The biggest problems have been, once again, the software from TI. I had major issues getting everything set up, which I was eventually able to resolve.
Detailed Review:
PRELIMINARY REVIEW
So I haven't had time to really rigorously test this board yet, but I will post my initial problems thus far. As noted in my Hercules TMS57LS04x LaunchPad review, I had problems with the software with that product as well. In that case the problem was much simpler: the compiler uses different libraries, and not all of them come compiled when you install Code Composer Studio. This time around, the problems I had were extreme, and I'll try to keep my explanation short, as this is more about TI's software and less about this Tiva Dev Board.
First of all, the unboxing. I did a quick video, and here it is: (might take a bit to finish uploading and processing)
So, a few days before my Tiva Connected Development Kit arrived, I went back to play around with my Hercules Launchpad to familiarize myself with Code Composer Studio once again. In the meantime I'd been using Atmel Studio 6.0 almost exclusively and I wanted to be able to jump right in. The Hercules series of micros come with a very powerful, very cool piece of software called HalCoGen -- it's a code, library and driver generator for your projects. You can do an amazing amount of stuff with this program -- it builds all the drivers and header files you need to use all the different peripherals on the micro. Say you wanted to use an SPI bus -- you go into HalCoGen, create a new project, tell it which micro you're using, and then go to the SPI tab. You set up all the specs for your SPI connection (frequency, timings, etc etc), go to the General tab and check 'Build SPI Driver', click Generate Code, and then pop over to Code Composer Studio. Create a 'new' project in the same spot the generated code is, and the SPI bus is all set up for you! Simply use the functions it generated for you and away you go. This is only a small glimpse of HalCoGen's true capabilities -- you can customize literally EVERY single aspect of your microcontroller! It's a shame it's only for the Hercules series of micros (though the value line MSP430's have a similar, less powerful plug-in called Grace).
Anyway, I fired up HalCoGen, and for the first time ever, it glitched up and crashed out. I thought that was weird, tried to open it again, and it kept crashing. I started thinking about what could have caused this (new installs that changed dependencies, etc) but was left scratching my head. This is when things get really strange. I tried to uninstall HalCoGen -- but the uninstalled crashed as well! I decided to just write it off for now, and started using Code Composer again. It worked, sort of, until I tried to debug the microcontroller. Then it crashed too! I tried to install support for the Tiva C series of microcontrollers, and that installer crashed too! Then literally ALL the Texas Instruments software on my computer stopped working. Everything else -- every single piece of software on my computer besides the TI stuff -- worked perfectly fine. I was stuck -- couldn't uninstall, couldn't repair, etc. Tried booting in safe mode... I managed to uninstall CCS and the Hercules Demo Software program, but HalCoGen wouldn't uninstall, and eventually I got so frustrated I backed up all my user files, wiped the hard drive, re-installed Windows 7, re-installed CCS and the Tiva C stuff, plus all the other software and now things are working again. REALLY cannot explain what the heck happened, but it was really, really annoying. I took drastic measures because I just couldn't afford to waste time debugging my tools -- I expect (and need) them to just work.
So I finally got all the software for this board set up. This constitutes installing CCS if you don't already have it, and adding a license file so you can compile for the Tiva C micros; installing the LM Flash Programmer software which allows you to program Tiva micros over USB/JTAG, plus I copied over all the example software that comes on the CD. I didn't have a lot of time to write code but I spent about half an hour writing all the different programs to the board. It performs excellently -- I am really blown away at how incredible this board is! I'll upload another video showing the pre-programmed software running. It's a cool little weather app that contacts a server through Ethernet and shows the weather for 20 or so cities around the world. You can add a custom city as well. Very cool example!
I will be adding much more to the review as I get the chance to play with it some more and actually use it in a project or demo setup of some kind.
FINAL VERDICT
My final verdict on the Tiva C Series Connected Development Kit: a semi-fail. If you are the very small niche of programmers/developers that already have a lot of experience with ARM and 32-bit C programming, you'll be able to pick up this board and whip something up in no time. If you are anything less than that, you'll be wading in blind.
The hardware itself is amazing, but the software, once again, disappointed me. I really feel that TI could do a lot more for its smaller, low-end market. I know that they're really after the $1-million a year clients, but the hobbyists/beginners/students like me are the people who in 5 or 10 years will be making those decisions at a big company. If I didn't have to wrestle with the Code Composer Studio software all the time (like having to wipe and re-install Windows just to get all the TI software working!!!) then this whole process would have been easier and this board would have scored better overall.
I really hope this review helps someone make up their mind on whether or not to actually buy this board -- as mentioned previously, if you're planning on developing something for a 32-bit ARM core, and you need lots of peripherals, or even just built-in USB/Ethernet PHY/LCD interface, then look no further -- this kit is for you. But if you're looking for an easy hack, or a board to play around with on weekends, look elsewhere.