Some questions about Netduino Go - 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

Some questions about Netduino Go


  • Please log in to reply
14 replies to this topic

#1 Nicky

Nicky

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationDenmark

Posted 10 October 2012 - 03:14 PM

Hi there.

First off, even through the limited selection of modules (atm), and the annoying Erase/Flash/Deploy bug, I'm quite impressed by the Go, and from what it looks like, lot's of great stuff are happening in the future! But when that's said, I've got a few questions. My knowledge in hardware is very limited, but I think I got the basics.

1. Memory capacity
Is it possible, in any way, to expand the code- and/or memory space on the Netduino Go? Can the code space be made able for memory?

If the answer is no, does anyone have to experience/recommendations on how to do so? Currently I've got a NGo and a N+ connected through serial, where the N+ is acting like a modem/storagedevice. The connection is made through the COM-ports, is this the best method?

2. Socket expansion
Are there any plans for a module which expands the total number of sockets?

3. Power capacity
How much stuff can the NGo power? Imagine a couple of Shieldbases, a dozen of relays, Ethernet module, SD Module, touch display and some more.. That would require an external power supply, right?

4. Remote updating
Since the NGo is able to flash the Shieldbase, is it then possible to make another device flash a NGo?

5. Reset
Is it somehow possible to attach a reset wire to the NGo?

6. SPI
I've read a little about SPI, but I'm not sure if I get it. Does SPI make it possible to establish a serial-connection with multiple devices through the same three wires?


Thanks. :)

ntools
TCP Listener (Beta) · FTP Server (Alpha)
Netduino Plus Go Module · Xml Parser
http://ntools.codeplex.com/


#2 Stefan

Stefan

    Moderator

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

Posted 10 October 2012 - 03:24 PM

Hi Nicky!

I probably can't answer all questions to your satisfaction, but since I should know some stuff about the subject I'll try ;)

First off, even through the limited selection of modules (atm), and the annoying Erase/Flash/Deploy bug, I'm quite impressed by the Go, and from what it looks like, lot's of great stuff are happening in the future!

Thank you very much!

1. Memory capacity
Is it possible, in any way, to expand the code- and/or memory space on the Netduino Go? Can the code space be made able for memory?

Code memory: I leave that open for Chris.
Other memory: There is an SD module in the making, which makes it possible to use SD cards as storage. This can be used as memory.

2. Socket expansion
Are there any plans for a module which expands the total number of sockets?

Yes. The possibility for a Netduino Go! Hub has recently been announced. There's no date mentioned as far as I know, but it's something that will be possible in the future.

3. Power capacity
How much stuff can the NGo power? Imagine a couple of Shieldbases, a dozen of relays, Ethernet module, SD Module, touch display and some more.. That would require an external power supply, right?

It would indeed require some power. The Netduino Go! Hub design comes with a power barrel to supply power to it's modules.

4. Remote updating
Since the NGo is able to flash the Shieldbase, is it then possible to make another device flash a NGo?

Advanced topic. You may have noticed there are 10 empty holes on the mainboard. It's possible to solder JTAG pins onto it and program+debug with a JTAG debugger.

5. Reset
Is it somehow possible to attach a reset wire to the NGo?

No, but in code you could make a button module for example execute a reset. Also, an interrupt on the shieldbase will be able to do such a thing.

6. SPI
I've read a little about SPI, but I'm not sure if I get it. Does SPI make it possible to establish a serial-connection with multiple devices through the same three wires?

Something like that. http://en.wikipedia....l_Interface_Bus could be a nice page to read for you!
"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

#3 Nicky

Nicky

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationDenmark

Posted 10 October 2012 - 03:40 PM

Wow a quick reply.. another + in my book. Sweet news about the SD module - does that mean that the NGo in theory would be able to have gigabytes of memory, and then run huuge programs loaded with reflection? The Hub sounds like exactly what I was hoping for! About the reset.. does that mean, that if the NGo hangs, there is no way to reset it, except from cutting the power? Thanks ;)

ntools
TCP Listener (Beta) · FTP Server (Alpha)
Netduino Plus Go Module · Xml Parser
http://ntools.codeplex.com/


