Disclamer: I respect the work put in my every design engineer. I understand that they did the best job that they could and will learn over time. This text is in no way telling anyone that they did a bad job. I’m just suggesting changes which may or may not be practical or even usefu
I started out very excited and looking at the specs, the big picture was very nice. When I started working with the kit, things really did not go as planned and this review is more of a rant than anything. Ti Should take notes and if they are really interested in the hobby market, they should take my suggestions into consideration.
I had implemented a project using MSP430 some years ago and after that I shifted to arduinos. The primary reason being that they had a lot of community support. MSPs are typically not available easily in the market hence prototyping was always an issue. More and more distributors have come into the online scene since then and I am looking into why I would or would not want to use an MSP in my next project. Additionally I am looking into using MSP430 for student projects and teaching them in the lab.
The pictures are self expalnatory. I would like to mention here that posters for getting started are included in the package. No license agreements and that stuff which typically goes in the bin. I also understand that the software is usually downloadable from the net but a small cd would not have hurt. I like the packaging and appreciate the fact that there was no garbage in the box. The poster goes on my wall(till my wife takes it down). Two thumbs up for the box content.
Note to all manufacturers: Please include nylon footpegs. Not really important but helpful.
2. First impressions
There is really not much to say about the board itself… right? Well actually I have a lot to say. The getting started poster that came with it was very informative. The fact that it can be running a wooping 25MHz is impressive. However the board runs two crystals of 32Khz and 4Mhz clocks which are select-able. I missed the need for J8 and TP104 to TP110. All in all a brilliant little board. The preloaded DEMO app works like a charm and is enough to give a man ideas to work with. I am not going to complain that its not arduino shield compatible because I know its something entirely different. With enough community support this may even be a LOT better.
One thing I would like to mention is that this board has I/Os that work at 3.3V. A lot of people dont like that… I am not one of them. I have bss138 based converters just because my sensors usually operate at 3.3V and the arduino uno is a 5v output. For microcontroller applications, I think 3.3V is what should be adopted but hey its a personal choice.
On the flip side, the reference material is not very good. When you start working you discover that two serial ports pop up in the device manager. One is the MSP debugger and is only used by the GDB for uploading code and debugging it. The other is an MSP uart but there is no mention of how. A few minutes into the userguide and I find a block diagram.
It is clear that there is a USB hub to which we connect which explains the multiple ports. The debugger port is obvious but where does the other port come from? Is it for the uart functionality?
Another few minutes into the guide, i discover that the eZ-FET itself is two uarts which are shown. This uart is connected to USCI_A1 and is reffered to as the “Backchannel UART”. There is sample code from the website which I tried to use and I will go more in details of this later. The point was that the information was too spread out. I would like a composite diagram. When we start working with the USB functionality, it shows up as a third device in the device manager. The hardware specs are nice but I ended up referring the schematic over and over again to get a better understanding of what was going on.
1. Nice design but needs better structured documentation. This means about the various peripherals as well.(More on this later.)
2. Put all relevant code in one place like a folder or zip on a server. Better yet give it to us on a disc.
The getting started guide from Element 14 was not as good as the one with the Launchpad but still quite good. It lacked pin descriptions, schematic or relevant information on what was going on. Photos and skitch are not a replacement for adobe illustrator. I might just get in there and make a poster myself for this particualr board. Again since no CD is provided, it was oblivious to my as to why the getting started guide has instructions to the software. I have no idea at this point in time what the Tiva C launchpad is so… The instructions ask me to connect two micro USB cables to the Launchpad and the booster pack… why? Can’t I just use the one already connected to the LP. On the plus side the battery just fit into the space and 1200mha seems decent for low power applications. The schematic was simple enough and useful. A block diagram is NECESSARY. I was also confused about the various demos available. Did anyone check if the demo code works with the USB starter kit? I’ll answer that- NO! The code example not very useful and on top of that the starter guide is only useful for people who have worked with MSP before because a newbie will no know what “tiva C”, “CC series” etc means. Are you really targeting beginners?
The TI FUEL BOOSTER PACK itself has some things I don’t like.
1. Why can I not charge from one port?
2. Why is there no connector to connect an external 5V supply?
Other than that really not much to say. I will be performance testing it once I get an XBEE hooked up to it and I can log the data elsewhere.
There is an issue with the I2C machine on the gauge IC which garbles some data or something- Will look into that as well.
I will be making a poster soon and putting it up on the github repo.
I have also uploaded some code for energia as of now which works and everyone is welcome to try. TI if you like my code, send me a letter. I will contribute for the thanks.
The Diagram is as follows:
3. Getting started with the LaunchPad-
I always preffered IAR for MSP430 but I am seeing a push towards energia and code composer. I downloaded the latest versions of all three and here are my impressions.
Ti you are in the business of selling chips-NOT SOFTWARE. Microchip has an excellent policy:
– Give the compiler free. Charge for optimization.
– Charger for flash memory and peripherals on the chips.
– Charge for libraries.
– Charge for the debugger (ICE JTAG)- Cheap Programmer-Almost open-source.
– Make the IDE free and demo code for EVERYTHING available.
Its one of the reasons that PIC sold and is still the light preferred solution for many.
I was really surprised with this one. Its the same IDE as the Arduino and example sketches tailored for the MSP430. It works and if you have your own code, you can possibly run it on the LP without many hiccups. The only problem I saw was the lack of debugging. IAR has a very nice debugger and I missed that here. For large pieces of custom code, you really need a debugger.
TI who ever was responsible for energia, DOUBLE HIS?HER SALARY. This was the best idea ever. The same code will run on arduinos(all flavours), Intel Galileo and now the MSP430. This is my preferred choice right now and ti really works. It was easy to design software in energia and I really hope that you establish a code limit free version of the compiler and continue development on this project. I also hope that the community pitches in because this is FANTASTIC!!! It is the only reason I will be working with MSP430.
b. IAR- code restricted version.
I already have some code from a few years ago but I dont remember how to use it. IAR appears friendly to those who have already used it. There are a number of tutorials out there and I am going to post some to my blog when I get the time. I found that the code limit on the free license made it impossible to work with the best feature of the Launchpad… USB. I was able to run a blinking LED and that kind of stuff but beyond that I would not recommend even downloading the free version. At least go for the 30 day full version so that you can actually do something useful with it.
The same code that runs on CCS will run on IAR and I really DO NOT recommend it to new user UNLESS you have someone who will teach you. There is a lot of material in the net for OLDER BOARDS. If you are working in a company that will actually pay for the license, you should start here but otherwise I don’t recommend it.
c. Code composer
My first impression was that it the IDE that TI is officially sells so the code support will be up-to-date. Like I said before, the same code will run on IAR and the demo code for the kits will work here. I was disappointed. My first grudge is that when you start CCS for the first time, it asks if I want to start the 90day trial. WHY? I selected the free code limited version but I cannot find how to switch to the 90day trial. If I cannot do that then why do you have that option? Why not directly go into the trial. At the end of the trial, ask if I have a license or the code limited version.
Anyways I tried the following:
i) The demo code for UART in the IDE. NOT AVAILABLE FOR THE USI_A1
ii) The code from the website for Fuel-Booster Pack. DID NOT COMPILE
iii) The backpath UART demo code- COULD NOT FIND HOW TO CHANGE THE BAUD RATE
iv) Misc code- DOES NOT WORK
Three days in finding, I was still stuck in la la land as far as getting any code for usart (USCIA1) to run on the USB kit. I must be doing something wrong but that’s the point. There is no ready code for this particular board. I need simple starting point example code.
Day 4 in the morning in the office I went through some lines of code and modified them one by one and… Bingo! I finally got the uart up and running. I don’t fully understand the code hence I am putting up everything on github and linking it below. EVERYONE is invited to fork and contribute. I am putting it under BSD license since thats what TI seems to use for libraries and code.
I also got some code working for the TI FUEL BOOSTER PACK to work and its also in the repo.
I also went through the documentation for the tool GRACE. It is basically a GUI for creating peripheral related code. There is a catch though. It does not work for all the MSP430 controller and this is one of the things that TI should work on. Its a good tool. There was a tool for AVR controller which had the same functionality and was called “CodeVision AVR”. It was very popular for some time and then it kinda disappeared with the advent of Arduino. Again energia is awesome!
I am awaiting the final release of the CCS6 which is supposed to have the RedHat collaboration Compiler with no code limits! YAY!
1. Ultra cheap.
2. 3.3V interfaces.
3. Standard 0.1 header spacing.
1. Not very friendly documentation
2. Code not very useful and not commented.
3. Compilers have code limits
4. No CD with code
5. No central place where to get all the necessary code and other data.
1. Not for beginners but getting there.
2. Needs more sample code.
3. Open source Compiler required to make it really shine.
Q. Who should buy this kit?
A. People how want to work with USB, and/or who have a little experience with MSP430. This is pretty cheap as well but the IC is SMD.
Q. Is it value for money?
A. HELL YES!
Q. Where should a beginner start?
A. The simpler launchpad and energia. PTH IC will make it usable on your pcb.
Here is a link to my github repo here
I will be posting eveything else on the github site so everyone can track it.
Feedback is important and I request everyone who reads to comment.