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

Prototype module prototyped on a prototype Protomodule


  • Please log in to reply
36 replies to this topic

#21 ItsDan

ItsDan

    Advanced Member

  • Members
  • PipPipPip
  • 101 posts

Posted 14 May 2012 - 05:48 PM

Fabien I'll make sure Arron pops in and adds some value to the discussion, but I'll address what I can. To program the module today, yes you'd need a separate ST-Link device to connect to the SWIM port, but that won't always be the case. Eventually you'll be able to deploy firmware to modules using the Go mainboard (this isn't something we're working on, people far smarter than myself are working on this). Likewise the 'standard' module firmware is something being developed to help module developers, not a lot of details other than it's meant to standardize the interface from the device pins to the main board (less logic being handled on the stm8 for most modules). If you wanted to route the connectors for the go bus socket and add the supporting capacitors onto a discovery board I'm sure you could come up with a suitable replacement, although at low-volume I'm not sure how great the cost savings would be, at so the main benefit would be the st-link. But if future updates nullify that, we have a more compact package, designed to accomodate a breadboard, power and ground bus, mounting holes on the Go spec, and if people want a no-solder, ready to go device we'd be happy to offer that.
Follow the adventures of the Box of Crappy Surplus

Total BOCS Traveled Distance: 9708 miles | States Visited: 5
Track the Box

#22 Arron Chapman

Arron Chapman

    Advanced Member

  • Members
  • PipPipPip
  • 289 posts
  • LocationOregon, USA

Posted 14 May 2012 - 07:12 PM

@Fabien
The idea here is that if you want to build a module you can use the protomodule (with or without a mini breadboard) to develop and test your idea very rapidly. This obviously is slightly hindered by the lack of Generic firmware.

As far as the "Standard Module Firmware" goes: what specific features will it provide and when will it be released?

For the answer to that you'll have to talk to Chris. The basic idea there, as far as I understand it, is that it will provide a virtualized interface to the I/Os, including the various higher level protocols such as SPI, UART or I2C. This firmware will suit the needs of most modules, allowing for every pin to be controlled directly by the Go. From the standpoint of the protomodule, this would mean that you can add parts to it and be able to write all of your interface code in C# and never have to touch the module's firmware. As I'm sure your aware there are changes coming to the Go!Bus software spec, I wouldn't expect to see the generic virtualized I/O firmware until after then. Around that time, a project will be released which will allow users to flash the firmware on modules via the Go, this will remove the necessity to have an ST programmer, for the users who don't want to use (or can't) the generic firmware.

This however only addresses a small portion of the user base I expect for the protomodule. So far I've not mentioned the person who has a part, and doesn't want to buy a module to replace it, or someone who has a part that none of the module builders has built a module for. Like the protoshield for the traditional Netduinos I don't expect that most of the users will be looking to build modules for sale.

As for the requirements for working with the protomodule, that one is pretty simple.
  • Netduino Go
  • Computer capable of programming the Netduino Go
I'll be the first to admit that at this point in time that isn't true, that to use the protomodule effectively you need a programmer and you'll have to write your own firmware, for an undocumented protocol. Two things about this are true though; First, that is going to change with the addition on the generic firmware. Second, I expect all or at least most of the early adopters to be people who are looking to build modules or who are already building modules.

When you talk EE use small words, I'm just a Software Developer :)
My Blog/Site and Everything Else

If my post helped you please consider pressing the "Like This" button in the bottom right-hand corner.

 

Oh my. So many things, so little money!!

 


#23 Fabien Royer

Fabien Royer

    Advanced Member

  • Members
  • PipPipPip
  • 406 posts
  • LocationRedmond, WA

Posted 14 May 2012 - 08:12 PM

Dan, Arron,

Thanks for providing additional details.

To program the module today, yes you'd need a separate ST-Link device to connect to the SWIM port


That means adding another ~$20 to the $20 cost of the ProtoModule, way over the $8 cost of the STM8S.

If you wanted to route the connectors for the go bus socket and add the supporting capacitors onto a discovery board I'm sure you could come up with a suitable replacement


