Hardware Details: Netduino Go (mainboard) - Netduino Go - Netduino Forums
   
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

Hardware Details: Netduino Go (mainboard)


  • Please log in to reply
22 replies to this topic

#1 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 06 April 2012 - 09:55 AM

With Netduino Go, we took more than a year of community feedback into account during the design process.

That may be most prevalent on the Netduino Go mainboard itself.

Here are a few highlights...

USB circuitry
We think high-speed ESD protection in the USB circuitry is important. We integrated it into the traditional Netduinos, but the side-effect was that USB Client support was a bit tricky. With Netduino Go, we've switched out the nice ST device-side USB ESD chip for three discrete Littlefuse USB ESD chips.

Now we can re-enumerate on the fly...so the USB Client feature of .NET MF will be able to be fully supported on Netduino. You could use a Nwazet touchscreen with a Netduino Go to create your own touchscreen HID keypad, for example. Or turn off the NETMF debug channel and make your Netduino Go a custom USB HID serial-like device.

The USB fuse is the same as on Netduino. We really like that part. It's there to help protect your computer.

Power circuitry
On Netduino and Netduino Plus, we use a 3.3V power regulator to convert USB power into a 3.3V power supply usable by components. This is a fairly typical application (and we use nice LDO power regulators). But as you draw more current, these power regulators heat up. They basically waste the voltage difference (1/3 of the power) as heat.

With Netduino Go, we've included a premium DC-DC switch/inductor pair and a number of beefy 10uF caps to stabilize the PWM-driven power supply. This allows us to deliver a large amount of power at high efficiency. In fact, while USB delivers 500mA at 5V, we get 600mA+ of 3.3V power out of the DC-DC switch. Even after powering the Netduino Go's speedy MCU, we have enough power to drive around 500mA of 3.3V to the modules. And you can use that much power without heating up the DC-DC switch much.

The other really important thing here is that the DC-DC switch can respond to quick changes in power draw. So as modules require sudden increases in current, the effect on other modules in the system is minimized. This should help the stability of analog inputs, for example.

MiniJTAG
Some of you wanted to dig in and debug the .NET Micro Framework firmware on your Netduinos. Well, with Netduino Go you can. We included an industry-standard MiniJTAG port (officially called the Cortex Debug Port). Just solder on a 0.05" 2x5 male pin header. For about $40 you can get both a JTAG debug unit (STLink/V2) and a JTAG->MiniJTAG adapter (Texas Instruments) from Mouser. No $2,000+ JTAG debugger required.

And since Netduino Go has a beefy 1MB of flash, you can compile in your own native code if you'd like...and test it right on the board.

Power LED
Some of you asked if you could shut off the power LED. Well, now you can. The power LED turns on by default, but you can turn it off by opening up pin PC13 ((Cpu.Pin)45) as an OutputPort and turning it off. We'll be providing a method to shut off the socket LEDs as well.

Pushbutton
Like Netduino, we wanted a single all-purpose pushbutton. You can use it as a GPIO just like before. And if you hold it down during power-up, it takes you into bootloader mode.

But now, instead of an Atmel bootloader and TinyBooter...we've consolidated down to a single bootloader. When you boot into bootloader mode, the devices enters DFU (device firmware update) mode where you can use the ST DFU tools to erase or upgrade your board. We'll also be making custom tools available. No more worrying about mismatch of TinyBooter and TinyCLR versions...and we freed up another 40KB of space.

We'll also be enabling the pushbutton as a reset button...just like on Netduino. This feature couldn't be completed far enough before launch to get sufficient testing, but we'll be rolling it out in an update soon.

Finally...the button is now a surface mount button. We went through a lot of buttons before finding one that had the same feel as the one used on Netduino and Netduino Plus. We're trying to make these boards last a long time and be more easily recycled...and this is another step in that direction.

STM32F4 Microcontroller
Of course, Netduino Go uses a blazingly fast STM32F405 (Cortex-M4F) microcontroller. This chip runs at 168MHz and is, conservatively speaking, 4 times as fast as a traditional Netduino SAM7X microcontroller. It has 1MB of flash, letting us enable a full 384KB of flash and still have tons of room left over to fill with NETMF features like networking and OneWire.

