Go Down

Topic: STM32, Maple and Maple mini port to IDE 1.5.x (Read 624887 times) previous topic - next topic

mrburnette

Adafruit_SSD1306_STM32 library[/b


The other day madias posted his I2C OLED and I posted my software SPI OLED a day or so afterward.  I stumbled across a YouTube video of an 128x64 OLED running on a UNO with a sketch named HariChord.
  The original sketch is here.

I reworked it for the Maple Mini and it occurred to me that since I was using software SPI, I had full control of the pins.  And, the datasheet for the OLED indicated that the maximum sink current was only 15mA.  That means, it can be connected on a solderless breadboard without wires!  One pin can supply the Vcc and the adjacent pin the Gnd (sink.)  Here is what that looks like.  I have seen this done with a Nokia 5110, but until now, I never considered a low-current OLED for quick prototyping (I always manage to screw up one or more of those colored jumpers.  And the jumpers are always going bad!)

And here is the sketch for HariChord on the Maple Mini:
Code: [Select]
/*
   Using Display: http://www.ebay.com/itm/301504841805
   Compiled Arduino GUI 1.6.1 on 2015-04-01 by M. Ray Burnette
     Sketch uses 27,912 bytes (25%) of program storage space. Maximum is 108,000 bytes.
     Global variables use 5,616 bytes of dynamic memory.
   THIS VERSION OF SSD1306 IS SOFTWARE SPI ONLY!!!
   https://github.com/hwiguna/g33k/blob/master/ArduinoProjects/128x64_OLED/HariChord/HariChord.ino
 */

  #include ".\Adafruit_GFX.h"
  #include ".\Adafruit_SSD1306.h"


  // software SPI works on Maple Mini ARM 32-bit
  // use these settings for the OLED display...
  // These pin #'s are for Maple Mini/UNO/Nano/Mini328
  //     __Signal__Maple_//__OLED 128x64___
  #define OLED_DC   22   //   D/C   6
  #define OLED_RST  21   //   RST   5
  #define OLED_MOSI 20   //   SDA   4
  #define OLED_CLK  19   //   SCL   3
  #define OLED_CS   14   //   ---   x Not Connected
  Adafruit_SSD1306 OLED(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RST, OLED_CS);


int nFrames = 36;

void setup()   {
  pinMode(17, OUTPUT);
  pinMode(18, OUTPUT);
  digitalWrite(17, LOW);
  digitalWrite(18, HIGH);
  // by default, we'll generate the high voltage from the 3.3v line internally! (neat!)
  OLED.begin(SSD1306_SWITCHCAPVCC);
  // init done
 
  // Show image buffer on the display hardware.
  // Since the buffer is intialized with an Adafruit splashscreen
  // internally, this will display the splashscreen.
  // NOTE: You _must_ call display after making any drawing commands
  // to make them visible on the display hardware!
  OLED.display();                // Adafruit Splash
  OLED.clearDisplay();           // Clear the buffer.
  // Y = 15 is the Blank Line between yellow / blue
}


void loop() {
  for (int frame=0; frame < nFrames; frame++)
  {
    HariChord(frame);
  }

  for (int frame=(nFrames-1); frame >= 0; frame--)
  {
    HariChord(frame);
  }
}

void HariChord(int frame)
{
  OLED.clearDisplay();
  int n = 7;
  int r = frame * 64 / nFrames;
  float rot = frame * 2*PI / nFrames;
  for (int i=0; i<(n-1); i++)
  {
    float a = rot + i * 2*PI / n;
    int x1 = 64 + cos(a) * r;
    int y1 = 32 + sin(a) * r;
    for (int j=i+1; j<n; j++)
    {
      a = rot + j * 2*PI / n;
      int x2 = 64 + cos(a) * r;
      int y2 = 32 + sin(a) * r;
      OLED.drawLine(x1,y1, x2,y2, WHITE);
    }
  }
  OLED.display();
 }


Several hundred bytes of SRAM and flash were saved by gutting Limor's OLED driver and removing the I2C and hardware SPI code.  Code compiled under 1.6.1

Full ZIP including libs attached.

Ray

rogerClark

Ray

That's very cool !

PS. I did wonder when you said "no wires" how it could be connected via the ether ;-)