The detachable board on the STM8S has the necessary decoupling capacitors and features a 16 Mhz quartz for precision frequency counting / generation. Does the ProtoModule include a resonator or a quartz as well? For reference, here is the STM8S, detached from the STLink interface, with a Go! connector soldered to it:

Posted Image


As I'm sure your aware there are changes coming to the Go!Bus software spec


Can you please share a link to that Go!Bus software spec? I have yet to see it.

For the answer to that you'll have to talk to Chris.


I have asked Chris and did not get the answers I was seeking. It sounded like you had insights that I did not have.

The basic idea there, as far as I understand it, is that it will provide a virtualized interface to the I/Os, including the various higher level protocols such as SPI, UART or I2C. This firmware will suit the needs of most modules, allowing for every pin to be controlled directly by the Go

I've heard this before, starting with the Shield Base... and it sounds like these two solutions will be competing with each other.
It will be interesting to see how these features will fit and perform within the constrained resources available on the STM8...

Around that time, a project will be released which will allow users to flash the firmware on modules via the Go, this will remove the necessity to have an ST programmer, for the users who don't want to use (or can't) the generic firmware.


Flashing module firmware onto a module is one thing, programming / debugging one is another thing altogether that the Go! project to be released will definitely not address.

I'll be the first to admit that at this point in time that isn't true, that to use the protomodule effectively you need a programmer and you'll have to write your own firmware, for an undocumented protocol.


Thanks for clarifying.

Two things about this are true though; First, that is going to change with the addition on the generic firmware.


It isn't true until I can run actual bits Posted Image

Second, I expect all or at least most of the early adopters to be people who are looking to build modules or who are already building modules.


I believe that you're correct and as one of these people, I don't understand the value proposition at the moment.

Cheers,
-Fabien.

#24 Arron Chapman

Arron Chapman

    Advanced Member

  • Members
  • PipPipPip
  • 289 posts
  • LocationOregon, USA

Posted 14 May 2012 - 08:34 PM

That means adding another ~$20 to the $20 cost of the ProtoModule, way over the $8 cost of the STM8S.

If you wanted to you can do like I did, and just buy the STM8s Discovery board and use the top half as a programmer.

Can you please share a link to that Go!Bus software spec? I have yet to see it.

...for an undocumented protocol

I have asked Chris and did not get the answers I was seeking. It sounded like you had insights that I did not have.

Stop by chat sometime or add my on skype (unkwntech) and we can discuss it at length.

I've heard this before, starting with the Shield Base... and it sounds like these two solutions will be competing with each other.
It will be interesting to see how these features will fit and perform within the constrained resources available on the STM8...

Resources are not that constrained on the STM8s, at least not from my experience thus far.

Flashing module firmware onto a module is one thing, programming / debugging one is another thing altogether that the Go! project to be released will definitely not address

Sure, but with the generic firmware the only debugging one should have to do (in most cases) is between the module and the hardware your trying to use. This is no different from working with the Netduino (+/Mini).

When you talk EE use small words, I'm just a Software Developer :)
My Blog/Site and Everything Else

If my post helped you please consider pressing the "Like This" button in the bottom right-hand corner.

 

Oh my. So many things, so little money!!

 


#25 Fabien Royer

Fabien Royer

    Advanced Member

  • Members
  • PipPipPip
  • 406 posts
  • LocationRedmond, WA

Posted 14 May 2012 - 09:14 PM

Stop by chat sometime or add my on skype (unkwntech) and we can discuss it at length.


You've got a Skype contact request pending Posted Image

Resources are not that constrained on the STM8s, at least not from my experience thus far.


Generic firmware supporting virtualized I/Os for various peripheral types will challenge the capabilities of the STM8s, especially when using more than one at a time.


Cheers,
-Fabien.

#26 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 14 May 2012 - 10:35 PM

Hi Fabien,

Can you please share a link to that Go!Bus software spec? I have yet to see it.