#4 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 10 October 2012 - 03:51 PM

Hi Nicky,

1. Memory capacity
Is it possible, in any way, to expand the code- and/or memory space on the Netduino Go? Can the code space be made able for memory?

As Stefan alluded to, you can load assemblies via reflection from external storage like an SD card. They'll load into your available RAM though, so you'd want to only load the assemblies you actually needed. These are microcontroller boards and while NETMF makes them really powerful they're not really designed for huge applications.

It's not currently possible to add RAM externally (partially because you'd want a _really_ fast memory bus for that). If there's enough demand for extra RAM, we could create a higher-end Netduino Go in the future with additional on-board RAM.

3. Power capacity
How much stuff can the NGo power? Imagine a couple of Shieldbases, a dozen of relays, Ethernet module, SD Module, touch display and some more.. That would require an external power supply, right?


Netduino Go can provide up to ~500 mA of power to directly-connected modules. Each powered hub can provide additional power for downstream modules too.

4. Remote updating
Since the NGo is able to flash the Shieldbase, is it then possible to make another device flash a NGo?


We could enable reflashing over an Ethernet or Serial module in a future update. Today you'll want to use USB.

5. Reset
Is it somehow possible to attach a reset wire to the NGo?


About the reset.. does that mean, that if the NGo hangs, there is no way to reset it, except from cutting the power?

We'll be enabling the pushbutton on Netduino Go as a reset button. There is also a watchdog on the microcontroller which we could logically hook up to an external GoBus button/module/IO. Or kicked via code...lots of options to explore.

Chris

#5 Nicky

Nicky

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationDenmark

Posted 11 October 2012 - 06:01 AM

Thanks for the answers.

It's not currently possible to add RAM externally (partially because you'd want a _really_ fast memory bus for that). If there's enough demand for extra RAM, we could create a higher-end Netduino Go in the future with additional on-board RAM.


So that means what Stefan said ain't gonna be possible? Using SD as memory. I know that the unit will lose a lot of speed, but at some point it might be worth it.

We could enable reflashing over an Ethernet or Serial module in a future update. Today you'll want to use USB.


Okay, just thought it might could be possible. Bummer... currently I have a 320 kb application which needs to be updateable... Might be time to clean up the Dpws/System.Http/System.Xml assemblies, sigh :D

We'll be enabling the pushbutton on Netduino Go as a reset button. There is also a watchdog on the microcontroller which we could logically hook up to an external GoBus button/module/IO. Or kicked via code...lots of options to explore.


So what you say are, if I need to ensure a stable product, I have to find another board than the NGo, since there is NO, and not coming, ANY method to reset a hanging system?

ntools
TCP Listener (Beta) · FTP Server (Alpha)
Netduino Plus Go Module · Xml Parser
http://ntools.codeplex.com/


#6 Stefan

Stefan

    Moderator

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

Posted 11 October 2012 - 08:43 AM

So that means what Stefan said ain't gonna be possible? Using SD as memory. I know that the unit will lose a lot of speed, but at some point it might be worth it.

It's useful as memory, just not code memory. You can store resources to it, but also use it as virtual memory. Fabien, one of the guys behind Nwazet, once wrote a nice class for this: netduino.helpers.Helpers.VirtualMemory.
"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 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 11 October 2012 - 08:52 AM

Hi Nicky,

Okay, just thought it might could be possible. Bummer... currently I have a 320 kb application which needs to be updateable... Might be time to clean up the Dpws/System.Http/System.Xml assemblies, sigh :D

We may actually put some of those assemblies in the NETMF portion of the flash, which would free up more space for your application as well. There are a number of ways to work out the "in-field re-flashing" issues. Netduino Go's MCU has pretty impressive specs...let's see what capabilities we can work out.

So what you say are, if I need to ensure a stable product, I have to find another board than the NGo, since there is NO, and not coming, ANY method to reset a hanging system?

The watchdog, combined with an external IO, should work as well as a physical reset line. If the watchdog kick timer queries the IO and sees that it is asserted, it would simply not kick the watchdog and the board would reboot.