Unfortunately I only have one breadboard and its full of other stuff, so I will probably do the same thing but using wires.

Freelance developer and IT consultant
www.rogerclark.net

rogerClark

@All

Just an update on the latest version of the IDE (version 1.6.3)  and it still has the same issues for us.

Specifically, the ARM compiler is not installed by default, and even if you go into the boards manager and install it, the path to the compiler is no longer in the IDE install folder tree (its in %appdata%/Arduino15 on the PC)

So for the moment the last supported version if 1.6.1

It would not be hard to change platform.txt to use the new location for the ARM compiler, but this would break the repo for all existing users unless they updated to 1.6.3 - which is probably not a good idea as the rate of change on the IDE at the moment seems ridiculous

PS. I did enjoy reading this issue on GitHub for the IDE.

https://github.com/arduino/Arduino/issues/2838

i.e @Wackerbarth is basically saying that 1.6.2 was such a major change that it should have been released as 1.7.0

Which I totally agree with.



I'm sure I'm going to need to support this new system fairly soon, and there are a couple of options being laid out by the IDE team, neither of which seem that good to me

1. Install board via zip file.
This is OK if you are installing something which needs a completely different compiler e.g the Xensia compiler (MIPS) for the ESP8266 wifi boards, however as the Due already installs the ARM compiler, it seems wasteful to have to package the compiler into a zip file - I can also see issues with compiler intenal settings with different projects using their own gcc ARM which are not quite the same as the Arduino.cc version.

2. Get the IDE to scan the "packages" folder and look for all files names "package_*.json" and combine all of these package files into one master file internally and use that as the JSON data.

This is OK, however it does require people to find the %appdata%\Arduino15 (or Arduino16 etc etc) folder and copy a file in there.
The %appdata% tree is not somewhere that people are normally supposed to access, I have a feeling it may normally be a hidden folder - which would mean its hard to access without first changing the folder settings


Personally, I think the better option would be for the IDE to have the ability to add external package source URL's and keep track of them in the preferences file.

But that would require more programming than either of the proposed options.

I guess there could be a way to get the IDE to copy a file into the %appdata% folder and then use it in the same way as proposed in (2)



