Need to make a program on the PC that communicates with the Arduino

I want to make an executable program on the PC that anyone can click and run on a Windows 7 PC. It needs to communicate with the Arduino, have a nice GUI, read text or XML files on the local PC and possible write to text files (or an SQL database). As long as it can read/write text files that's all I really need. Is that possible and if so how should I proceed?

I've gotten Eclipse (C++) with the plugin to run with the board so that's good.

Very well possible

first step is to get clear requirements what it should do and what not, what kind of tasks it can perform on behalf of the user.

Make sketches how the UI should look like and how a user would got through these screens to perform these tasks.

From these requirements define the architecture what components you need (e.g. xml reader writer etc)

Then start building prototypes for the parts you think are risky and learn the tech needed to get those parts right.

But there are many other ways to do this...

This demo shows how to communicate with an Arduino using Python. It will work on Windows if you edit it to make the correct reference to the Serial port.

...R

robtillaart: Very well possible

first step is to get clear requirements what it should do and what not, what kind of tasks it can perform on behalf of the user.

Make sketches how the UI should look like and how a user would got through these screens to perform these tasks.

From these requirements define the architecture what components you need (e.g. xml reader writer etc)

Then start building prototypes for the parts you think are risky and learn the tech needed to get those parts right.

But there are many other ways to do this...

Thanks. I am aware of all the above steps. I should have clarified: Are there any free tools that I can use? Visual C++ is a tool but it has a license. Maybe Eclipse has a plugin or something like that? In the past I've used Visual Basic to create stand alone Windows applications. Maybe there's something that is convenient and most easy to use.

In summary, I want to make a project based on the Arduino and give it a user. They would take the hardware and connect it to the PC, click on the EXE file and run the program. That program would send and receive information from the board and look nice graphically. They would not need to run the Arduino IDE, open a project and run it.

Robin2: This demo shows how to communicate with an Arduino using Python. It will work on Windows if you edit it to make the correct reference to the Serial port.

...R

I can program in Python somewhat. Can I get a stand alone executable Windows based program?

Hmains:
Can I get a stand alone executable Windows based program?

I don’t know enough about Windows but I think there are ways to package a Python program.

Is it really essential to make an .exe file? What about a .bat file that would start the Python program?

You could also reproduce the Python program in another language.

…R

Are there any free tools that I can use? Visual C++ is a tool but it has a license.

There are express versions of the Visual Xxx tools that are free, for personal use. If you are building something that you want to sell, you should expect to pay for the development tools and all the work that goes into building them.

My preference, for your stated need, is C#. Very easy to build nice looking GUIs and very easy to use the Serial class to write to, and read from, the Arduino.

I've made something like this earlier where i have set up a "home SCADA" interface for a greenhouse.

Where i used Serial connection, and then i used Visual studio because it's free and has everything i need. no plugins needed.

reason I'm here today, is for a similar reason, but this time im interfacing a mega via Ethernet instead of a serial connection. and just wanted to let you know i found this VERY helpfull if your using ethernet.

http://forum.arduino.cc/index.php?topic=209602.0

What you want to do can be done with the free, multi-platform (excellent) Lazarus... descended from Delphi.

See...

http://sheepdogguides.com/lut/index.htm

.. for intro tio Lazarus

... and...

http://sheepdogguides.com/dt4t.htm

... for info on serial comms wiith Arduino. (It is couched in Delphi terms... but translates to Lazarus with little hassle.)

Today (those tutorials quite old), I would use a different module to give Lazarus the "bits" necessary to access the serial data channel...

I think I used SynaSer from http://www.ararat.cz/synapse/doku.php/download

.. in a note-yet-written-up project.

tkbyd: What you want to do can be done with the free, multi-platform (excellent) Lazarus... descended from Delphi.

Not as multi-platform as Python - see this recent Thread

...R