The chip has 192KB of RAM: 128KB of regular RAM and 64KB of core-coupled RAM. The core-coupled RAM is extra-speedy (think of it like the speedy cache inside Intel chips), and we're storing the stack and buffers there. This allows us to allocate roughly the entire 128KB of the main SRAM to the .NET MF heap. The end result is lots of RAM for your app.

Go!Sockets
Perhaps the biggest difference with Netduino Go is the new virtualized IO and socket design. The sockets have some stand-out features. For one, they are plug-and-play sockets for expansion modules. These modules can be pre-built modules like potentiometers, motor controllers, or Ethernet connections. They can be IO boards like the Shield Base (or a breadboard module or a 16-port PWM module). They could even be a really rich device like a 3D printer.

Hardware-wise, we've put a dual-MOSFET on every socket. This allows us to switch on and off current to every socket individually. We have lots of uses in mind for this, but three of the most important are: (1) shutting on and off modules for reflashing; (2) low-power and battery operated scenarios; (3) making sure that nothing is active during boot.

The last item is a really important one. When you build a robot, for instance, you want to make sure its wheels don't just start spinning while the board is starting up. The go!bus and go!socket architecture keeps things in a well-known off state during boot.

Final thoughts
Your feedback this last year and a half has been really awesome, and hopefully we've incorporated some of your requests into this new hardware.

There are quite a few things we've designed into the hardware that will make more and more sense as we update the Netduino Go with software updates this year. We have a lot planned, and your hardware investment today will become even more useful as free open source software updates and additional modules ship.

I look forward to sharing this journey with you,

Chris

#2 Nicolas PENIN

Nicolas PENIN

    New Member

  • Members
  • Pip
  • 5 posts
  • LocationMulhouse, France

Posted 06 April 2012 - 10:03 AM

Hi Chris, You talk about Ethernet connections. Is there already anyway to have an Ethernet connection on Netduino GO ? Using the arduino ethernet shield maybe ? Thanks, Nicolas

#3 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 06 April 2012 - 10:14 AM

Hi Nicolas,

You talk about Ethernet connections. Is there already anyway to have an Ethernet connection on Netduino GO ? Using the arduino ethernet shield maybe ?

During development, we used the Sytech Ethernet+SD Gadgeteer module to test both Ethernet and SD features. If you tweak the firmware a bit, you can re-enable that support...although this is a "Z" module (manufacturer-specific) so we can't promise long-term support.

We're now preparing for sample production of a Netduino Go Ethernet module (and an MMC/SD module). These are really nice and they use a brand new microcontroller which can keep up with the go!bus's fast transfer speed and do error checking at the same time. We'll have more information on these soon...and they will be the long-term solution for Ethernet networking on Netduino Go.

When the Shield Base gets along a little farther in the beta, you can certainly use one of the original Arduino Ethernet shields (or the DFRobot one). But if you can be patient for a bit, I'd recommend the Ethernet go!module...it'll give you the best performance, reliability, and deep integration with the System.Net namespace.

Chris

#4 Nicolas PENIN

Nicolas PENIN

    New Member

  • Members
  • Pip
  • 5 posts
  • LocationMulhouse, France

Posted 06 April 2012 - 10:23 AM

Sure, I was just asking because I am planning to "domotize" my house. Since the domotic boxes I could find do not suit my needs, I was thinking about making mine using netduino. Netduino GO seems to be perfect for that. Thanks for you fast answer

#5 Mattster

Mattster

    Advanced Member

  • Members
  • PipPipPip
  • 46 posts
  • Locationusually South Florida

Posted 06 April 2012 - 12:44 PM

regarding the JTAG to Mini-JTAG at Mouser, can you please specify a model or a part number? There seems to be a number of them there and they differ. Thanks.

#6 Stefan

Stefan

    Moderator

  • Members
  • PipPipPip
  • 1965 posts
  • LocationBreda, the Netherlands

Posted 06 April 2012 - 12:50 PM

regarding the JTAG to Mini-JTAG at Mouser, can you please specify a model or a part number? There seems to be a number of them there and they differ. Thanks.

Hi Mattster,

I myself have these items:
- http://www.st.com/in...duct/251168.jsp
- http://elcodis.com/p...3/MDL-ADA2.html

But I think that any 20-to-10-pin converter will work.
"Fact that I'm a moderator doesn't make me an expert in things." Stefan, the eternal newb!
My .NETMF projects: .NETMF Toolbox / Gadgeteer Light / Some PCB designs

#7 Fred

