Netduino

http://netduino.com/

Looks quite good, and a lot cheaper than the FEZ boards.

Just a pity not all the pins have been broken out on the uC.

Looks nice, especially for people already familiar with C#, .NET etc.

Andrew

It does look well done. Care seems to have been taken to make pin assignments similar to Arduino to enable shield compatibility. That the pins are 3.3V outputs (tolerant to 5V inputs) means most shields should work. Plus the 60KB of RAM is a huge benefit for some projects (no EEPROM that I could see though).

The big gotcha (IMHO) is the reliance on the .NET development tools. It's not a simple switchover from the Arduino development environment to the Netduino one and you are essentially learning a new language and environment (though they are similar).

Still, given that it's a 32-bit processor running at 48 MHz with plenty of FLASH and RAM means it might make a nice "upgrade path" for people who find they have hit the wall with the Arduino.

--
Check out our new shield: http://www.ruggedcircuits.com/html/gadget_shield.html

The other huge setback is the real-timelessness of the .NET Microframework.

Has anyone ever dealt with it? Is it really such a problem?

Good point. I'd like to see some responses regarding this real-time issue.

But the developers say it is possible to bypass the whole .NET business and just develop using C/C++ for total control, which does provide another nice upgrade path.

--
Check out our new shield: http://www.ruggedcircuits.com/html/gadget_shield.html

I have been using Arduino only for three weeks and I found it incredibly simple to use (I finished my project using Ethernet shield, UDP protocol, two gas sensors and an IR sensor attached to it, in the spare time of less than two weeks).

Yesterday I noticed Netduino and I am very impressed!
The computational power of Netduino fairly outperforms Arduino. I am a C# developer, and so I really appreciate Netduino.
The thing that shocked me is that Netduino costs only 8? more than Arduino (30.96? from coolcomponents).

Now I am very undecided: shoud I leave Arduino alone, and dedicate myself only to development with Netduino?
I am wondering what are Arduino advantages over Netduino.

Maybe the cost, since an AtMega328 with Arduino bootloader costs as low as 4.80? (the lowest price I found at the moment), while I can't still find an AT91SAM7X512 with bootloader alone.

Another point is that the AT91SAM7X512 requires SMD soldering, while AtMegs328 not.

My question is : are there applications where Arduino is best suited?

You would normally not use a bootloader alone on such a device. I dunno but C# support, but for 32bit uC's a JTAG debugger is almost a must. It is a lot more complex from a software point of view.

You can pickup low cost JTAG programmer/debuggers for less than $20 normally (a lot cheaper than the AVR debuggers).

wind'ohs only... rubbish.

My question is : are there applications where Arduino is best suited?

Seeing how no one in North America has ANY in stock ... if you have a project you want to do now and/or want to assure you can find the actual board for the next one you want to build, best to go with tried and true arduino.

Also .. really any project that you don't need the speed, etc for .. you will be better off at this time (IMHO) sticking with arduino until you run into limits you can't get around with sheer programming genius.

That said . .I am watching close and will order one when they come available due to having an actual need for such horsepower for some projects.

That thing looks interestering.. have been thinking abouta FEZ Duino for a while.. but i wonder - how is it with libraries? DOes anyone knwo anything about the variety of libraries compared to arduino?

Also.. is there anyone here who would help me wrapping stuff for NetCF? It should be possible to compile a C-DLL from the arduino stuff and then accessing it via C# wrappers?

I can think of three big differences between the two...

  1. Garbage collector. There are a few forum participants who are big fans of FEZ. I've asked how the garbage collector effects the application and the answer has been vague. In the extreme case, the application stops running while the garbage collector does its thing. In the best case, the garbage collector and the application run in parallel but this could still starve the application.

  2. Libraries. If the Netduino lacks support for a piece of hardware you want to use it is very likely you will be the one writing the library. My experience with Microsoft in these situations has been annoying. Typically, their documentation is incomplete so a great deal of time is spent researching basic things (e.g. What is valid for this parameter? Why does this API call return this error code?).

  3. Delivery / Final Product. It is possible to get an application working on an Arduino, remove the processor, do a bit of soldering, and have a stand-alone product. For a few dollars the processor can be replaced and the whole process repeated. It is very unlikely the same thing can be done with the Netduino (or FEZ).

