UECIDE: A New Fork of the IDE

I have been spending some time taking a fork of a fork of the Arduino IDE (originally forked at 0023 and passed through being MPIDE since then) and done some big changes to it.

I have ripped out a huge amount of the internal code and completely re-written it.

It now supports multiple different board types (not just Arduno, but anything else you can think of too) through pluggable "cores". It has the Arduino 1.0.5 core in there at the moment as standard, and you can download cores for other board types too.

Boards are now completely self-contained folders, so creating and distributing your board settings is now a doddle.

There's even a powerful plugin system, so you can write plugins in Java for it to extend how it works - I've written some already.

Libraries, cores, boards, plugins, etc, can all be installed through the menus, so no messing with finding the right folder.

I have written a new serial terminal interface specially for this - it supports full ANSI colour and cursor controls, and sending of individual key-presses - just like a "proper" serial console.

I have also written a "graphing" plugin that allows you to draw pretty graphs using just a few simple serial commands.

Also, the system is completely rebrandable to suit your needs.

I've named it "UECIDE" - "Universal Embedded Computing IDE".

I've reached a point where I want people to start having a play and see what they think and tell me what's not working right.

Read more at http://uecide.org

Oh, and if you want to help out, why not fork the repo and have a play with the internals? GitHub - UECIDE/UECIDE: Universal Embedded Computing IDE

There was a problem last night whereby the Windows version wouldn't work. :fearful: Needless to say this is now fixed, so if you downloaded the windows version and were disappointed that it didn't do anything, download it again and you should find shiny new IDE goodness is at your fingertips.

Looks pretty nice Majenko, I've not tried anything clever like adding cores but the look and feel is nice. Speaking of which the font change has no affect. (Windows version).


Rob

Graynomad:
Looks pretty nice Majenko, I've not tried anything clever like adding cores but the look and feel is nice. Speaking of which the font change has no affect. (Windows version).


Rob

Which font change?

File>Preferences>Select Font...

I selected but nothing changed.


Rob

Graynomad:
File>Preferences>Select Font...

I selected but nothing changed.


Rob

That font is for the serial console only. I haven't got the ability to change the editor font yet, though that could be added fairly easily I guess.

OK, no problems.


Rob

I have just overhauled the preferences system, and just for you I have added an option to select the editor font.

Not all fonts work nicely with it though, as the editor can't work out where to put the cursor in relation to the font sometimes.

I just downloaded this for my Mac, and it fails to open, as it has the wrong Java version. What is it expecting?

Also, is the Launchpad support for the 430 series or the ARM series?

Thanks!
David

dpharris:
I just downloaded this for my Mac, and it fails to open, as it has the wrong Java version. What is it expecting?

Also, is the Launchpad support for the 430 series or the ARM series?

Thanks!
David

I compile it all under Java 1.7 as that's the current version. What version of OS X and Java do you have?

The Launchpad is currently only for the 430 series.

Edit: I am just uploading a new version that should (hopefully) work on Java 1.6. It was actually only a couple of the plugins that were 1.7, the rest was already 1.6.

The compiler and the avr libraries are updated or they are the same as the Arduino IDE 1.0.5?

joselorente:
The compiler and the avr libraries are updated or they are the same as the Arduino IDE 1.0.5?

They are pulled directly from the Arduino 1.0.5 downloads from the main arduino.cc site.

I have just released an extremely experimental version of UECIDE (version 0.5.0a).

This version has replaced a large amount of the internals. The old editor has gone completely, and it's been replaced by a RSyntaxTextArea, which supports proper C++ syntax highlighting, code folding, etc. In association with that the old tabs have completely gone, to be replaced with a proper JTabbedPane.

The RSyntaxTextArea handles a lot of the functionality itself, so things like find/replace, indent/outdent, undo/redo etc have been recoded to take advantage of it.

The code compiling has also changed - it's now inside the sketch, which is far more logical. Also, the sketch has changed to have a collection of SketchFile objects in it which contain the actual sketch file information.

You can now also embed a board type into the sketch and it will automatically switch to that board when the sketch loads:

#pragma parameter board=uno

The board is now contained within the editor rather than the whole application, so it is possible to have two windows with different boards selected at once. However I haven't done the same with the serial ports, but when I do you can work on two boards on two serial ports at the same time.

Also, lots of things have been cleaned up and made more sensible.

As this is so experimental there's no guarantee that it will work at all, so please give it a go ane feed back to me what isn't working for you or what should be slightly different.

There is a lot of inputs from folk in eried's topic [MOD] Arduino Enhanced Release 1.0.5 for Windows (installer, drivers, etc) +SRC - Libraries - Arduino Forum

PS: hopefully my SSD disk does not wear out before the 1.0 version :slight_smile: :slight_smile:

PS1: When I hover over Sketch <-> Hardware <-> Tools it freezes for about 7secs (XP SP3).

PS2: can we set font in the compile window? - that font size is not readable (also I'd like to see the verbose option there)

pito:
There is a lot of inputs from folk in eried's topic [MOD] Arduino Enhanced Release 1.0.5 for Windows (installer, drivers, etc) +SRC - Libraries - Arduino Forum

PS: hopefully my SSD disk does not wear out before the 1.0 version :slight_smile: :slight_smile:

PS1: When I hover over Sketch <-> Hardware <-> Tools it freezes for about 7secs (XP SP3).

That PS1 is possibly it rebuilding the serial ports list whenever you go to the tools list - something I want to fix.

PS2: can we set a font/size in the lower compile window? - that font size is not readable (also I'd like to see the verbose option there)
PS3: when changing font to 16 the background colour changes

You can set it in the preferences.txt file, but yes I will add it to the preferences options window. There's lots of things like that to add. The verbose option is currently enabled by holding shift when you press the compile or upload buttons - I want to add some verbosity options to the preferences window too really.

PS4: Program sizes - I'd like to see more traditional:
Program Size:
Flash: 17950 bytes from 2095123 (3%)
RAM: 1092 bytes from 524288 (0%)

PS5: opening a file takes 6 seconds (Win XP)

PS6: nice to have - clicking on an error message jumps to the erroneous line in editor..

PS7: interestingly after closing/opening the UECIDE the hovering drops to ~1sec, opening files 1-2sec

pito:
PS4: Program sizes - I'd like to see more traditional:
Program Size:
Flash: 17950 bytes from 2095123 (3%)
RAM: 1092 bytes from 524288 (0%)

Yes, that's coming soon - I had it in the old version but didn't copy it across to this version (I forgot :wink: )

PS5: opening a file takes 6 seconds (Win XP)

Yes, the speed is something I am looking at - there's so much being done when you open a new editor window now...

PS6: nice to have - clicking on an error message jumps to the erroneous line in editor..

Yes - the new editor can handle all that - including markers to say where there's warnings, errors, etc - but I need to work out how to do it.

PS7: interestingly after closing/opening the UECIDE the hovering drops to ~1sec, opening files 1-2sec (caching in java?)

PS8: I would suggest to have font/color etc settings global, not to be set for each window opened..

PS9: When opening large project (ie multiwii) I see only one .ino file and 3 header tabs. Orig IDE shows all 11 .ino tabs (plus .h files) in single editor window