A few days ago, I contacted KEIL sales to check, if there are other versions at different price-points that may be interesting for me to buy (or download), because the full version is a bit to expensive. Could be interesting for others as well. Here the answer I got:
My question to the experts here (regarding firmware compilation):
Is it possible to run NETMF firmware on a Cortex M0/M0+ ? If yes, which board are you using?
I knew it. To be honest, I am a bit pi**** about this. Looking frequently at the NETMF source and trying to compile firmware using an open-source tool-chain - never works. And I am unable (maybe because I donāt understand) to identify any efforts from the .NET team to enable compilation using open-source tool-chains. They offer GCC buld-batch files - but those donāt work (or still donāt work) for any of the firmware projects. Frustrating.
@ PiWi - Those libraries are not required to compile NETMF. The middle ware libraries are provided in binary form with the professional edition and source code with versions that cost even more.
The Keil pricing makes my eyes water too, but itās not out of line with a Xamarin subscription or a retail MSDN subscription (though admittedly, MS goes out of its way to help you avoid those fees with programs like Bizspark and community editions). None of this stuff is for my āday jobā so I am going to have to add the cost of roses, dinner and dancing to the price.
Maybe there is the change of grouping this together and ask for a little volume pricing ⦠I definately am interrested ⦠to a certain price extend ā¦
The constraints that necessitated using MDK in the first place are no longer really valid. GCC produces code much more in line with what MDK produces, and chips with much more flash are now available.
Instead of buying MDK, weād be better served hiring someone to work out the GCC build. I believe, however, there are working GCC ports floating around. CW2 might be involved in one, and thereās one that originated here, as well.
Iām surprised they didnāt mention the cut down version of MDK they provide with a lot of vendors development kits. TI has some really capable Cortex M3 and M4 (they also have ARM9, A8, A9 and A15) processors that Iād love to see .Net Micro running on. For example
[quote]Development package with example source code:
Texas Instrumentsā Code Composer Studio⢠IDE
Keil⢠RealView® Microcontroller Development Kit (MDK-ARM)
IAR Embedded WorkbenchĀ® development tools
Sourcery CodeBench development tools
GCC[/quote]
Almost every other Cortex vendor out there has similar development boards with various combinations of free, but stripped down C/C++ development environments.
@ Rajesh - Yeah, they could have used the 429 Disco board from ST ⦠thatās cheap ⦠and lots of features to test it is based on the STM32F429ZIT6, a 2.4" QVGA TFT LCD, an external SDRAM of 64 Mbits, a gyroscope ST MEMs, a USB OTG micro-AB connector, LEDs and pushbuttons.
Key features:
[ul]STM32F429ZIT6 microcontroller featuring 2 MB of Flash memory, 256 KB of RAM in an LQFP144 package
On-board ST-LINK/V2 with selection mode switch to use the kit as a standalone
ST-LINK/V2 (with SWD connector for programming and debugging)
Board power supply: through the USB bus or from an external 3 V or 5 V supply voltage
2.4" QVGA TFT LCD
SDRAM 64 Mbits
L3GD20, ST MEMS motion sensor, 3-axis digital output gyroscope
Six LEDs:
LD1 (red/green) for USB communication
LD2 (red) for 3.3 V power-on
Two user LEDs:LD3 (green), LD4 (red)
Two USB OTG LEDs:LD5 (green) VBUS and LD6 (red) OC (over-current)
Two pushbuttons (user and reset)
USB OTG with micro-AB connector
Extension header for LQFP144 I/Os for a quick connection to the prototyping board and an easy probing
[/ul]
or they could modify the nucleos ⦠thatās now working with netmf 4.3 on the 411 ⦠I reported about how to get that done here on the forum ā¦
I get that NETMF was designed to be a framework that worked on different vendors, different chips, and even different architectures, but it seems like itād simplify a lot if we concentrated on a single platform. Something like STM32 which has a large set of offerings that are highly compatible among themselves, and has inexpensive development boards available.
Barring that, moving to take advantage of CMSIS is a large step in the right direction.
Well, I have added/fixed support for GCC in NETMF 4.3, including newlib-nano (*) for Netduino boards, i.e. easily applicable to other STM32Fx-based boards. As I mentioned several times, the resulting firmware is in certain cases even smaller than one produced by Keil MDK. There are some areas in the current NETMF that can be changed to reduce code size and memory consumption (buffers, string tables and such) - IIRC these are in range of kilobytes. So, the firmware can be smaller, but I donāt know exactly by how much.
(*) It requires custom built binaries to add long and double formatting, the libraries can be included in NETMF to save some tedious steps (although it has been greatly improved in recent GCC Tools for ARM releases).
Personally, I am looking towards smaller microcontrollers than currently most favorite higher-end Cortex-M3/M4 variants, although I am a little bit skeptical about Cortex-M0/+. I am waiting for the NETMF version that introduces CMSIS-based core and driver layerā¦