Unfortunately all of this is taking up a lot of valuable time that I could otherwise devote to making progress with DMA SPI etc etc :-(
 
Freelance developer and IT consultant
www.rogerclark.net

ardcp

Having just received a low cost Marple Mini board, I wanted to move a project including u8glib and M2tklib from an Arduino Mega to this board due to the smaller dimensions. The memory of an arduino mini is not big enough for the menu system, and as I came across the Marple mini, it looked promising due to (kind of) Arduino compatibility.
I have Kubuntu 14.10 with Arduino Ide 1.6.1 and latest maplemini installed.

As @PaulRB, #1883, I had the same errors showing up with regard to the u8glib (avr version).
What follows is just my observations and results after some changes to the maple files.

The error messages showed function declarations either including default values or the same function name with different number of arguments.

After investigating the header files in STM32F1/cores/maple, I discovered that some of the header files have function declarations including c++ syntax, like default values for arguments.
And bool gave problems too.

The Arduino.h includes wirish.h and this then includes the header files, giving problems in .c files.

To test it out, I moved the default argument values from io.h to wirish_digital.cpp and added bool/boolean definitions to wirish_types.h.
At the end I changed the wirish.h to include/exclude headers depending on c/c++.

Code: [Select]

#include <pwm.h>
#ifdef __cplusplus
#include <ext_interrupts.h>
#include <wirish_math.h>
#endif
#include <wirish_debug.h>
#include <wirish_time.h>
#include <wirish_constants.h>

#ifdef __cplusplus
#if STM32_MCU_SERIES == STM32_SERIES_F1 /* FIXME [0.0.13?] port to F2 */
//#include <HardwareSPI.h>
#endif

#include <HardwareSerial.h>
#include <HardwareTimer.h>
#include <usb_serial.h>

#include <wirish_types.h>
#endif
#include <libmaple/libmaple.h>


The compilation then ended like this:

Code: [Select]

/tmp/build5739652790951924273.tmp/core.a -Wl,--no-whole-archive -Wl,--end-group
/tmp/build5739652790951924273.tmp/U8glib/utility/u8g_com_arduino_common.c.o: In function `u8g_com_arduino_digital_write':
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:55: warning: undefined reference to `digitalWrite'
/tmp/build5739652790951924273.tmp/U8glib/utility/u8g_com_arduino_common.c.o: In function `u8g_com_arduino_assign_pin_output_high':
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:67: warning: undefined reference to `pinMode'
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:68: warning: undefined reference to `digitalWrite'
/tmp/build5739652790951924273.tmp/U8glib/utility/u8g_com_arduino_std_sw_spi.c.o: In function `u8g_arduino_sw_spi_shift_out':
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c:55: warning: undefined reference to `digitalWrite'
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c:59: warning: undefined reference to `digitalWrite'
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_std_sw_spi.c:62: warning: undefined reference to `digitalWrite'
/tmp/build5739652790951924273.tmp/U8glib/utility/u8g_delay.c.o: In function `u8g_Delay':
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_delay.c:191: warning: undefined reference to `delayMicroseconds'
/tmp/build5739652790951924273.tmp/U8glib/utility/u8g_delay.c.o: In function `u8g_MicroDelay':
/home/cbp/sketchbook/libraries/U8glib/utility/u8g_delay.c:198: warning: undefined reference to `delayMicroseconds'
/tmp/build5739652790951924273.tmp/M2tklib/utility/m2esarduino.c.o: In function `m2_arduino_check_key':
/home/cbp/sketchbook/libraries/M2tklib/utility/m2esarduino.c:85: warning: undefined reference to `digitalRead'
/tmp/build5739652790951924273.tmp/M2tklib/utility/m2esarduino.c.o: In function `m2_arduino_setup_key':
/home/cbp/sketchbook/libraries/M2tklib/utility/m2esarduino.c:55: warning: undefined reference to `pinMode'
/home/cbp/sketchbook/libraries/M2tklib/utility/m2esarduino.c:56: warning: undefined reference to `digitalWrite'
/tmp/build5739652790951924273.tmp/M2tklib/utility/m2esarduino.c.o: In function `m2_get_rot_enc_get_key':
/home/cbp/sketchbook/libraries/M2tklib/utility/m2esarduino.c:215: warning: undefined reference to `delay'
/home/cbp/work/arduino/ide/arduino-1.6.1/hardware/tools/gcc-arm-none-eabi-4.8.3-2014q1/bin/arm-none-eabi-objcopy -O binary /tmp/build5739652790951924273.tmp/HotHandHeldSPI.cpp.elf /tmp/build5739652790951924273.tmp/HotHandHeldSPI.cpp.bin

Sketch uses 51.620 bytes (47%) of program storage space. Maximum is 108.000 bytes.
Global variables use 6.968 bytes of dynamic memory


As explained on the u8glib wiki, some functions need to be defined for the arm, this fits the undefined references.
I have not yet looked into this as I do not know if it is a good idea to continue fixing the issues.
I might be wrong, but it appears that the Arduino compatibility needs an overhaul in order to use existing Arduino code/libraries where possible without a major re-write.

Haven't tried upload yet.

rogerClark

Hi @ardcp

Re: Bool

I thought I'd added the typedef for that to the repo after Paul reported the error, but I'd nee to double check.

Re: Errors

Could you post the errors from a version of the repo that you have not modified. Its not really possible for me to attempt to work out what's gone wrong on modified versions of the repo


That being said, a lot of libraries don't work on STM32 in the same way that a lot of libraries don't work on the Due. This can be for a variety of reasons, some time its programming assumptions in the library e.f. size of an int or size of a word etc etc

Sometimes its a difference in libmaple  - however as time has gone by, and bugs / issues have been reported, I've attempted to make libmaple as close as possible to functioning the same as on AVR



Also. Someone may already have ported that library, Ray and Matthias have ported a lot of libs, but  must admit I'm loosing track of what has been ported.

Perhaps one of them will reply to your question as well.
Freelance developer and IT consultant
www.rogerclark.net

ardcp

Hi @rogerClark

Re: Bool

Yes it is typedef'd, but a header appears to be missing.
I added a piece of code from somewhere else to get going, maybe this can give you a hint:

Code: [Select]

/**
 * Variable attribute, instructs the linker to place the marked
 * variable in Flash instead of RAM. */
#define __FLASH__ __attr_flash

#ifdef __cplusplus
    typedef bool boolean;
#else
    typedef uint8_t boolean;
typedef uint8_t bool;
    #define false 0
    #define true !false
#endif


Re: Errors

Some danish text might show up  8)