We're working on a fairly large firmware update for Netduino Go (4.2.0.3) but once it gets posted later this month I'd love to explore low-power modes, standby, watchdog capabilities, etc.

Chris

#8 Nicky

Nicky

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationDenmark

Posted 11 October 2012 - 09:01 AM

It's useful as memory, just not code memory. You can store resources to it, but also use it as virtual memory. Fabien, one of the guys behind Nwazet, once wrote a nice class for this: netduino.helpers.Helpers.VirtualMemory.


Aah okay, so I won't be able to load assemblies with reflection, and expect that to run, but datas and stuff can be placed in a VM?

Att: Chris, sounds like more great news! It seems like the most of my worries are going to be taken care of... this is indeed an interesting platform! I smell tons of potential here.

ntools
TCP Listener (Beta) · FTP Server (Alpha)
Netduino Plus Go Module · Xml Parser
http://ntools.codeplex.com/


#9 Stefan

Stefan

    Moderator

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

Posted 11 October 2012 - 09:22 AM

Aah okay, so I won't be able to load assemblies with reflection, and expect that to run, but datas and stuff can be placed in a VM?

Oh yes, you can load assemblies with reflection too. Fabien wrote code for that too: netduino.helpers.Helpers.SDResourceLoader.

It wil require some memory on the device as well though; it'll load the assembly in the available memory.
"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

#10 Nicky

Nicky

    Advanced Member

  • Members
  • PipPipPip
  • 78 posts
  • LocationDenmark

Posted 11 October 2012 - 09:30 AM

Oh yes, you can load assemblies with reflection too. Fabien wrote code for that too: netduino.helpers.Helpers.SDResourceLoader.

It wil require some memory on the device as well though; it'll load the assembly in the available memory.


Yeah, I'm already loading assemblies with reflection, but I was wondering if it was possible to load assemblies into a virtual memory...

ntools
TCP Listener (Beta) · FTP Server (Alpha)
Netduino Plus Go Module · Xml Parser
http://ntools.codeplex.com/


#11 Stefan

Stefan

    Moderator

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

Posted 11 October 2012 - 09:33 AM

Yeah, I'm already loading assemblies with reflection, but I was wondering if it was possible to load assemblies into a virtual memory...

Ahh, I fear that's not possible currently. Maybe with some firmware tweaks, but that's beyond my knowledge.
"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

#12 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 11 October 2012 - 10:09 AM

There are some TI Stellaris cortex based mcu's that can have added memory to it, LM3 series or what they are called. Is this not possible with any STM32 chips? one example of this: https://estore.ti.co...oard-P1903.aspx

--
Asbjørn


#13 CW2

CW2

    Advanced Member

  • Members
  • PipPipPip
  • 1592 posts
  • LocationCzech Republic

Posted 11 October 2012 - 10:51 AM

STM32F4-s have memory controller that supports external RAM and flash memories, but I think the problem is the price - IMHO it will be >$100 and there are already dozens of such ARM boards on the market. The current implementation of .NET Micro Framework cannot really fully utilize (*) the power of these boards, for any performance critical project you'd probably end up with an RTOS of some kind; and you could get the 'full' .NET Framework running on x86 board for a few bucks more...

(*) The biggest weakness is missing native code translation (either JIT or AOT) and resource size limitation.

#14 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 11 October 2012 - 04:15 PM

Hi neslekkim, To echo what CW2 said, the STM32 chips do have an external memory bus and you could in theory add on external SRAM. It's pricey compared to SDRAM, but the bigger issue is the huge number of pins required and the potential for the external RAM to have signal integrity issues. External RAM buses are designed for adding RAM next to an MCU, not necessarily over a cable. Chris

#15 neslekkim

neslekkim

    Advanced Member

  • Members
  • PipPipPip
  • 350 posts
  • LocationOslo, Norway

Posted 11 October 2012 - 04:35 PM

ah, interresting. For my use I guess sd cards, or other spi flash would go a long way, I'm thinking about fpga configuration here, where an netduino could control that part.

--
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.