Fred

    Advanced Member

  • Members
  • PipPipPip
  • 302 posts
  • LocationUK

Posted 06 April 2012 - 01:36 PM

This is awesome. At first glance I was worried that the Go was aimed at the solder-averse end of the market to the detriment of those who are a bit more hands-on. You seem to have totally managed to cover everything! I've been a little bit off the Netduino scene recently. I've busy CNC converting a mill for PCB milling. I'm ashamed to say I've had a brief microcontroller bit on the side with TI's MSP430. And also and my six month old future geek son has demanded some of my time! I was just thinking about how to ditch standard the PC / Mach3 / parallel port combo for my mill and use something a bit more this decade. A Netduino Plus for the g-code parsing maybe paired to a MSP430 for the accurate timings was my initial thoughts. Now I'm thinking the Go with a stepper driver module is the way to go - either custom build or starting with the shield base running native code. The fact that I can plug in a Nwazet touch display easily makes it even more tempting! I think I may have my Microframework Mojo back. Let me know if I can sign up for the module developer beta program.

#8 Mattster

Mattster

    Advanced Member

  • Members
  • PipPipPip
  • 46 posts
  • Locationusually South Florida

Posted 06 April 2012 - 02:20 PM

Thanks Stefan, I found to 20pin-10pin adapter on Mouser as p/n TI MDL-ADA2 for $17

#9 nakchak

nakchak

    Advanced Member

  • Members
  • PipPipPip
  • 404 posts
  • LocationBristol, UK

Posted 07 April 2012 - 03:52 PM

Hi Nicolas,


During development, we used the Sytech Ethernet+SD Gadgeteer module to test both Ethernet and SD features. If you tweak the firmware a bit, you can re-enable that support...although this is a "Z" module (manufacturer-specific) so we can't promise long-term support.

We're now preparing for sample production of a Netduino Go Ethernet module (and an MMC/SD module). These are really nice and they use a brand new microcontroller which can keep up with the go!bus's fast transfer speed and do error checking at the same time. We'll have more information on these soon...and they will be the long-term solution for Ethernet networking on Netduino Go.

When the Shield Base gets along a little farther in the beta, you can certainly use one of the original Arduino Ethernet shields (or the DFRobot one). But if you can be patient for a bit, I'd recommend the Ethernet go!module...it'll give you the best performance, reliability, and deep integration with the System.Net namespace.

Chris


Will the go! ethernet module support SSL comms? As for me the lack of SSL is a real limitation with nearly all of the shields out there at the moment (and IMHO is a serious limitation to creating any "professional" system with the current generation of low cost development systems), and i would prefer to avoid using something like a digi connect or lantronix xport type device which does have all of that onboard. I presume the virtulised hardware of the GO should allow for the processing to be offloaded onto the module same as low level network stuff such as dns and icmp etc.?

#10 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 07 April 2012 - 08:09 PM

Hi nakchak,

Will the go! ethernet module support SSL comms? As for me the lack of SSL is a real limitation with nearly all of the shields out there at the moment (and IMHO is a serious limitation to creating any "professional" system with the current generation of low cost development systems), and i would prefer to avoid using something like a digi connect or lantronix xport type device which does have all of that onboard. I presume the virtulised hardware of the GO should allow for the processing to be offloaded onto the module same as low level network stuff such as dns and icmp etc.?

That's a fantastic idea. We don't have any plans for this right now, but we can investigate.

Chris

#11 nakchak

nakchak

    Advanced Member

  • Members
  • PipPipPip
  • 404 posts
  • LocationBristol, UK

Posted 09 April 2012 - 03:26 PM

Hi nakchak,

That's a fantastic idea. We don't have any plans for this right now, but we can investigate.

Chris


Hi Chris

Please let me know if i can be of any assistance, from my very breif look at the problem it appears that ST have an application note availible for the STM32F217XX MCU demonstrating SSL/TLS networking functionality using PolarSSL here

Nak.

#12 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 09 April 2012 - 07:54 PM

Please let me know if i can be of any assistance, from my very breif look at the problem it appears that ST have an application note availible for the STM32F217XX MCU demonstrating SSL/TLS networking functionality using PolarSSL here

Thanks, Nak. I'll ping you in a few weeks on this. This would be a great feature to pull together...

BTW, OpenSSL is already built into NETMF. So it's mostly just an issue of figuring out if we can fit it on the board (i.e. flash and RAM). If that won't fit, SSL hardware offload (via virtualization) would be another option too.
Chris