Code: [Select]

Arduino: 1.6.1 (Linux), TD: 1.21-beta10, Board: "Maple mini generic - experimental, gcc-4.8.3, HSIO OFF, DebugOFF, F103CB(128k) USB->Flash"

Build options changed, rebuilding all
Using library M2tklib in folder: /home/cbp/sketchbook/libraries/M2tklib (1.0.x format)
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:54:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/io.h:184:32: error: expected ';', ',' or ')' before '=' token
 uint8 isButtonPressed(uint8 pin=BOARD_BUTTON_PIN,
                                ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/io.h:204:47: error: expected ';', ',' or ')' before '=' token
 uint8 waitForButtonPress(uint32 timeout_millis=0);
                                               ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:57:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/ext_interrupts.h:90:6: error: conflicting types for 'attachInterrupt'
 void attachInterrupt(uint8 pin, voidArgumentFuncPtr handler, void *arg,
      ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/ext_interrupts.h:69:6: note: previous declaration of 'attachInterrupt' was here
 void attachInterrupt(uint8 pin, voidFuncPtr handler, ExtIntTriggerMode mode);
      ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:59:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish_math.h:58:6: error: conflicting types for 'random'
 long random(long min, long max);
      ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish_math.h:49:6: note: previous declaration of 'random' was here
 long random(long max);
      ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:38:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:67,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Print.h:37:1: error: unknown type name 'class'
 class Print {
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Print.h:37:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
 class Print {
             ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:40:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:67,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Stream.h:38:1: error: unknown type name 'class'
 class Stream : public Print
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Stream.h:38:14: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
 class Stream : public Print
              ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:67:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:108:1: error: unknown type name 'class'
 class HardwareSerial : public Stream {
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:108:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
 class HardwareSerial : public Stream {
                      ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:169:2: error: unknown type name 'HardwareSerial'
  extern HardwareSerial Serial1;
  ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:172:2: error: unknown type name 'HardwareSerial'
  extern HardwareSerial Serial2;
  ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareSerial.h:175:2: error: unknown type name 'HardwareSerial'
  extern HardwareSerial Serial3;
  ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:68:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareTimer.h:44:1: error: unknown type name 'class'
 class HardwareTimer {
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareTimer.h:44:21: error: expected '=', ',', ';', 'asm' or '__attribute__' before '{' token
 class HardwareTimer {
                     ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareTimer.h:303:1: error: unknown type name 'HardwareTimer'
 extern HardwareTimer Timer1;
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareTimer.h:309:1: error: unknown type name 'HardwareTimer'
 extern HardwareTimer Timer2;
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareTimer.h:315:1: error: unknown type name 'HardwareTimer'
 extern HardwareTimer Timer3;
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/HardwareTimer.h:321:1: error: unknown type name 'HardwareTimer'
 extern HardwareTimer Timer4;
 ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:69:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/usb_serial.h:41:1: error: unknown type name 'class'
 class USBSerial : public Stream {
 ^
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/usb_serial.h:41:17: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
 class USBSerial : public Stream {
                 ^
In file included from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/wirish.h:69:0,
                 from /home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/Arduino.h:30,
                 from /home/cbp/sketchbook/libraries/U8glib/utility/u8g_com_arduino_common.c:47:
/home/cbp/sketchbook/hardware/Arduino_STM32/STM32F1/cores/maple/usb_serial.h:79:2: error: unknown type name 'USBSerial'
  extern USBSerial Serial;
  ^
Fejl i kompilering.

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.



Re: Libraries

Some libraries are on a higher level using the higher level api which ought to work across different architectures with comparatively few changes. Good that some people have the energy to do that.
As an aside, the code compiles for a teensy 3.1 without errors.


mrburnette

#2121
Apr 03, 2015, 02:24 pm Last Edit: Apr 03, 2015, 02:58 pm by mrburnette
UPDATE:
I just did my first compile of STM32 for my Maple Mini on version 1.7.0 from Arduino.org and the code is running perfectly with no compile errors.




Quote
2. Get the IDE to scan the "packages" folder and look for all files names "package_*.json" and combine all of these package files into one master file internally and use that as the JSON data.

This is OK, however it does require people to find the %appdata%\Arduino15 (or Arduino16 etc etc) folder and copy a file in there.
The %appdata% tree is not somewhere that people are normally supposed to access, I have a feeling it may normally be a hidden folder - which would mean its hard to access without first changing the folder settings
IMO - we definitely do not want to do this!!!

Lots of noise about this here:  forum link

IF I have time today, I'm going over to the other Arduino side and try their 1.7 release.  This movement of binaries outside the program folder in windows is BS... bull crap.  I do not know what the Arduino development team is trying to do other than to FU the entire history of how Arduino is installed ... from a ZIP unzipped into \Program Files\ Arduino

Generally speaking, Windows 7 and above will allow the logged-on console operator to install code in hidden places, but usually the operator must click on the Pop-Up dialog to give the script administrative permission.  If the operator is not an administrator, then the install is likely to fail unless a policy has been set to permit the user to have RWC access to those hidden locations.

If this is the havoc that the Arduino-Arduino wars is going to create - I'm dropping the GUI and moving elsewhere.  Before these fools kill each other and the Arduino brand, they better move the Java GUI to a 3rd party for support and development.  Otherwise, it is the kiss of death as other GUI's are capable of compiling Arduino'ish code.


Opinion by Ray
MCSE


mrburnette

#2122
Apr 03, 2015, 03:10 pm Last Edit: Apr 03, 2015, 03:11 pm by mrburnette
Hi @ardcp

Re: Bool

I thought I'd added the typedef for that to the repo after Paul reported the error, but I'd nee to double check.

I just checked: bool and boolean  compile.  It has been a very long time since I had an issue with this type.  I am using Windows 8.1

Ray

victor_pv

#2123
Apr 03, 2015, 03:43 pm Last Edit: Apr 03, 2015, 04:09 pm by victor_pv
I don't know if everyone noticed already, so just in case, leaflabs announced end of life of the maple line:
http://www.leaflabs.com/news/2015/3/27/maple-end-of-life-notice

madias

I don't know if everyone noticed already, so just in case, leaflabs announced end of life of the maple line:
http://www.leaflabs.com/news/2015/3/27/maple-end-of-life-notice
The best time for an official takeover of STM32-Arduino? ;)

rogerClark

#2125
Apr 03, 2015, 10:35 pm Last Edit: Apr 03, 2015, 10:37 pm by rogerClark
Hi Ray,

Unfortunately I totally agree with you regarding the way the IDE is going :-(

I posted to the Boards Manager issue on GitHub yesterday, alerting the dev team about how they are in violation of Microsofts guidelines on the use of the AppData folder, which is not intended to store binaries, but only to store settings and other user generated items.

However, this has been ignored. I also noted the Linux users being very unhappy about how this data is stored for them.


Centralisation of control of both the boards and the libraries, smacks of selling out to commercialisation.

The library manager now looks like an advertising system for AdaFruit. Possible because of the alphabetical listing.


I will definitely take a look at Arduino.org and do whatever I can to facilitate any move to a more democratic , community driven Arduino

I wonder how long before someone comes up with a new name for Arduino

Ourduino perhaps ;-)
Freelance developer and IT consultant
www.rogerclark.net

rogerClark

#2126
Apr 03, 2015, 10:47 pm Last Edit: Apr 03, 2015, 11:24 pm by rogerClark
Guys

I wonder how this will effect their wiki and also the old leaflabs forum.

It looks like the wiki is still there, but it only may be a matter of weeks before they turn off the server

I did anticipate this a few months ago, and downloaded the wiki to my local machine, but I didn't scrape the forum.

I guess I better fire up my scraper and see if it will be able to scrape the forum, and any attachments etc.


I guess I could contact Matri, via GitHub and ask for a zip of the wiki, but I don't know if its worth asking for the forum data files, even if they'd give them to me, as I've no idea what forum engine they use, or whether it would be practical to host it in my domain or to buy a new domain to host it on.

If a static scrape of the forum works, I could possibly upload those files to my site or to GitHub, but I'm not sure about copyright. Well I'm sure I better ask ;-)

However, I've already attempted to contact all team members listed for leaflabs, without much success.

Marti sometimes responds to issues on GitHub but hardly ever to emails.

But I will post a comment on their notification page and also contact the forum moderator


Edit. I notice they say that the forum and wiki will keep running. However I wonder how long that will be for.

I will ask I can host the wiki files on GitHub


Freelance developer and IT consultant
www.rogerclark.net

ahull

#2127
Apr 04, 2015, 01:08 am Last Edit: Apr 04, 2015, 02:12 am by ahull
@Ray

"UPDATE:
I just did my first compile of STM32 for my Maple Mini on version 1.7.0 from Arduino.org and the code is running perfectly with no compile errors."

I can verify that 1.7.0 from Arduino.org works fine with my generic STM32 board and the "Maple Mini Generic - experimental" board type, on Ubuntu Linux - Ubuntu 14.04.2 LTS  (Trusty Tahr) - or to be more accurate I grabbed an old Futaba style servo from my junk box and fired on a quick servo lib sketch, and that compiles and runs without any issues as before. I'm sitting watching the servo rotate an old plastic pot looking for all the world like a demented gun turret.

It looks like the 1.7.0 may be the way to go, at least in the short term. I have to confess I have also been playing with Eclipse and a few other options, just in case the Arduino IDE was about to implode SCO Unix style by litigating itself to death. 


rogerClark

Hey guys,

Is Arduino.org effectively Arduino SLC who make boards, i.e the other half of Arduino vs Ardunino

Or are they someone else, it looks like they are Arduino SLC to me ???
Freelance developer and IT consultant
www.rogerclark.net

ahull

#2129
Apr 04, 2015, 03:00 am Last Edit: Apr 04, 2015, 03:00 am by ahull
Hey guys,

Is Arduino.org effectively Arduino SLC who make boards, i.e the other half of Arduino vs Ardunino

Or are they someone else, it looks like they are Arduino SLC to me ???

According to Hackaday... ¨...Arduino SRL opened up the website arduino.org...¨  

Go Up