Go Down

Topic: New Arduino IDE (Read 3280 times) previous topic - next topic

Daanie92

Jul 16, 2010, 09:43 pm Last Edit: Jul 17, 2010, 11:17 am by Daanie92 Reason: 1
I'm trying to make my own Arduino IDE : ArduinoStudio.

Expected features:
  • All of the original Arduino IDE
    • Sketch system
    • Preprocessor
    • Uploadbutton
    • Serial monitor

  • Advanced code editor (Scintilla)
  • MDI
  • Library creation
  • PROGMEM compiler
  • Subversion
  • maybe: Debugger / Simulator based on arduemu

The IDE is in C++ using Qt framework

Please tell me what you think of this idea. Ideas and suggestions are always welcome.

Daanie92

Some clarification:
Sketch system
One main file, archive of sketches, easier code
Preprocessor
Easier code
Uploadbutton
Being able to upload your sketch to the Arduino
Serial monitor
...
Advanced code editor
The code editor is Scintilla. This editor allows for automatic coloring, indentation and word autocompletion.
MDI
Multiple Document Interface. Allows you to open more than one sketch but in one window.
Library creation
A special editor for libraries. Will automatically add #include "WProgram.h" and save the files in the correct format and folder.
PROGMEM compiler
A resource compiler like the resource compiler for Qt. You have an easy editor for all the data stored in PROGMEM. The compiler wil generate PROGMEM code and automatically append it to the source code.
Debugger/Simulator
It may eventually contain a simulator for trying the program. The arduemu project is still Alpha, but when it is good enough it will be included in this studio

retrolefty

Quote
The IDE is in C++ using Qt framework

Please tell me what you think of this idea. Ideas and suggestions are always welcome.


Will your project support all three PC operating systems that the current IDE supports?

Lefty

Daanie92

Yes, I use Qt because it is simple to use, free for open source and platform independent :).

I will compile the Studio for Windows and Linux, but Mac OS X is different. I don't have Mac OS X so I can't compile it. Maybe someone with Mac OS X could compile it.

Without platform interdependency, it can't be better than the current IDE.

Daanie92

To give an idea


There is much to be done, but it is a nice project.

mowcius

Quote
Without platform interdependency, it can't be better than the current IDE.

I have many ideas for an IDE but I'm not so sure about actually doing it.

Maybe you want to become very good friends with Massimo, David C, Tom, Gianluca and David M first.

:-?

Daanie92

Quote
I have many ideas for an IDE but I'm not so sure about actually doing it.

Sharing is always possible.

Quote
Maybe you want to become very good friends with Massimo, David C, Tom, Gianluca and David M first.

I'll consider that. For now, I can understand a lot of their original code but it is to much work to adapt everything to C++. I'll write my own code, but inspired by their code. (preprocessor for example)

To all, thanks for those quick replies. Some forums ... aren't that quick and active.

cr0sh

Hmm - has anyone tried this editor with the Arduino, I wonder?

http://bluefish.openoffice.nl/index.html

I doubt it would work completely "right outta the box" - ie, it wouldn't compile and upload - but it says that it is scriptable, so adding that wouldn't be difficult.

I just found it, and it seemed like it might be a good step in-between the current IDE and using eclipse.

:)
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

Udo Klein

IMHO the biggest issue with the Arduino IDE is that it lacks any kind of version control. Having said that, the other features are below average as well. The main advantage of Arduino are the libraries and the examples and that it works out of the box most of the time.

So whoever provides a reasonable IDE for Arduino that includes version control *and* works out of the box will most probably win this "market".

Udo
Check out my experiments http://blog.blinkenlight.net

Daanie92

Quote
So whoever provides a reasonable IDE for Arduino that includes version control *and* works out of the box will most probably win this "market".


I'll add version control (SVN) to the list. Working out of the box is harder, but achievable.

drhex

#10
Jul 17, 2010, 11:41 pm Last Edit: Jul 18, 2010, 12:01 am by drhex Reason: 1
On my wishlist:
* preferences for command line options to compiler so you easily can e.g. enable warnings
* copy-paste of text that works to/from other applications
* A list of auto-replacements in the editor so that it automatically fixes e.g.:

Serail  -> Serial
returb -> return
flase -> false

etc

mowcius

on my wishlist:
an obvious com port and board drop down list like
|COM PORT : 3 |v| | BOARD:  Aruduino Duemilanove |v| |

stick it right under the current icons...

Mowcius

Daanie92

#12
Jul 18, 2010, 01:57 am Last Edit: Jul 18, 2010, 02:11 am by Daanie92 Reason: 1
Quote
* Command line preferences

It is added to the list.
Quote
* copy-paste of text that works to/from other applications

The editor Scintilla has that built in. (I just tested it out)
Quote
* A list of auto-replacements in the editor so that it automatically fixes e.g.:

Because Scintilla automatically displays an auto-completion list, you won't be typing the first two words wrong. However, I will add an auto-replace list like the one found in Word.

Quote
an obvious com port and board drop down list

I'll create an upload toolbar with those lists and an upload button
[COM][V] [BOARD][V] | [UPLOAD]

Because the picture of the program is pointing to my site, it will change when a new feature is added. To give an example of how it looks like.
EDIT: You can go to dss.nl.eu.org/ArduinoStudio to view my code. Note however that it doesn't have a nice download system, just links to the individual files.

cr0sh

Quote
IMHO the biggest issue with the Arduino IDE is that it lacks any kind of version control.


I'm not sure that an editor should have built-in version control; instead, it should have a means to integrate with standard version control tools like Subversion and SourceSafe. That way you get the versioning capability, but you aren't locked into any single tool. Also, by using standard versioning tools, there's the ability to partition the project tree and the check-in/check-out of code; so that while the editor for the Arduino code is checking out from its area, the front-end GUI application code being developed by another developer for the same project, in say, PHP - can be checked out on its own, all versioned with the same toolset in the same versioning DB.
I will not respond to Arduino help PM's from random forum users; if you have such a question, start a new topic thread.

Udo Klein

This is not an editor - it is an IDE for beginners. Of course an optimal solution would be to come with a default version control and the capability to integrate any other version control. Just as with the boards / programmers. There are reasonable defaults but you can extend it as you desired.

Udo
Check out my experiments http://blog.blinkenlight.net

Go Up