
TinyCLR is the newest designer to release a project through Seeed Studio:
FEZ Mini is a tiny board running Microsoft .NET Micro Framework. This means you can write code with much more efficiency using the C# programming language under free Microsoft Visual C# express. The pinout is BasicStamp2 compatible. Includes USB cable. Many libraries are already included like FAT file system on SD cards, threading, UART, SPI, I2C, GPIO, PWM, ADC, DAC and many more.
Available for sale soon here.

Not being a huge fan of .NET I agree this is actually pretty cool for all folks coding with .NET and a nice alternative to Arduino.
Would have a lot more potential if they included JTAG so it could be used for development with other languages. :(
After seeing this http://www.adafruit.com/blog/2011/01/20/driving-an-adafruit-ssd1306-oled-display-with-a-netduino/ I am also not very convinced by using managed code on a microcontroller. The screen updates seen there take about 2 to 3 seconds. The testcode I have written for this OLED takes about 1 ms. The last comment on that page says, that bit-banging is quite slow due to all the layers involved.
What do you guys think about the speed of .net on a microcontroller?
It’s always great to have more options and ideas out there. That is never a bad thing. I also understand that a lot of the sandboxes can help many non technical (or non electrical) people move to hardware.
At this point in time, there are certainly tradeoffs. Like speed. Maybe running up against those limitations (for those who do) is what funnels people to C. Once you’re on C though, it hardly matters and you can choose based on project need and toolchains, rather than availability of an easy-to-use sandbox.
All FEZ boards have unique feature – Runtime Loadable Procedures (RLP).
It allows you to run native code. Speed is not an issue here.
Here is a tutorial on how to do RLP on FEZ:
http://www.itcrowd.be/getting-started-with-ghi-rlp
Cheers,
Architect
being a huge fan of C#/.NET, I think this is a very good start!
The .net platform that ships with the FEZ mini now includes RLP which means you guys that prefer C and speed of execution can link native code into the managed enviroment for the best of both worlds.
There are many things other then pure speed to consider. Ease of use, IDE quality, Thread support, library quality and depth, and time to solution. VS and c# excel at all the above and that can not be after thought. How about breaking and seeing all threads in a list and jumping between them. How about Linq support? The quality of the end-to-end experience is top notch. For most robots and sensor devices, I have not run into a speed issue. If your doing alot of UI or a 160mph jet PID loop, then your probably looking at a dedicated co-processor/pic anyway. Moreover, many of APIs needed to run (i.e. outputcompare) at sub ms levels, run in native code anyway.
I love .NET as much as you but I don’t think LINQ is ported to the micro framework yet.
I like high-level-languages very much, and am quite aware of their benefits. I just asked about the speed issue, and what others think about it. The RLP comment is useful (although a bit an involved solution, but probably justified in some situations).
Linq query syntax is part of compiler, so just need to supply the right hooks. The linq libraries are not ported by MS yet. But I have done a port myself (and with RX) and other ports available. Think codeplex has one. Rx can be interesting for sensor event steam processing.
I love the Fez line of products, I’ve been a big convert to them over the past 12 months and can only see myself going back to C on ATMEL chips for very specific purposes.
Bit banging isn’t a true measure of speed, although it is one. Another improvement the folk at GHI have made recently is having parallel writes exposed to you so no longer do you need to do 8 bit-bang steps you can write a byte at a time.
Someone mentioned JTAG – there is a model that has JTAG, the Panda. Having said that there’s great support for creating RLP so the need to step away from .NetMF is somewhat reduced
All in all the GHI team have some very cool products and they keep coming up with them – and the designs are open sourced so you can take them and make them what you want !
Although I like .NET, I must warn the people about the fact that you cannot use FEZ as a LPC chip unless you use RLP
I asked if I am able to recover the original firmware if I were to experiment with flashing into bare metal. One of the responses was:
“If you erase the USBizi firmware you won’t be able to flash it back because it’s not available to the GHI customers.”
In fact, JTAG access is disabled. You can order a blank FEZ Panda with JTAG enabled but then it will not have USBizi firmware. Source: http://www.tinyclr.com/forum/2/1809/
Just a fair warning.
Panda II has JTAG on by default.
http://www.ghielectronics.com/catalog/product/256
@Frank, you’re right, there are some specific things you need to consider about these boards if you’re looking for a generic JTAG enabled LPC2xxx board – and in hindsight I should have mentioned that. But, having said that, the value of the Fez Mini/Panda/Domino etc is not in having it as a moddable JTAG enabled generic dev board, but in having the .Net framework ported onto it already – and then there’s the extra bonus of all the things that GHI put into the firmware. There are a plethora of other commercial boards out there that target this market, so in my view that negates the need to have this. If you like the form factor and the chip they use, then you can buy one-off parts at digikey or your preferred supplier, mod the eagle files that come from GHI (if you need), send them off to a PCB fab, and voila you have a generic board.
Fez plus RLP means you can deal with the simple tasks in C#, and go to RLP code in C when you need to avoid some of the specific things that the .NetMF introduces. I can’t personally see a real use for RLP in my future, but it’s a great thing to have if you do find a niche application that just needs raw speed
@William
I’m slightly skeptical about that, the product page for the first Panda still says “FEZ Panda also includes JTAG access for those who wish to use their own firmware instead of NETMF.” when it has been confirmed that this is false. Where’s the real confirmation that Panda II not only has the JTAG pins exposed, but actually enabled by default? And would this not expose USBizi’s firmware to flash dumps via JTAG? GHI gives me the impression that they would like to avoid this.
@Brett
My real problem with FEZ is not really about JTAG at all, it’s just a negative impression I got from FEZ.
I started out wanting to buy an ARM dev board, as well as design a custom project. Use the dev board for experimentation and the custom board for implementation, perfectly resonable, right? I liked .NET and C# so I planned on getting one FEZ, and then one LPC2387 from Mouser/Digikey/Somewhere, and then duplicating the firmware on my own board.
Nope, source code or binary not available.
Ok fine, that’s fair, I’m not a open source zealot, I’ll buy another USBizi chip from GHI since that’s their business model and I respect that. But I might want to run code on the bare metal, use all 512K of flash and 98K of ram that I paid for, thinking ahead for the future and being on a budget (so buying a 3rd blank chip is not an option, keep in mind since I can’t swap out chips on a PCB easily, I would need to build two of my custom project).
Nope, if I tried to do that, I would lose USBizi’s firmware forever.
No problem, I’ll just create a backup image of the chip’s firmware by dumping the flash somehow. Hey look, FEZ Panda has JTAG.
Nope, that was a lie.
The whole experience left a bad taste in my mouth about FEZ. Although I don’t think the FEZ is “bad” and I agree that the point of the FEZ is not being just another generic dev board, I think people still need to become aware of the JTAG issue.
And that’s the story of why I ordered a Netduino Plus recently and also why my new project involves the AT91 instead. .NET is my backup plan in case I give up on C.
Since you might point out that RLP and FEZ Open makes my complaints non-issues, at the time when this was happening, RLP was not available on the USBizi chipset yet, and FEZ Open was severely short on features.
Also I don’t think there’s a “plethora” of boards that target the .NET Micro Framework market for under $100, so far I know of the FEZ and Netduino, and that’s about it.
Frank, I am finding it difficult following the conversation so please let me summaries what I think will help other readers following these comments. I hope this will help you as well
1. If you need an easy to program board with built in support for file system, TCP/IP, USB host/client, infiled update, RLP (and many more) then GHI products is the right choice for you. You will program right from Visual Studio express (best IDE on the market) which is free! The programming language will be C#.
2. If you need more power and control over the system then GHI provides you with RLP. Which lets you load C/assembly modules onto the system then call those right from C#, similar to how DLLs work. This gives you the best of both worlds. The easiness/portability of .NET/C# and the power/speed of C/assembly
3. If you need a dev board for ARM boards then GHI boards are not made for that, see http://www.olimex.com for good source, but the very low price of GHI boards makes them a good candidate. So, after many requests from users, GHI added JTAG and gave a way to erase the GHI firmware. No you can not put the GHI firmware back but if you want a ARM dev board then you do not need the GHI firmware. You said something about coping the GHI firmware to another board you get from mouser. The GHI firmware is licensed to run on GHI boards only. It comes free with the GHI boards but you aren’t licensed to run it on a non-GHI board. Doing this allows GHI to invest more into engineering and into adding more and more free features…. Basically, charge for boards then software and upgrades are always free!
4. If you want to port NETMF yourself and you do not need the GHI libraries then you can get full sources codes on NETMF, that is free and it comes direct from Microsoft. GHI even gives you complete design files for a board running ARM and we give you full details on how to port NETMF. Learn more here about DIY NETMF board http://www.tinyclr.com/forum/17/1195/
Here is a good place to look at for what GHI does and what NETMF is http://www.ghielectronics.com/profile/
We are always on the forum if you or anyone have some questions http://www.tinyclr.com/forum/
Gus Issa
GHI Electronics
–The GHI firmware is licensed to run on GHI boards only. It comes free with the GHI boards but you aren’t licensed to run it on a non-GHI board.
This is a show stopper. In closed source who cares, but this is open source as a marketing gimmick for a locked-down development board. Shame on DP for pushing this board. At least with the new OSH license there are some measures to prevent these abuses.
I’ll take the shame :)
Does the OSH license really help though? I would agree that would be great.
But how extreme is it? Can I not license my work OSH if I can’t include everything because of another library license like the Microchip non-distributable stuff?
I have to agree with “OHS lover”. I looked at this stuff awhile back. In true M$oft/.NET tradition it reeked of bait and switch open-sourceishness with a lock-you-down built in. Got out of there PDQ.
OSH guy and Drone, that’s actually not correct.
GHI provide an open hardware design that you can tailor to your needs, under Creative Commons ShareAlike 3.0. You can buy individual USBizi chips from GHI or their resellers to affix to that. You could of course just buy generic LPX2xxx chips and use that instead – and then you’re free to do whatever you want with it, use whatever compiler; you could even port the open source .Net Micro Framework onto it yourself, if you so wanted to.
In this case it’s the USBizi chips that contain the IP from GHI. They’re the ones that have put the effort into their own “value add” features. You’re free to use them or not.
I have no affiliation with GHI; but I’ve hung around their kit for 12 months. I know they have many commercial customers who design custom solutions around their USBizi chips (or their larger platforms) and there are no issues with doing so.
Glad to see sensible open mindedness still runs rife on the interwebs. It’s just a microcontroller people !
–They’re the ones that have put the effort into their own “value add” features. You’re free to use them or not.
I agree and it is totally in their right most companies choose to keep everything closed.
Tons of hardware and software companies add tons of value to projects and manage release it under an open license everyday. This project piggybacks on that reputation and body of work, but they get to keep a little bit of special secret sauce to themselves to enforce lock in. That is the opposite of open source. Nobody gets to review the code, build on it, improve it, or reuse it. If this company goes belly up you’re stuck. It’s like Arduino keeping core libraries in binary blobs under a non-open license.
I only say this as someone who was interested in the project. It is still commendable to release the board under an open license.
/now I’ll troll my way back to /. where I belong :)
What about the netduino. How does it compare to the FEZ board? Is their implementation truly open source? Any disadvantages?
If you want open source hardware and software then look at option 4 above (FEZ Hacker). The design files are made in EAGLE and the software is compiled in GCC. Plus there are full instructions on how to do it all. Netduino is also open source and uses the same processor as FEZ Hacker. The disadvantage is that the design files are made in Altium and the firmware is compiles ion RVDS, that is over $10,000 in tools, where FEZ Hacker uses all free tools.
The other FEZ boards, like FEZ Panda or FEZ Mini for example, have much more commercial software value added and that is not open source.
So you have both options really, a DIY open source or a highly supported and stable closed source. Now, I am talking about software, for the hardware, all boards are open source. Nothing is stopping you from erasing the processor and loading your own firmware. We have someone who already loaded eLua!
Gus Issa
GHI Electronics
I am also having trouble following some of logic here. It is not this complicated. If you want best .Net MF board and sw solution, fez is a really good choice based on using it for ~5 months and many projects. Who cares about open this or that? I don’t have the time or energy to hack the firmware and neither do most of you if your honest. There is way too much to do with the existing code/libraries they already supply and too many cool projects to do to worry about something you will never get around to do anyway. The 1%ers have different needs, so may not be a good fit. That is fine and good. If you erase the firmware, you had a reason to not want it to begin with. Come on folks, it is ~$39 bucks people. Your gas to pickup tonights pizza and pop is more.