Jump to content
43oh

Recommended Posts

Hi all!  This is my first post on 43oh forum. I am currently working on a project which i think the 43oh community members will like.   :grin: 

 

Project Description: The main aim of the project was to create a Simple, Easy to control Graphic User Interface (GUI) to control various pins on MSP430 Launchpad (MSP430g2553 uC). The GUI for this purpose was created using Visual C# and can be used on any Windows based System.

 

post-3-0-48103400-1380628821_thumb.png (GUI in action)

                                                                                                                                                                         

 

Features:

  • The GUI allows the user to test and develop hardware without having to write any code for the device.
  • Pins configured GPIO can be turned "LOW" or "HIGH".
  • The present version of the GUI enables real time data acquisition and plotting. The data obtained from the pins configured as "ADC" can also be stored in an Excel Sheet. Data from Internal Temperature Sensor of the uC can be obtained and plotted as well.
  • The GUI enables the user to Generate three independent PWM Signals and vary the Duty Cycle.

Instructions:  You need to upload a code to the MSP430g2553 microcontroller for working with the GUI. The code and the application GUI can be downloaded from the link given below. Extract the contents of the download file and load the MSP430_ControlWare project in Code Composer Studio and upload the code to the MSP430 Launchpad (MSP430g2553 uC). You can also view the video for the demonstration of the GUI. 

 

Future Upgrades:  First thing that i will do this weekend is to implement a scheme for making the serial communication more efficient. There are way too many comparisons in the current code and i would definitely like to reduce that by a significant amount. Secondly, i will improve the PWM part to allow user to select the frequency as well. I would like to have suggestions on what more i should do with the User Interface.

 

For any queries and suggestions, feel free to drop me a mail or reply to this post.

 

MSP430 ControlWare.rar 

Edited by Jaspreet@DTU
Pictures uploaded to 43oh.
Link to post
Share on other sites

Thanks! That is neat.

Welcome to 43oh! You should make one for the 5529 too.

A suggestions.. for the on/off dropdown, use a checkmark or radio button. It is easier and takes only a click.

 

I will optimise it for the New Launchpad as soon as i get my hands on one... and regarding the RadioButton.... will do that this weekend. Thanks for your suggestion :)

Link to post
Share on other sites

Nice.

 

Have you documented the protocol used between the MSP430 and the PC?

Did you look at Firmata http://firmata.org/wiki/Main_Page or use anything from their standard?

 

Thanks! :) It's my first time hearing about Firmata and regarding the Documentation, i will write one this weekend. The present code as i have mentioned has way to many comparisons. I will work upon reducing that and will Write a documentation for the final Release. 

Link to post
Share on other sites

The GUI for this purpose was created using Visual C# and can be used on any Windows based System.

I also like developing in .NET.  Here is another MSP430 project that has similar goals to yours but is developed in Java.  It's interesting to see how different projects approach this task.

http://forum.43oh.com/topic/2419-community-project-rocketuc/

Link to post
Share on other sites

Thought on enhancement - 

give option to rename (or add a meaningful name) to the pins in the GUI.  (i.e. rather than P 1.4, let me name it something like Accelerometer.X, or whatever).

 

Minor thought on code - why the big list of if .. thens in USCI0RX_ISR?  

Seems like a switch statement would be more natural (and might be easier for the compiler to optimize?)

 

 

When considering protocols, there are also some XML based protocols

Sensor Markup Language

Transducer Markup Language

 

There is a whole alphabet soup of other protocols/languages associated (parts of the Open Geospatial Consortium Sensor Web ... buzzword buzzword buzzword).

 

May be overkill, or too heavyweight for what you doing, but might be able to borrow some ideas from.

 

Of course there are also the busspirate and GoodFET protocols.

 

http://xkcd.com/927/

 

 

 

If haven't done it that way already, might consider making the GUI data driven/generic, so can give it a file describing another microcontroller (Fraunchpad, Stellaris, Arduino, whatever)

and it will give you a gui for that.

Link to post
Share on other sites

Thought on enhancement - 

give option to rename (or add a meaningful name) to the pins in the GUI.  (i.e. rather than P 1.4, let me name it something like Accelerometer.X, or whatever).

 

Minor thought on code - why the big list of if .. thens in USCI0RX_ISR?  

Seems like a switch statement would be more natural (and might be easier for the compiler to optimize?)

 

I am infact working on a protocol for the same. The above project was made in just a day and i never had time to experiment back then. I will have one ready by end of this weekend and Yes, switch statement will work faster here. I will keep this in mind. The Optional Name thing is great. I will work on that too. Thanks!

 

If haven't done it that way already, might consider making the GUI data driven/generic, so can give it a file describing another microcontroller (Fraunchpad, Stellaris, Arduino, whatever)

and it will give you a gui for that.

 

This is what i am aiming for. I have made some similar projects from other Launchpads as well and this is something i would like to take further. 

(Stellaris Launchpad Data Logger  & EZ430-RF2500 Wireless Data Logger)

 

Thanks for your valuable suggestions and that comic strip was great!   :grin:

Link to post
Share on other sites

This would be extrememly helpful if @@Jaspreet@DTU included profiles for each Launchpad ( 2553, fattyPad(5529), Tiva and C2000 ). I have no idea how to do this.

@Jaspreet@DT, if you need additional Launchpads shipped to you for testing, please let us know. 

 

I have some MSP430 (old) launchpads, a Stellaris Launchpad & a TIVA C Launchpad with me. The only major missing one in this list is the NEW MSP430 Launchpad which is currently out of stock on TI's website. 

Available for backorder. Orders placed today will ship on approximately November 15.

 

How much will that cost me from here including the shipping price to India?

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...