Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.
Photo

Very basic questions...


  • Please log in to reply
3 replies to this topic

#1 skyjumper

skyjumper

    Member

  • Members
  • PipPip
  • 15 posts

Posted 27 June 2012 - 05:08 AM

Hi All... I have done a lot with Arduino, and I have many years experience with CC/C++, Java and other language development. But, I have no experience with .NET. In Arduino, everything is done with libraries. There is no RTOS of any type. Is it correct that with Netduino there is also no OS? Also, does the .NET framework provide libraries or APIs for things like SPI, I2C, Serial/UART, EEPROM access and so on? Or do I need to find various libraries for these features? Finally, what's the difference between Netduino, Plus and Go? I see the Plus has enet and an SD card socket. But what's the Go? Thanks very much...

#2 Nevyn

Nevyn

    Advanced Member

  • Members
  • PipPipPip
  • 1072 posts
  • LocationNorth Yorkshire, UK

Posted 27 June 2012 - 05:49 AM

In Arduino, everything is done with libraries. There is no RTOS of any type.

Is it correct that with Netduino there is also no OS?

You are correct in thinking that there is no RTOS (from your perspective as a developer) as such operating on the system. You could consider the .NET framework as your OS though as this provides a lot of the things an OS would do - crude analogy I know.

Also, does the .NET framework provide libraries or APIs for things like SPI, I2C, Serial/UART, EEPROM access and so on? Or do I need to find various libraries for these features?

The .NET framework will provide you will all of the above (except EEPROM at the moment) plus more. For instance, you have a networking library on the N+. You have access to multithreading on all of the platforms.

Finally, what's the difference between Netduino, Plus and Go? I see the Plus has enet and an SD card socket. But what's the Go?

Netduino - Think of this as an Arduino running .NET
Netduino Plus - Netduino with SD card and networking
Netduino GO! - Faster, modular Netduino platform.

Note that the GO! aims to allows the user to prototype using plug and play modules. It is also a lot faster and has much more memory than the Netduino and the Netduino Plus. You should be aware that the GO! module ecosystem is in the early stages at the moment and so there are only a few modules available but there are certainly more in the pipeline with several independent developers working on modules.

The GO! has a Shieldbase module which is in beta but will eventually allow the use of third party Arduino shields on the GO!.

Another member of the family you have missed is the Netduino Mini. This is a basic stamp format of the family. Is has a reduced number of IO lines but is small enough to be embedded in a circuit board.

Hope this helps,
Mark

To be or not to be = 0xFF

 

Blogging about Netduino, .NET, STM8S and STM32 and generally waffling on about life

Follow @nevynuk on Twitter


#3 skyjumper

skyjumper

    Member

  • Members
  • PipPip
  • 15 posts

Posted 27 June 2012 - 04:31 PM

Hi Mark, that was a great help, thank you! I have been doing more reading. Too bad there is not a board with the same form factor as the Plus but with the higher end uC of the Go. But perhaps I can build one. If I write an app like a web server and other custom code and run it on say a Netduino Plus, should I then expect that it would run on the Go, or the FEZ Panda? It seems that .NET abstracts hardware differences, but I don't know if the higher level APIs change. For example, if I write code to use ethernet ont he Plus can it easily be ported to run on another board with a ethernet module? Also, I am a bit concerned about performance. I realize the Plus has a 45MHz clock and an ARM7 uC, but the code is interpreted. How does performance running.NET compare to bare metal like an Arduino? Thanks again...

#4 Nevyn

Nevyn

    Advanced Member

  • Members
  • PipPipPip
  • 1072 posts
  • LocationNorth Yorkshire, UK

Posted 27 June 2012 - 07:21 PM

If I write an app like a web server and other custom code and run it on say a Netduino Plus, should I then expect that it would run on the Go, or the FEZ Panda? It seems that .NET abstracts hardware differences, but I don't know if the higher level APIs change. For example, if I write code to use ethernet ont he Plus can it easily be ported to run on another board with a ethernet module?

I would imagine that the code should be transportable on the proviso that the GHI hardware implements the API.

Also, I am a bit concerned about performance. I realize the Plus has a 45MHz clock and an ARM7 uC, but the code is interpreted. How does performance running.NET compare to bare metal like an Arduino?

You can convert a Shieldbase to a Netduino - this has been documented in this thread. This will give you the extra speed and memory as a standard Netduino. I've not tried it so cannot validate if/how this works.

Regards,
Mark

To be or not to be = 0xFF

 

Blogging about Netduino, .NET, STM8S and STM32 and generally waffling on about life

Follow @nevynuk on Twitter





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.