There are certainly some things that an Arduino is not going to be able to do. My attitude is: use the best tool for the job.

Good points Coding, especially number three.

Its just that i am extremely fond of C# - though i learned a good deal of C with Arduino..
The thing just is i like the environment of VS much more than the Arduino IDE (thats why i dont use it anymore) and this, together with C# is just wonderful.. but then again, your points are more than valid...

Why is it that people come out with things like this, saying how much more powerful it is then the Arduino (which computationally it is), then limit the whole affair by making it the same pinout as the Arduino?

The number of pins on an UNO (and previous models!) are limited because the chip itself doesn't have that many more. Even the Arduino team provided most of the outputs on the Mega versions, which to be honest is where I see most of these "Arduino replacements" competing.

Why not, to keep shield compatibility, have the pins where the Arduino shields normally are, then run a second set of pins on the outside of those. That way the board is only marginally bigger then the Arduino, keeps the compatibility with existing shields, yet allows access to the additional IOs. Maybe it hasn't been done as there may not be enough space on the board. If that is the case then okay, but why not put a header at the bottom to break out the rest of the pins, even if it means making the board longer?

As already mentioned, if you are planning to say it is compatible/replacement then it should also use the Arduino's multi-platform language and environment. After all both are open source are they not?

I have been looking at the mBed system. It isn't trying to be a Arduino wannabe, maintains much of the power and outputs of the ARM and is multi-platform (if only because it is all online). The problem I have with the mBed is that it is online only, I guess because they are using ARMs commercial compiler and this is an easy way to only have to buy one copy! :lol:

Sorry to rant a bit there :-[ I love the Arduino for its ease of use, both hardware and software working together and not having to jump around different programs plus the great documentation which has actually allowed me to have a greater understanding of C (more then I have ever had from reading books about it :-)). I used to do PICs but the Arduino has killed that off because I got tired of programming a chip then having to remove it from the programmer, then put it into my test board etc etc. I do really want to get one of these ARM based versions but none have what I have come to love about the Arduino and I don't want to have to learn a variant of C as I am just getting my head around C itself ;D

Personally, I think the Netduino is awesome. I love C# and I think that Visual Sutio 2010 is the best programming environment available. I like that it's 32 bit and beefed up a bit and is compatible with existing arduino shields. Plus, being able to program it in C# is a huge plus.

As soon as I heard about it, I ordered one and loaded up the development tools. I've already ported my code from C to C# and am ready to testit out once the thing arrives.

I think the release of this is one of the great things about an open platform. SOmeone can take it in a new direction. IF you aren't interested in this new direction, stick with Wiring and the Arduino environment, if you like C# and want to go that route, go ahead.

THanks Secret Labs.

Netduino was cheaper than FEZ - until FEZ came out with Panda. I recently purchased a Netduino and a Panda. Both are good environments with solid support and a good forum.

My take is FEZ is more mature but I also like the netduino community as well - so not taking anything away from netduino.

I was able to port over code pretty easily (small apps). If you need raw pin speed - neither one is good. Outside the pitifully slow pin write speeds - they seem like a nice alternative if you need more memory than a mega provides.

Personally .. I am going to buy go with a mega and see if I get over my arduino limits that way before I continue down the MS path.

That said .. I can say in under a week, the move into this environment was not bad and in some cases is was "freegin easy". If you are working with standard SPI and the like, you may not hit the same speed issues I did.

Pretty interesting movement - jump in if it feels right - It won't hurt :slight_smile:

Dont forget ... no EEPROM on netduino.