[MOD] Arduino Enhanced Release 1.0.5 for Windows (installer, drivers, etc) +SRC

Regarding the fact that AER does not work on Leonardo (i.e. upload to Arduino Leonardo does not work) popping the message asking to fix the COM port and then leaving with error:

Serial port 'COM15' already in use. Check your board or Click fix on next upload.

The reason is that the upload process on Leonardo is different. Leonardo has USB controller built into the processor core so it disapears from the list of ports on every reset and reset is required to enter the bootloader. The detailed information on this is here:

What is relevant to IDE is:

... because the Leonardo's serial port is virtual, it disappears when the boards resets, the Arduino software uses a different strategy for timing the upload than with the Uno and other boards. In particular,

  1. IDE is initiating the auto-reset of the Leonardo (using the serial port selected in the Tools > Serial Port menu). It does it by opening the virtual com port at 1200 baud and then closing it. This is a signal for firmware to reset the processor of Leonardo, and the virtual (CDC) serial/ COM port disappears from the list.
  2. the Arduino software waits for a new virtual (CDC) serial / COM port to appear - one that it assumes represents the Leonardo bootloader. It then performs the upload on this newly-appeared port.

damago1:
I have installed the 1.5 IDE and I am disappointed.Even very old bug with fixing the delayed Tools menu was not fixed, no possibility to autoopen serial monitor etc. No significant changes except for addition of Arduino Due libraries/compilation etc.

