Arduino 1.0 Beta Release

Sounds like Arduino 1.0 Beta is out, go get it now (and 64-bit linux is there too :D)

Windows: http://files.arduino.cc/downloads/arduino-1.0-beta1.zip
Mac OS X: http://files.arduino.cc/downloads/arduino-1.0-beta1.dmg
Linux (32-bit): http://files.arduino.cc/downloads/arduino-1.0-beta1.tgz
Linux (64-bit): http://files.arduino.cc/downloads/arduino-1.0-beta1-64.tgz
Source: http://files.arduino.cc/downloads/arduino-1.0-beta1-src.tar.gz

What is the difference?

Senso:
What is the difference?

http://code.google.com/p/arduino/wiki/Arduino1

http://code.google.com/p/arduino/issues/list?can=1&q=Milestone%3D1.0+status%3AFixed

Code: https://github.com/arduino/Arduino/tree/new-extension

When users were asked about changes wanted for the new version, is there anything new, really?

And why can't they design button that would be nice to use, now they have just changed places and are still looking as illogical as before.

Oh, this is just the Beta, and the final version gets the improvements on the user interface too?
:roll_eyes:

EDIT. Btw, why is the preferences still located in the same old folder, that is so stupid solution. If I wan't to use two IDE's at the same time, they are using the same preference-file for both.

Cheers,
Kari

I'll wait for enough guinea pigs to test the water. I just recently upgraded from 0018/19 to 0022. Not ready to make another upgrade yet. I hope the weird "lacking space between text and left window edge" is fixed. It's an eye sour.

The arduino beta IDE is awkward when writing libraries. In the hardware > arduino > cores > arduino > main file is the code that is uploaded onto the arduino. The beta-version is below:

#define ARDUINO_MAIN
#include <Arduino.h>

int main(void)
{
	init();

	setup();
    
	for (;;)
		loop();
        
	return 0;
}

In the non-beta IDEs, the code is

#include <WProgram.h>

int main(void)
{
	init();

	setup();
    
	for (;;)
		loop();
        
	return 0;
}

Notice the #include bit at the top. It is #include <WProgram.h> in the non-beta IDEs, and #include <Arduino.h> in the beta version. When writing a library, you use the #include <Arduino.h> or #include <WProgram.h> at the top to allow your library access to all the arduino functions. The #include <Arduino.h> statement only works on the beta version (I think), and the #include <WProgram.h> statement only works on the non-beta IDEs. To get a library to work on both versions, you need two different versions of the library, which is simply annoying.

Onions.

On the mailing list the following snippet came by.

#if defined(ARDUINO) && ARDUINO >= 100
  #include "Arduino.h"
#else
  #include "WProgram.h"
#endif

Regards,
Jeroen

So Onions,

The Wprogram.h is removed and replaced by Arduino.h?

I suppose you can Ctrl+A then Ctrl+C in Arduino.h and Ctrl+V in an empty file and save it as Wprogram.h

You will have to do this for every new IDE release since things may change inside the Arduino.h

Or can you simple set up a Wprogram.h so its first line is #inlucde <Arduino.h> ?

The Wprogram.h is removed and replaced by Arduino.h?

Yes, it is, which is annoying.

I suppose you can Ctrl+A then Ctrl+C in Arduino.h and Ctrl+V in an empty file and save it as Wprogram.h
You will have to do this for every new IDE release since things may change inside the Arduino.h

Yes, that should work. The only problem is that I cannot find arduino.h or WProgram.h ... :blush:

Onions.

Yot:
On the mailing list the following snippet came by.

#if defined(ARDUINO) && ARDUINO >= 100

#include "Arduino.h"
#else
 #include "WProgram.h"
#endif




Regards,
Jeroen

One potential big problem with that (unless they changed things in 1.0) is that the define ARDUINO is hard coded in the JAVA code.
After release 0016 the ARDUINO define was removed from a header file and hard coded into the JAVA code as a -D option to
the compiler. Because of this, people that want to use Makefiles (not use the IDE) have no way of knowing which version of Arduino software
they are dealing with.

I'll have to go off and look at the 1.0 files and see what they have done.

UPDATE:
Yep, Still doing stuff in Java rather than using a define in a header file:
https://github.com/arduino/Arduino/blob/new-extension/app/src/processing/app/Base.java
https://github.com/arduino/Arduino/blob/new-extension/app/src/processing/app/debug/Compiler.java

--- bill

Is there any news about Arduino 1.0 release date?

They are currently in release candidate 2 state. See Google Code Archive - Long-term storage for Google Code Project Hosting. for the download links and more informations.