Most of my experience has been with Microchip PIC processors. I'm building some ARM experience, but it's been a bit of a challenge, largely due to the difference in tool sets. Boards at this price point, however, have allowed me to experiment with a number of different variants which has helped a lot. It wasn't that long ago when a typical development board would have an extra zero or two on the price.
These things are an amazing value, but the irony is that an $11.00 price puts it in the price range of students and other folks who are more likely to be needing a "toy" or educational product, which exacerbates any challenges that stem from complexity.
On the other hand, at $11.00, if you buy and aren't happy or can't get it to work, it's not like you're losing much of an investment. I suspect that I'll be compelled to buy one and try it out myself.
Many demo boards seem to show off the programmers' talents for writing complicated and cryptic code, and their lack of attention to helpful comments. I bet 99% of all demo programs lack a flow chart that helps a user determine what goes on. I recently saw a demo program that would work with almost any of the manufacturer's MCUs. Of course the program came cluttered with many, many compiler directives that linked the libraries for a given MCU, depending on the board in use. That sort of thing occurred in some of the libraries, too. Very confusing for neophytes and even seasoned programmers.
Mike, the interesting thing? Almost anyone can create an MCU demo or eval board. Few can write good code that helps people get started. Even fewer can write good educational tutorials that provide information that really helps engineers and programmers get off to a quick start and do useful things.
The Atollic tools worked just fine and I like them. The company's information could use a bit of work because I recall the examples show Windows XP menus and not those for Win 7. That's OK, just a bit of a pothole on the road for newcomers. The problems I had stemmed from the ST examples and documentation.
No, I don't think I'd use this board to teach beginners either! And after reading your comment, I won't be trying the Atollic tool!!! Thanks for narrowing down my choice to Keil & IAR (& GCC too I guess).
I do find the power & bang:buck ratio of this thing irresistable though :-) Now, to find some time to play with it...
Six or seven months ago, I evaluated several inexpensive MCU boards as ways to teach kids about computers and let them have their own computer, too. Unfortunately, the STM32 board fell short in a number of ways, so I urge caution before you use it for experiments or a project.
Setup was easy (I used the Atollic software tools), so I decided to use an I/O port for some tests--flash LEDs, display counts on LEDs, and so on. It took a long time to understand how the ports work and all the registers involved--configuration, data, set/reset, locking, and others. It took several restarts and a re-installations of the Atollic tools to get anything but the pre-programmed demo program to run. The Atollic docs need some rewriting and editing, too. Take a look at the 8-bit LED program in the Atollic examples. No kid would want to type in all this information, let alone try to understand it. 96 Lines of C code to control an output port! Wow. One statement should do it.
Also, the dual rows of headers on each long side of the board make connection to a breadboard quite difficult. Even with all of the interesting devices, I never warmed to the STM board as an educational tool. Perhaps engineers and programmers would have less difficulty, but schedule a lot of time to plow through the manuals to find information you need.
By the way, I evaluated several other MCU demo boards from large semiconductor companies and found all wanting in one way or another. I finally chose a board from a small company and might have time to describe it in a Dev-Monkey blog on the EDN site.
I was semi-kidding, but it could work...maybe. It's a 3d compass/magnetometer – will have to read the datasheet to see what I can learn. E.g., I don't even have a clue how the ambient magnetic field compares to current in a wire... Also, given the chip is on the board, it wouldn't be a very useful probe :-}
Using the compass as a current probe is an interesting idea. Is it sensitive enough? How's its linearity? Did you find an APP note somewhere that told you how to do that, or are you going to figure it out some other way?
These MCUs are fantastic in terms of performance, cost and functionality. We've got many great ideas we are making reality; however the real key to all of this is software. The choices you have are:
single loop of control with mcu vendor software
commercial or free kernel with mcu vendor software
commercial rtos (which is a kernel + I/O )
Time to market for a single product launch is key. Total cost of ownership is key for lines and families of products.
To win commercially, a commercial RTOS is easily the best choice for either a single product or line of products. Mant close to the hardware don't realize this. The reasons for this are:
mcu vendors are good at hardware, the software is a free throw in that nobody cares about as long as you purchase chips
integration/test is 50% of the development cost - this should be free with a good rtos
an RTOS provides much better performance than a single loop over a wide range of features
Also aherence to industry standards can further reduce your costs if you are going the RTOS route. Full POSIX solutions are now available for mcu rtoses and this means better software reuse and knowledge reuse.
As an example, see what you can get from www.rowebots.com and compare the development/integration costs to the actual total life cycle costs other approaches deliver. There are 90+ demonstrations running out of the box with all wireless options, all networking options, all usb options, many file systems and more for the Unison RTOS on STM32.
What are the engineering and design challenges in creating successful IoT devices? These devices are usually small, resource-constrained electronics designed to sense, collect, send, and/or interpret data. Some of the devices need to be smart enough to act upon data in real time, 24/7. Specifically the guests will discuss sensors, security, and lessons from IoT deployments.