RoadTest: STMicroelectronics STM32VLDISCOVERY
Author: gbrettell
Creation date:
Evaluation Type: Evaluation Boards
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: NXP mbed
What were the biggest problems encountered?: First, the software had to be found, then downloaded. Second, the evaluation board does not readily fit onto a standard breadboard. Finally, it takes quite a bit of time to collect everything you need to get started (software & supporting documents).
Detailed Review:
Thank you Element14 and STMicroelectronics for giving me the opportunity to Road Test and review this new development board.
The STM32 Value line discovery evaluation board is built around the STM32F100RBT6B microcontroller.
The features for the STM32VLDISCOVERY evaluation board look great! The cost ... WOW, only $15.49 (http://us.element-14.com/stmicroelectronics/stm32vldiscovery/stm32-value-line-discovery-kit/dp/21T4023?Ntt=STM32VLDISCOVERY) .
This kit Features:
STM32F100RB microcontroller, 128 KB Flash, 8 KB RAM in 64-pin LQFP
On-board ST-Link with selection mode switch to use the kit as a stand-alone ST-Link (with SWD connector)
Designed to be powered by USB or an external supply of 5 V or 3.3 V
Can supply target application with 5 V and 3 V
Two user LEDs (green and blue)
One user push button
Extension header for all QFP64 I/Os for quick connection to prototyping board or easy probing (so they claim ... read on)
Description:
The STM32VLDISCOVERY is a low-cost and quick way to discover the STM32 value line. It includes everything required for beginners and experienced users to get started quickly. The STM32 value line Discovery includes an STM32F100 value line microcontroller in a 64-pin LQFP and an incircuit ST-Link debugger / programmer to debug Discovery applications and other target board applications. A large number of free ready-to-run application firmware examples are available on www.st.com/stm32-discovery to support quick evaluation and development using the LEDs, button and extension header for connection to other boards or devices.
(reference: Kit Features & Description from the STMicroelectronics Website.)
The first problem I experienced was "getting started quickly." In summary, this Road Test was like checking out a cool new car with an awesome engine but without having the key to start it and take it out for a test drive.
Three links pop up (appearing like the contents on a thumb drive) when you first connect the evaluation board to the USB port on your computer (two of which lead you to information about their 8-bit microcontrollers ... why do I want that? This is a 32-bit product). The other link is to their general line of 32-bit microcontroller products ... the missing link that you REALLY need to get up-and-running with this board is here: http://www.st.com/internet/evalboard/product/250863.jsp
This seems like a big oversight -- not to include a link specific for this evaluation board.
That was the first road block to this test drive ... finding the software. Basically, I discovered that there are at least three popular third-party IDE's available ... here are the links to help save you some time & grief:
Atollic: http://www.atollic.com/index.php/download/downloadstm32
Keil: https://www.keil.com/demo/eval/arm.htm
IAR: http://www.iar.com/website1/1.0.1.0/675/1/
(See attached for photos and screenshots of the IAR Embedded Workbench.)
After finding and installing your IDE of choice, you will want to dig around on the ST website ... there, you can find quite a bit of information; however, this takes a lot of time and effort, and wears you down (after a while) ... oh how I wish an installation disk (or thumb drive) came with this package - so that I wouldn't have to search and download a variety of software and documents, just to get started ... arghhhhh! I think it would be well worth the extra costs involved to include these files as a convenience (even if that means this evaluation board will cost $19.99 as a result - that's still cheap!!).
I spent so much time just trying to get started that I have not been able to go very deep into what this Discovery board can really do (yet). So ... this review is based more on the surface (for someone new to STM products and more about getting set-up to start developing applications with this evaluation board). I had similar frustration with the AVR Xplain board ... same scenario ... it did not include any software with the package. In comparison, with the NXP mbed, I was programming in no time. Microchip is another excellent example for how I believe development boards should be packaged (include everything you need to get started).
I tried all of the examples for this board (included with the AN3268 firmware package) ... most of which will leave you bored . http://www.st.com/internet/evalboard/product/250863.jsp
The AN3268 "STM32VLDISCOVERY firmware package" describes the STM32VLDISCOVERY package structure and provides short descriptions of:
STM32VLDISCOVERY firmware demonstration.
Examples covering some of the STM32 value line features.
Standard firmware library.
(reference: Description from the STMicroelectronics Website.)
With only 2-LEDs and 1-user button, there is not much to showcase out-of-the-box. Next, as other reviewers have noted, the layout of the demo board does not lend itself to being proto-type friendly. Yes, it has header pins ... but no, they do not fit onto a standard breadboard.
I found these links to be helpful in the process of getting started:
http://www.emcu.it/STM32Discovery/STM32ValueLineDiscovery.html
http://embeddednewbie.blogspot.com/2011/01/free-toolchains-for-stm32vldiscovery.html
(Note: Some of these examples require that you request a password in order to un-lock the code archive, once you download it.)
Since the STM32VLDISCOVERY has an embedded ST Link, you might find this standalone ST-Link utility software useful:
http://www.st.com/internet/evalboard/product/219866.jsp#SOFTWARE_AND_DEVELOPMENT_TOOLS
The embedded ST-Link interface facilitates programming, erasing, tracing, single-stepping and viewing the MCUs core registers with or without using an IDE (when using the ST Link utility).
After what seemed like hours of searching and downloading files, I finally had the "keys' to start this Road Test. So, I tried the Atollic package first, based on the fact that it has no code size limit (the other two are restricted to 32kb for their "trial" version). The Atollic IDE has an annoying reminder (splash screen) that pops up after EVERY attempt to "edit-compile-advertisement-debug" (not your typical development cycle process). The advertisement stays up a minimum of three seconds, which then you have to use a mouse-click to get rid of it. That gets old really quick. (I guess it's not enough that you get that message every time you launch the program.)
After a few debug sessions with Atollic, it just stopped working. I kept getting error messages to the effect that I was not connected. I tried EVERYTHING ... re-booting, re-installing, re-configuring, re-connecting to no avail. I was starting to believe that my board had a problem!
(See attached screenshot for one of the typical error messages I was receiving.)
So ... just to exhaust my other options, I downloaded the Keil package and gave that a whirl. Still ... similar error messages. After I had enough frustration with the Keil IDE, I downloaded the IAR package. Again ... similar error messages.
So much for getting started quickly! I eventually (carefully) read blogs, forums, manuals - which did not really help at all. With the IAR package, I kept getting errors such as, cannot halt the core ... and connection issues.
Finally, out of total frustration, I started a vicious loop of trying to "download and debug" then closing all of the fatal error messages (each try) ... all of the sudden (after 14-attempts - don't ask why so many?!) it WORKED! I have no idea how or why, I was just glad that the electronic CPR worked. It probably has something to do with the timing of halting the core within the ST-Link control during the programming cycle (just a guess).
All was well (for a while anyway). Just when I was starting to enjoy exploring, programming, and debugging with this new evaluation board ... it happened again! When I tried to run the SLEEP example project ... it programmed just fine ... then went into oblivion (it seriously went into a deep sleep - more like a coma). I was having the same errors as before. This time, I learned that the trick was in the timing of holding the board reset button and letting go at the right moment as I'd select the "download and debug" option with the mouse. So it seems as though the microcontroller was being loaded with some kind of glitch that it cannot recover from, and in order to regain communication with the board, I had to re-program it right before it would start the current program that was last programmed into FLASH. (Again ... I don't really know what was going on - just a guess .. perhaps someone out there can enlighten me.) in addition, I experienced (random) situations where I had to switch USB ports (on my PC) just to re-gain communication with this board. Maybe the embedded ST-LINK needs a revision to correct these problems(?).
That was my personal experience ... maybe I got a "lemon' ... your mileage may vary.
So which IDE can I recommend? Here is a summary:
Atollic: In a word ... "un-install" (better yet, don't even install it in the first place ... no matter how tempted you are with the un-restricted code size bait). I'm sure the "paid' version is O.K. ... I was just irritated with the constant advertising pop-ups.
Keil: I tried this IDE once again, after I got the board to work again ... and it was functional; however, I just didn't care for it. Personally, I just don't like the interface.
IAR: After trying all three, I prefer this IDE over the other choices. Plus, it resurrected my board.
By all means, try all three (if you have the time) ... you may find that you prefer a different flavor.
Each IDE is about a 500+ MB download ... nothing "lite" about that. I wish that there was an IDE that was truly intended & designed for the evaluation of this STM32VLDISCOVERY board. A bare-bones software package that didn't include support for the other billion brands/varieties of other microcontroller out there. In addition, I would favor the inclusion of an installation disk ... even if it would raise the cost of the product. I wasted so much time just trying to gather the necessary software and supporting documents to get started. I hate having to search for (and download) files in order to try out a new board.
Bottom Line:
How can one complain ... this board is CHEAP (pricewise) and has so much potential; however, I was so distracted just trying to get up-and-running that I had a hard time evaluating the actual ST Microcontroller, itself.
Pros:
Very inexpensive evaluation board.
On-board embedded debugger (ST-LINK).
Lots of Documentation (once you find it)
Cons:
Does not fit a standard breadboard. (See attached photo ...)
Does not include an install disc.
3rd party Development Toolchains (see previous notes).
Documentation (you have to hunt for it).
Top Comments
Hi Gregory,
You can PM me and I'll try to help anyway I can.
Thanks very much for the review. I really enjoyed it.
Hi Gregory,
Good review, thanks very much.
Good review great job.
thank you
Lahcen