=( but you have a Due? I want to go with the 1.5 for sure, but I beta feels like nobody will trust a "mod" from a beta version. With about 40 downloads per day I think I can't release some unfinished stuff as the new version.

For the moment I migrated all my machines to win8 and I am still not "productive" working on the mod... to bad I have to install java -sigh- in my shiny win8 :disappointed_relieved:

cyclegadget:
How about 2 separate buttons one is "upload" the other is "upload with serial monitor"?

That would be my preference.

Nantonos:

cyclegadget:
How about 2 separate buttons one is "upload" the other is "upload with serial monitor"?

That would be my preference.

It is possible, but for now I am keeping the "setting to force the monitor" when you press the upload button (ctrl+upload, does not opens the monitor in this scenario). No new UI setting in preferences for the moment.

OK, I spent a lot of hours this afternoon updating all the enhancements to the new source for 1.0.2
I tested it for a while (and it works well with my mega), but if you find something, just report it here:

1.0.2 Update (2012-11-06)
http://arduino.cc/forum/index.php/topic,118440.0.html

-Fully updated to official 1.0.2 version (but keeping all things, new JDK, new WinAVR/avrdude, pretty icon, Bluetooth responsiveness, etc)
-Some workarounds for Leonardo board in the AvrDude Wrapper. (somebody with a Leonardo please test this!)
-Setting to revert the function of Upload button to Upload and open Monitor (install the IDE, then open idesettings_v1.0.2.txt file):

serial.open_monitor=true

-Other small fixes

eried:
-Some workarounds for Leonardo board in the AvrDude Wrapper. (somebody with a Leonardo please test this!)

Jupp works for me. Thanks.

1 or 2 things I thinking about

1st Numbers for the code lines so it is easier to find errors in the code
2nd the possibility to set self the counter when the Estimated memory line apears red (in percent maybe)
3rd an option to deactivate the start splashscreen to get faster to work

And a dream of me an Board-Generator so I can generate the Lines for the Board.txt from an Editor mask and pulldown selections for some parts and autointegrate it.

Damm!

Serial Monitor is brocken no Serial output from the Leonardo

Markus_L811:
And a dream of me an Board-Generator so I can generate the Lines for the Board.txt from an Editor mask and pulldown selections for some parts and autointegrate it.

That is the top item in my wishlist.

I have a couple homemade Arduinos that use the 328 (non-P) AVR. It is ok if I want to use a serial-2-usb adapter, but when use ICSP (USBasp) to program then, I have to manually edit the boards.txt file to change the signature.

I also have a couple Atmega1284 (both P and non-P), which aren't standard - as you all know - for arduino clones.

Being able to properly create my boards in the arduino IDE would be great, with all the required files properly edited to include them. I haven't takne the time to study what are all the required changes to support the Atmega1284 and 328 non-P, but I do acknowledge that at this moment I lack both the time to do it and some of the required background knowledge.

Markus_L811:
Damm!

Serial Monitor is brocken no Serial output from the Leonardo

Works with the oficial?

eried:

Markus_L811:
Damm!

Serial Monitor is brocken no Serial output from the Leonardo

Works with the official?

Yes there is it ok

Following what damago1 found:

  1. IDE is initiating the auto-reset of the Leonardo (using the serial port selected in the Tools > Serial Port menu). It does it by opening the virtual com port at 1200 baud and then closing it. This is a signal for firmware to reset the processor of Leonardo, and the virtual (CDC) serial/ COM port disappears from the list.
  2. the Arduino software waits for a new virtual (CDC) serial / COM port to appear - one that it assumes represents the Leonardo bootloader. It then performs the upload on this newly-appeared port.

I can guess the port should change for the serial monitor too, but I don't know how the official one works if I don't see any difference in these routines and I don't know how to replicate the Leonardo behavior with another board to test, so for the moment I can't do anything to fix this.

Some people asked for a Boards editor. I was working on the parser and it is working perfectly, but now I am thinking on the UI. Of course I want to add some automated stuff (the image below only show simple text entries):

But before I start to enhance this part (will like to get comments about this):

  1. I think it is enough having Save as... and delete, the last item will be not deletable.

  2. Application will require admin privileges on launch (due the location of boards.txt)

  3. Instead of doing a custom UI, I can use http://www.devcomponents.com/dotnetbar/img/PropertyGrid2.png typical propertygrids (requires work too, create a special class with properties)

  4. Maybe it will be nice if the app can "disable/enable" boards? much like the library editor?

But before I start to enhance this part (will like to get comments about this):

  1. I think it is enough having Save as... and delete, the last item will be not deletable.

  2. Application will require admin privileges on launch (due the location of boards.txt)

  3. Instead of doing a custom UI, I can use http://www.devcomponents.com/dotnetbar/img/PropertyGrid2.png typical propertygrids (requires work too, create a special class with properties)

  4. Maybe it will be nice if the app can "disable/enable" boards? much like the library editor?

  1. hard qestion, I don't know

  2. if it is so there is no way around

  3. looks nice, both is good.

  4. Vote for it.

Is there any plan/intention to enhance the MPIDE as well?

That MPIDE is basically 99.99% the same stuff as the Arduino IDE.

Not really. But all my changes are inside the github repository :slight_smile:

BTW: I don't trust Microchip, they can skin their chipkit with a friendly arduino face but they are evil inside :fearful: (my first experience with microcontrollers was in the time where picbasic was the king, everything was closed and microchip controlled our lifes :stuck_out_tongue: now I am sure they try to do the same if they get more market one day)

eried,
Have you & Josh Marinacci considered getting together?

This running update of 3 IDEs is a bit confusing.

Well, I guess 4 now with the DUE IDE also.

CrossRoads:
eried,
Have you & Josh Marinacci considered getting together?

Arduino Forum

This running update of 3 IDEs is a bit confusing.

Well, I guess 4 now with the DUE IDE also.

5, with Teensyduino - which will modify a stock 1.0.1 or 1.0.2 Arduino installation to add Teensy support, but won't modify an Arduino ERW 1.0.2 (I tried). Which means I get to use ERW when programming Arduino boards, but can't use it when programming Teensy boards - and I miss the enhancements.

Well, 6 with the Teensy 3.0 environment which is separate again. But these are all forks or modifiers to the Arduino IDE.

CrossRoads:
eried,
Have you & Josh Marinacci considered getting together?

Arduino Forum

This running update of 3 IDEs is a bit confusing.

Well, I guess 4 now with the DUE IDE also.

5 IDE's heheh... my original idea fixing the things (years ago) was to get something fixed someday in the official ide. Since that will never happen, I decided to build this mod mainly just for windows+arduino users (specially for me).

I don't know if everyone noticed but the crusade seems to be pretty effective. Almost no one is now posting or discussing the same drivers/sloweness/installation issues in the forum (I was pretty tired seeing the same issues again and again, even in some 'arduino workshops' a big part of the time is used just to teach how to get the IDE running)

I don't have any other board rather than a couple of arduinos, I have received some requests from people because they experience a lot of the same issues in derivated IDE's but besides providing feedback and hints, doing something it is just too much work.

So, in conclusion, this mod is just a temporal solution, I may eventually update the ide to 1.5 but Josh solution is a much better approach and I will love to see any alternative IDE replacing the Arduino IDE in the future, but our work is not very shareable.

I'll put in my pennies worth.

You have done a great job,
kept the focus , and fixed the bugs that have been driving us all crazy
and made the windows installation as easy as it should be,

How difficult would it be to put an option under "preferences" to bypass the automatic generation of protypes by the IDE preprocessor? Just leave the .pde/.ino file untouched as a C++ file prior to "merging" with the library source to produce the .cpp file for actual compilation by gcc. That would be a nice addition to the the "external editor" option, if feasible. Eliminate (well, bypass) a whole class of long-standing bugs in the IDE.

pico:
How difficult would it be to put an option under "preferences" to bypass the automatic generation of protypes by the IDE preprocessor? Just leave the .pde/.ino file untouched as a C++ file prior to "merging" with the library source to produce the .cpp file for actual compilation by gcc. That would be a nice addition to the the "external editor" option, if feasible. Eliminate (well, bypass) a whole class of long-standing bugs in the IDE.

Hi, what kind of bugs? can you elaborate a Little more about the benefits of this feature?