Welcome! Log In Create A New Profile

Advanced

Confusion in Boards Folder

Posted by jcabrer 
Confusion in Boards Folder
April 14, 2013 10:44AM
I'm trying to expand my firmware testing regimen to include multiple electronics, operating systems, and Arduino IDE versions, and so I'm starting to find little things here and there that don't look right.

In the Boards folder that is included with the firmware, contents are postfixed with 1.0+ and pre 1.0, and this is used to indicate that the contents of those folders are intended for Arduino IDE 1.0 and up, or Arduino 023 and prior.

So here is the confusing bit:

In Repetier Firmware 0.8x releases
1. There is no Boards/Sanguino pre 1.0/;boards/Arduino pre 1.0, which leads one to believe that pre 1.0 is no longer supported, but then you can see that gen7 pre 1.0 is still there, so it sends two messages.
2. The path boards/Sanguino 1.0+/ contains folders named Sanguino for 023 and Sanguino for 018. This is also the case in earlier 0.71.

In Repetier Firmware 0.71
1. The path boards/Sanguino 1.0+/ contains folders named Sanguino for 023 and Sanguino for 018.
2. The path boards/Sanguino pre 1.0/ contains only the Wiring_serial.c file.

So both folders imply that they contain stuff to be put into Arduino IDEs pre 1.0, but nothing to be put into Arduino 1.0+

I noticed that there is a line at the begining of configuration.h in newer versions:

// Uncomment the following line if oyu are using arduino compatible firmware made for Arduino version earlier then 1.0
// If it is incompatible you will get compiler errors about write functions not beeing compatible!
//#define COMPAT_PRE1

Now, If I break this down, it seems to say that there is Repetier firmware that is made for earlier versions of Arduino IDE, and other versions that are not. In my testing this week, I got write errors on Arduino IDE 023 with AND without #define COMPAT_PRE1.

I think what it means to say is
// If you get write errors during complie, it is because you are using a pre 1.0 version of Arduino IDE.
// Uncomment the line below to address this incompatability problem.

This doesn't quite make things right, because if you are seeing the comment, it means that you are already using firware 0.8x+, and it is already not compatible with earlier? Or compatible? I'm not sure...

If we can clear this up going forward, I think it will help greatly.

My testing covers:
Arduino IDE 023 and 1.0.4 on Windows XP, and Windows 7
Repetier Firmware 0.71, 0.8x on Sanguino, AsteegX3, and RAMPS 1.3/4
Repetier Host 0.83-0.85b
Re: Confusion in Boards Folder
April 14, 2013 01:53PM
You are right that the boards directory is a bit messy. I really should start to delete all directories and only leave some comments on using it. The main reason they were there was for Firmware < 0.80 where it contained improved serial communication routines. These are not needed any more, because 0.80 now contains them in the firmware directly. No need to copy that stuff.

The second reason was, that sanguino had no Arduino 1.0 support so put Arduino.h to it, to make it still compile. Now there are versions for Arduino 1.0 for Sanguino, so no hacking should be needed.

The COMPAT_PRE1 is indeed a signal to use the old print class style instead of the new one when compiling with Arduino 1.0.

One other thing is Arduino 023 support is shrinking. Since 0.80 the sdfat library i's not compatible with Arduino IDE <1.0. Maybe it will compile again in 0.90 when I made the sdfat library independent from the processor to allow porting to arm.


Repetier-Software - the home of Repetier-Host (Windows, Linux and Mac OS X) and Repetier-Firmware.
Repetier-Server - the solution to control your printer from everywhere.
Visit us on Facebook and Twitter!
Sorry, only registered users may post in this forum.

Click here to login