I believe that Arron is talking about the planned standard virtual i/o firmware that's planned for Netduino Go and go!bus. With the initial launch of Netduino Go, we're using a 1.0 draft spec of go!bus (electrical and mechanical only). We're using the Shield Base to work out the Virtual I/O specifics for STM32...and then we'll port these to STM8S.

We're making lots of progress on a few software updates to Netduino Go... Once we feel comfortable with the performance of virtual i/o on the Shield Base, we'll formalize that into a spec. You're welcome to join with us in implementing that for STM8S if you'd like...Netduino is community.

We've had a lot of interest in building modules, so we're giving early guidance and logo approval for module builders who feel comfortable writing their own custom SPI code for modules (like with the Nwazet display module)...understanding that that code will need to be re-integrated into or replaced by the standard i/o firmware in a few months.

We saw how .NET Gadgeteer went from something simple to something sort-of-compatible and overly-complicated in a matter of months, and we're determined to use the go!bus interoperability logo program and virtual i/o to ensure that doesn't happen with the go!bus ecosystem. It's all balance...hopefully we can all come up with the best balance.

I believe that you're correct and as one of these people, I don't understand the value proposition at the moment.

You're fairly advanced with software and electrical design, but I think that a lot of users will want to design their own modules (for sale or for personal use). The STM8S-Discovery can be a pretty intimiating thing to look at, so having a simpler starting point to work with (such as ItsDan and Arron's Prototype module) is really valuable.

Chris

#27 JonnyBoats

JonnyBoats

    Advanced Member

  • Members
  • PipPipPip
  • 155 posts
  • LocationPhillips, ME

Posted 15 May 2012 - 02:51 AM

Fabien, have you done a blog post or writeup on this? This is great information.


The detachable board on the STM8S has the necessary decoupling capacitors and features a 16 Mhz quartz for precision frequency counting / generation. Does the ProtoModule include a resonator or a quartz as well? For reference, here is the STM8S, detached from the STLink interface, with a Go! connector soldered to it:

Posted Image



#28 Nevyn

Nevyn

    Advanced Member

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

Posted 15 May 2012 - 04:58 AM

Arron/Dan, Nice work on the module. Looking forward to getting my hands on one and playing :) 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


#29 Fred

Fred

    Advanced Member

  • Members
  • PipPipPip
  • 302 posts
  • LocationUK

Posted 15 May 2012 - 10:49 AM

Let's not forget that with a lot of hobby projects it's the journey not the destination that's the important bit. Maybe Aaron and Dan aren't making the protomodule because it fills a gap that other existing tools don't support, but because they want to and are having fun. :)

#30 ItsDan

ItsDan

    Advanced Member

  • Members
  • PipPipPip
  • 101 posts

Posted 15 May 2012 - 12:19 PM

Let's not forget that with a lot of hobby projects it's the journey not the destination that's the important bit.

Maybe Aaron and Dan aren't making the protomodule because it fills a gap that other existing tools don't support, but because they want to and are having fun. :)


Fred, Thanks for the support and I agree with your sentiment. Having never gone through the process of seeing a project like this through from computer design files to physical device to functional demo it's been interesting and a lot of fun (and slightly pricey), and I'm a "learn by doing" type of person. This is also something of a test run, I have some parts scattered on my desk that we're exploring for further modules (some attached to protomodules :P), those should be more useful towards filling the lack of useful modules. But as far as this one, if people find value to it, we're glad to be able to offer it, as Fabien pointed out there are other options too, and I actually recommend the Discovery board. It was easy to use and setup and I use one here to program my protomodules.

I've attached an image of a bare PCB next to the discovery board. Note that the actual prototype area on the discovery is the parts below the routed slots. The part above those slots is the ST Link programmer, which is what I connect to the SWIM connector to program the chip on the protomodule.

Attached Files


Follow the adventures of the Box of Crappy Surplus

Total BOCS Traveled Distance: 9708 miles | States Visited: 5
Track the Box

#31 JonnyBoats

JonnyBoats

    Advanced Member

  • Members
  • PipPipPip
  • 155 posts
  • LocationPhillips, ME

Posted 15 May 2012 - 03:33 PM