#13 contractorwolf

contractorwolf

    Member

  • Members
  • PipPip
  • 23 posts

Posted 23 April 2012 - 02:56 AM

What's the status of networking on the netduino go? Can I use this gadgeteer module? http://www.ghielectr...log/product/284 I don't see a lot of discussion of how to code the netduino go with gadgeteer modules, and there aren't enough go modules to do all the cool things I want to try

#14 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 04 June 2012 - 10:41 AM

MiniJTAG
Some of you wanted to dig in and debug the .NET Micro Framework firmware on your Netduinos. Well, with Netduino Go you can. We included an industry-standard MiniJTAG port (officially called the Cortex Debug Port). Just solder on a 0.05" 2x5 male pin header. For about $40 you can get both a JTAG debug unit (STLink/V2) and a JTAG->MiniJTAG adapter (Texas Instruments) from Mouser. No $2,000+ JTAG debugger required.

And since Netduino Go has a beefy 1MB of flash, you can compile in your own native code if you'd like...and test it right on the board.


I have been searching for that minijtag adapter, any partnumber? (I already have the STLink/v2).
And the male-pin header, can one use an shrouded one? (are nwazet or someone going to sell small bags of these? :)
(I guess that shrouded, means that one keep the orientation on the plug?)

--
Asbjørn


#15 Stefan

Stefan

    Moderator

  • Members
  • PipPipPip
  • 1965 posts
  • LocationBreda, the Netherlands

Posted 04 June 2012 - 10:51 AM

I have been searching for that minijtag adapter, any partnumber? (I already have the STLink/v2).

You mean this?

- http://elcodis.com/p...3/MDL-ADA2.html

:)
"Fact that I'm a moderator doesn't make me an expert in things." Stefan, the eternal newb!
My .NETMF projects: .NETMF Toolbox / Gadgeteer Light / Some PCB designs

#16 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 04 June 2012 - 10:59 AM

You mean this?

:)


aha, with an partnumber I also found it at mouser now.. searching for "minijtag" there yielded no results.
so that 20pin thingy is direct compatible with the stlink one? then it's even better, I was thinking I had to use pins and clips.. :)
(just wanting to prepare my shieldbase and Go for worstcase, if it can break, it will.. :) )

--
Asbjørn


#17 Stefan

Stefan

    Moderator

  • Members
  • PipPipPip
  • 1965 posts
  • LocationBreda, the Netherlands

Posted 04 June 2012 - 11:42 AM

so that 20pin thingy is direct compatible with the stlink one?

Yep, I used them combined without any issues.

(just wanting to prepare my shieldbase and Go for worstcase, if it can break, it will.. :) )

Ohhh lovely :)
And yes, they can be broken. I already broken a mainboard. I even believe I was the first one doing so. Not sure if I should be proud or sad :blink:
"Fact that I'm a moderator doesn't make me an expert in things." Stefan, the eternal newb!
My .NETMF projects: .NETMF Toolbox / Gadgeteer Light / Some PCB designs

#18 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 18 June 2012 - 12:32 PM

Nobody that sells the throughhole sockets so i can attach that debug adapter to netduino/shieldbase? I found the links that points to mouser, but that was for the full reel.. that is a bit more than I need. The surfacemount ones seems to be available in smaller purchases, but since there are holes, I guess it's easier for me to solder that (have no smd experience yet)

--
Asbjørn


#19 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 18 June 2012 - 02:26 PM

Hi neslekkim,

Nobody that sells the throughhole sockets so i can attach that debug adapter to netduino/shieldbase?
I found the links that points to mouser, but that was for the full reel.. that is a bit more than I need.
The surfacemount ones seems to be available in smaller purchases, but since there are holes, I guess it's easier for me to solder that (have no smd experience yet)

For MiniJTAG, you can use the shrouded connectors...but I'd recommend picking up a standard unshrouded one for $0.77 + shipping. The MiniJTAG cable's connector goes the same way as the sockets (notch facing in).

http://www.digikey.c...21111-00010T4LF

We're working on bringing in a few thousand of the shrouded connectors...and then selling them in 10-packs on Amazon. That'll be a little while though.

Chris

#20 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 18 June 2012 - 03:08 PM

Ah, thank Saving link for later, $30 for shipping was a bit hefty :)

--
Asbjørn





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.