Olimexino-STM32 Maple

Anyone tried this board OLIMEXINO-STM32 - Open Source Hardware Board? I just ordered one for about $30.

It is a very much improved clone of the Maple board. It has a real Cortex M debug connector, An SD slot, RTC crystal, and a lot more.

I love SWD with STM-Studio http://www.st.com/internet/evalboard/product/251373.jsp

STM Studio is a non-intrusive tool, preserving the real-time behavior of applications.

Reads on-the-fly (non intrusive) variables from RAM while application is running

2 types of viewer:

Variable viewer - Real-time waveforms, oscilloscope-like graphs

TouchPoint viewer - Association of 2 variables, one on the X axis, one on the Y axis

Possibility to log data into a file, and replay later (exhaustive record display, not real-time)

I do feel a bit guilty buying this board since Olimex is undercutting Maple.

I have one of these and it is great.

The card works fine with a standard SDFat library (don't think there is DMA support at the time) and the RTC is a really nice thing to have. Although, to be honest, the RTC in the F4 series is a lot better, but it's also a more advanced processor.

I don't feel too bad about Olimex undercutting Maple, they put some work on the board and added stuff that makes the board a bit more useful. Also the latest Maple has more memory and DAC which this board doesn't.

I'm trying to port over the Ethernet connection to the Maple now. : )

I bought one and so far just made pin toggle sketches and I got my DFRobot LCD button shield to work with it. I am working out using a digital pot with it but, I need to get back focused on it. The STM32 has a lot of potential but, it does require more knowledge to get the most out of it.

Do you use the most recent libmaple with it ?

Apparently maple maintainer decided to merge it with the Wiring platform (the one that was cloned to derive Arduino), but it looks like that is not booking much progress.

I first was thinking of buying the Olimexino STM32 as well, and didn't because of some messages about maple IDE being buggy, etc. I bought a LPC1343 and PIC32-micro instead, but I'm not sure I did the right choice : Pinguino platform is no better, and LPC1343 toolchain setup on windows looks far from easy.

Any other opinion/help appreciated.

Got the Olimexino-STM32 and it is great. I had it running in a couple of minutes.

I bought the 20-pin to 10-pin SWD adapter for $7 and connected the Olimexino to a ST-LINK/V2. STMStudio works fine. This is a tool for run-time variables monitoring and visualization.

I use the ST-LINK Utility for program loading.

I am starting with ChibiOS/RT since that is what I use for other ARM projects.

I am using Sourcery CodeBench Lite 2011.09-69, it's free. This is the environment I use ChibiOS free embedded RTOS - This topic does not exist yet.

I don't know if I will use the Maple IDE. It uses an older version, Sourcery G++ Lite 2010q1-188.

Do you use the most recent libmaple with it ?

Yes I am using the most recent IDE provide. I was hoping to drag and drop in Arduino sketches but, some stuff works and some does not. Part of the problem is some libraries are base on specific chip hardware so, if the chip isn't the same the library won't work.

It is the easiest Arm bast board I have worked with yet and I am learning things by using it.

and LPC1343 toolchain setup on windows looks far from easy.

I had LPCXpresso installed and compiling examples in no time. I don't have any hardware to try it out on though.


Rob

I had LPCXpresso installed and compiling examples in no time. I don't have any hardware to try it out on though.

I bought a LPCXpresso Development Board and installed the software and it was really easy. My problem was that it was only useful for NXP's ARM-based LPC microcontrollers.

I was hoping to drag and drop in Arduino sketches but, some stuff works and some does not.

This is the problem with Maple and with ARM in general. Leaflabs did a great job with Maple but an ARM board can't be really compatible with the Arduino AVR boards.

ARM processors from Atmel, ST, NXP, and other manufactures are not really compatible at the peripheral level. The Cortex-M core helps but you need and OS with a HAL layer to get any compatibility.

It will be interesting to see what the Arduino group does with Due.

I like to play with many types of processors so I will do what I learned to do thirty years ago on huge scientific projects. These projects have a variety of processors in their control systems and data acquisition systems so the they use a general RTOS that supports a wide variety of processors. This allows common software throughout the project. It also allows upgrades of processors over the life of the project.

Most of these projects used commercial RTOSes like VxWorks or LynxOS.

I have been using ChibiOS since it is free and supports a lot of hardware.

x86, ARM7, ARM9, Cortex-M0, Cortex-M3, Cortex-M4, PowerPC e200z, STM8, AVR, MSP430, Coldfire, H8S

I have it running on the Olimexino board. It is really hot, benchmarks at 939,048 task context switches/second. This is for a full switch from one task to another, about one microsecond.

It is much faster at the driver/interrupt level. Here you only need to save and restore minimal context. ChibiOS also has hooks so you can write an optimized ISR independent of the OS for the max possible performance.

Hi All...

How does the performance of the Maple or this Maple clone compare to a 16MHz Arduino?

Is it true that the Maple IDE toolchain emits native code for the ARM processor?

I have a project that I'm looking for greater performance on, and I'm considering Atmel UC3 or an ARM, probably an M3 or M4. It needs more performance than an 8bit Mega can provide. I am also looking at the Netduino boards. They would be easy to code and debug, which is very nice, but .NET does not support a feature I need. Plus the .NET runtime seems like something of a resource hog.

Thanks...

and I'm considering Atmel UC3 or an ARM, probably an M3 or M4.

Is an M0 fast enough? I'm working on porting the Arduino libs to one (the LPC1227) at the moment.

Debugging is a breeze with the LPCXpresso.


Rob

Graynomad:

and I'm considering Atmel UC3 or an ARM, probably an M3 or M4.

Is an M0 fast enough? I'm working on porting the Arduino libs to one (the LPC1227) at the moment.

Debugging is a breeze with the LPCXpresso.

Like this:

Its a little thin on SRAM for my needs I'm afraid, but porting Arduino libs to an M0 is a pretty cool project!

Yes that's what I'm using. The whole system is great to use, you could get one of the larger ones like the LPC1769.

porting Arduino libs to an M0 is a pretty cool project!

A lot of fun and a good way to get to know the M0 and LPC peripherals.


Rob

Oh cool, I didn't even notice the bigger ones, the LPC1769 looks great! Pricy thought at 110 Euros. The hardware looks cool, nice evaluation boards for NXP processors. But what development tools work with these? I see they list the commercial Code Red tools, but are there any free tools that work with these?

EDIT: Maybe its not so pricy... I'll take a closer look at the web site and see if I can figure out what the "base board" is vs the Expresso board. I think that price was for a kit that includes both. These are nice boards.

Pricy thought at 110 Euros

The Xpresso board is 20 Euro, the base board is another 89 and gives a stack of IO but for my purposes that's not required. YMMV.

But what development tools work with these? I see they list the commercial Code Red tools, but are there any free tools that work with these?

You can download the Eclipse-based IDE for free, that gives you 128k program size and full symbolic debugging etc. It is however only C, not C++. To get C++ you have to buy at least the first non-free version which also gives to 256k program size. That's $256 and I'm tossing up as to weather I want C++ that much.

Keil have products as well but I'm not sure of the pricing.

I downloaded the free IDE and used a wizard to set up a project. I had a compiling program in minutes and when my hardware arrived the program downloaded and ran out of the box. Not much harder than starting with an Arduino.

The IDE has all the stuff you would expect such as code completion, folding, syntax highlighting, single stepping, breakpoints, yada yada.

I'm now getting down and dirty with the hardware and have tripped over a few things as you would expect. So far only one brick wall though and the forum guys sorted me out with that.

Overall (so far) I'm really impressed with the chip architecture and the tool chain.


Rob

They are nice boards, completely closed source though on the hardware. Probably good for prototyping software. I wonder if this would work with them:

http://www.coocox.org/CooCox_CoDebugger.htm