This sounds like a marrage made in heaven Dan. Using the discovery board as a programmer for the proto module seems like a cheaper and more flexible solution rather than buying a separate programmer. Would you be willing to provide more details on your configuration?

I've attached an image of a bare PCB next to the discovery board. Note that the actual prototype area on the discovery is the parts below the routed slots. The part above those slots is the ST Link programmer, which is what I connect to the SWIM connector to program the chip on the protomodule.



#32 ItsDan

ItsDan

    Advanced Member

  • Members
  • PipPipPip
  • 101 posts

Posted 15 May 2012 - 05:35 PM

This sounds like a marrage made in heaven Dan. Using the discovery board as a programmer for the proto module seems like a cheaper and more flexible solution rather than buying a separate programmer. Would you be willing to provide more details on your configuration?


You mean the configuration for programming? On the Revision C boards (all the ones you've seen pictures of) you simply connect the 4 male jumpers on the Discovery board to 4 specific pins on the protomodule (3.3v, swim, gnd, reset), I forget the pin numbers, but it's not important because on Rev D (the ones we'll actually be shipping) we've added space for a 4 pin header on the board already connected to the right pins so you'll just connect it that way, should be simple.
Follow the adventures of the Box of Crappy Surplus

Total BOCS Traveled Distance: 9708 miles | States Visited: 5
Track the Box

#33 Fabien Royer

Fabien Royer

    Advanced Member

  • Members
  • PipPipPip
  • 406 posts
  • LocationRedmond, WA

Posted 15 May 2012 - 08:27 PM

Fabien, have you done a blog post or writeup on this? This is great information.

Hi Johnny,

I do have a blog post planned related to this.
Having said that, I'm swamped with other Netduino Go! work right now and I won't be able to write it for some time unfortunately.

Cheers,
-Fabien.

#34 ItsDan

ItsDan

    Advanced Member

  • Members
  • PipPipPip
  • 101 posts

Posted 02 June 2012 - 02:29 PM

The production boards and components are all in and assembly has started, so anyone who preordered a protomodule should see theirs shipping sometime next week. Thanks for all the support and we're already using protomodules 'in house' to test out new module ideas. Attached are pictures of the Protomodule along with accessory rail headers and a minibreadboard, as well as my programming setup using the STLink on a discovery board connected to the dedicated SWIM port on the protomodule, much easier than the prototype version that required connecting individual pins.

Attached Files


Follow the adventures of the Box of Crappy Surplus

Total BOCS Traveled Distance: 9708 miles | States Visited: 5
Track the Box

#35 Chris Walker

Chris Walker

    Secret Labs Staff

  • Moderators
  • 7767 posts
  • LocationNew York, NY

Posted 02 June 2012 - 09:20 PM

Very cool, congrats ItsDan and Arron! Gotta go order mine now :) Chris

#36 Nevyn

Nevyn

    Advanced Member

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

Posted 21 June 2012 - 08:22 PM

I finally managed to get the postal service to release my delivery from the US and it turns out to be the ProtoModule I ordered a few weeks ago :) Time to take my old prototype circuit apart and move the light sensor over to the ProtoModule: Attached File  ProtomoduleLightSensorLabel.jpg   43.63KB   37 downloads I like the fact that the module allowed me to tidy up the breadboard by removing the STM8 and supporting circuitry and it also gives me a socket to connect the module to the GO! all in one nice package. Arron/Dan - thanks for a nice piece of work. 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


#37 Gutworks

Gutworks

    Advanced Member

  • Members
  • PipPipPip
  • 363 posts
  • LocationOttawa, Ontario

Posted 21 June 2012 - 08:26 PM

I like the fact that the module allowed me to tidy up the breadboard by removing the STM8 and supporting circuitry and it also gives me a socket to connect the module to the GO! all in one nice package.

Mark that's one nice and tidy setup you have going there. I'm excited to see what sort of module development will be coming from your workshop.

I just got my ProtoModule today as well, but am now waiting on STMicroelectronics to send me an ST-Link.

Great work!

Cheers,
Steve




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.