Gadgeteer vs non Gadgeteer

I apologize up front for asking this due to the lack of my knowledge of it all.
It seems that the Gadgeteer thing is really liked and taking off for GHI.

Would someone to help my mind grasp the whole Gadgeteer concept.

I think its awesome that GHI has so many great modules available. What i dont get is that many of them are geared towards the Gadgeteer concept. In other words there may or may or may not be any code for it yet. Its my understanding (feel free to correct me) that when these modules come out its a whole community thing in which users can write their own code and post it.

When i first found out about GHI, before the Gadgeteer thing it was nice for me because when i clicked on an item there was a section for code for it that GHI developed so i was comfortable using it. Using Gadgeteer code make me feel leary because it could be code that some novice got working (barley) and was not fully tested. This is the part that i just dont get, why its so popular.

Modules do come with code (the driver). Some of them may not be in “release” versions yet, and since some of the modules are brand new I would expect those will take longer to mature, but there are also a lot of existing modules that have now just been moved to Gadgeteer so they will have a mature, tested codebase.

So if anything, I think Gadgeteer is in the complete opposite direction to what you thought - it will only make things completely easier. The intent of it has always been spending time on the “value add” portions of your application, not the “how do I talk to this device”.

I agree with Brett. Gadgeteer is, if anything, an easier to use platform. Want to use a new device on your board? Just drag/drop in the Visual Studio wizard, save, and start typing the code that uses it. It’s literally that simple. It even instantiates the objects for you.

Now granted, people make their own modules. And sometimes GHI or other companies make modules that are very complex software wise. So sometimes, the software support isn’t as polished as I implied above, but in general those modules are clearly advertised as such. If the current offering of Gadgeteer modules fulfills your needs, I’m sure you’ll have no problems getting started with it.

Plus you know how honest GHI is so we will tell you if something is in the works or not.

I like to add that even though this is open source, GHI doesn’t throw work at community. We surely love contributions but we do not expect anyone to do our work. This is proven in current offers.

So help me out here. I realize i will be seen as a utter moron here.

I go to the GHI shop and click on the VideoOut Module. i see nothing there to tell me how to implement it.
Likewise, i click on Temp&Humidity Module, I click the download tab and am given a link to "Downloads and Tutorials " When i go there i see nothing that pertains to that specific module. Many of the Gadgeteer modules are like this.

All gadgeteer related downloads are on gadgeteer codeplex.

Most modules are open source but not all. You can tell by seeing the open source hardware logo.

@ jdal

No, you don’t seem like a moron at all…perfectly natural question.

The answer is that with Gadgeteer, once you get through your first project or two, you really won’t need much by way of instructions for a specific module, because the pattern will be the same for any given module:

  1. Install the module driver (if it wasn’t already installed as part of the GHI Gadgeteer SDK installation, which installs drivers for all of their currently-available modules, plus all of the Seeed Studio modules on the market).

  2. Create a new Gadgeteer project.

  3. Open the Visual Studio Toolbox and drag the desired modules onto the designer (which will have opened when you created the project), and connect them to the appropriate sockets (either by dragging from the module socket to the mainboard, or by right-clicking the designer background and selecting “connect all modules”. Whichever way you do it, Gadgeteer won’t let you connect a module the wrong way.

  4. Connect your physical modules to your mainboard using the same sockets you used in the designer.

  5. Start writing code. The designer, under the covers, instantiates the drivers for any given module using intuitive names. So if you add a button module, and wanted to write code to handle when the button is pressed, you simply type:


button.ButtonPressed +=

inside the ProgramStarted function, then hit TAB twice, and Visual Studio creates the event handler for you. Then you just add the code you want to execute.

The name for whatever module you’ve added is displayed in the designer below the image of the module, if you need it for reference.

The APIs for a given module can be figured out either by typing the module’s name, and a dot, and looking through the IntelliSense entries, or if the module is one of the ones that’s up on Codeplex, you could browse the source.

Hope that helps!

@ devhammer,

Thank you so much!

The problem i had comprehending all of this was that i never actually tried creating a Gadgeteer project before. I have been just reading the forums on and off.

With you post i created a new Gadgeteer project and i was FRIKEN BLOWN AWAY on how simple this was done. I really was totally blown away at how intuitive this was made. Simply ingenious, and could not think of a better way to do it. My hats off to GHI for this one

Now it all makes much, much more sense now.
So that leaves me with just two burning questions.

#1) say GHI burps out 4 new modules on Monday. How am i updating this package to include these new modules.
#2) I bought the FEZ Cerberus, but that was not in my tool set. Is it just a matter that i have an outdated package or it not available yet ?

Seriously, thank you so much that that very informative post. Really helped me out.

@ jdal - the GHI cerberus SDK (netmf 4.2 support) is not available yet. bleeding edge and all that…

When GHI publishes a SDK update, they include an installer that adds all the new mainboard and module drivers so they appear in your toolbar. Also, the gadgeteer codeplex repo gets updated. You can get all the source there. There have been a few cases where the hardware was available to buy before the SDK update was released, but not by much.

What @ ransomhall said.

For pure Gadgeteer work, you’ll want to stick with FEZ Spider or FEZ Hydra for the moment, as they both are a bit more mature than Cerb, which as @ ransomhall noted, relies on NETMF 4.2, which was only recently added for Gadgeteer, and GHI is in the process of updating their SDK to support as well.

As for modules that aren’t part of the current SDK, for example Pete’s neat MIDI module, the module creator can just set you up with a nice MSI to install the driver (as in Pete’s case), or if they haven’t made that yet, they could just give you code with which to drive the module (I shamefacedly admit that’s as far as I’ve gotten with my IR module :-[ )

@ ransomhall,

Thank you again. I think GHI is so far down in the trenches that there is the possibility they forgot how much they know. For instance if someone knowing nothing of .netmf goes to http://www.ghielectronics.com/ main page.
There is not much substance there to lead them quickly to know about it. You can click on Profile, then are taken to a page that gives you a blurb about savings, but all sites do that. We are used to the typical sales pitch. The File System Solutions tab when you click on it is blank and the Consulting is not worth clicking on yet as a newcomer will be thinking “i am not interested in consultation but finding out what its all about.”

The next thing is to click on Catalog to see what they got, but your still left saying to yourself “ok, neat stuff but what ts .netmf all about”. Then there is Community, which one could click on Downloads and Tutorials, and then grab the "Beginners Guide to .NET Micro Framework " and flip through that long but very informative .pdf. This is all missing a very main component in my opinion. which is to quickly show & tell a new commer how great .netmf is.

I feel it would be far better on the main page to have something say Click here to see how easy .netmf is and what its all about" then GHI could make a nice video starting from scratch showing go here get this install first and then get this next. Then pick a main board like the FEZ Hydra along with some modules like LCD, Camera & button board. Start a new project, chick on the these boards and right click and select auto connect. Then say “we are going to create a project that when you press the button the camera will take a photo and display it on the LCD”. Tthen start typing in the code live, compile and download it and run it.

Doing it in this fashion would only take several minutes, and would truly show just how awesome GHI’s products are, how easy to use the environment is, and how quickly .netmf can be used to develop applications with.

@ jdal - In case you missed it, Gus has hinted that we’ll have a completely redesigned website perhaps within the next week :slight_smile:

@ ianlee74

Will it come with a copy of “Who Moved My Cheese?” :wink:

@ jdal,

Could not agree more. After playing .Net Gadgeteer for a few days, I got the feeling that the targeted users of GT are actually software guys who had little prior experience with hardware/electronics. In other words, GT may be too much overhead for people who buy L293D in bulk and mess with their protoboards all day.

For those people, GT provides them access to a larger user base consists of mostly hardware newbies for their customized GT modules.

If I am not too wrong, GHI should really provide two sets of different services for the two different sets of people:

Beginner tutorials, GT 101, for maybe 90% of GHI’s customers in revenue/profit

and

How to build/market/sell your GT modules, for the hardware elites

I’m sure it will be so awesome and intuitive that the cheese will just be so Freakin’ Easy to find that no manual be necessary :wink:

@ jdal we had a meeting today talking about exactly what you just said!

@ Gus,

Great! I wish that i did not work so much for my current job that i could dedicate far more time to .netmf and start cranking out code and boards to help the community.

I have been a software / hardware engineer for over 20 years now. I truly believe that .netmf is the best thing to come out ever. IMHO in a short time it will catch on like wildfire.

Just one thing to keep in mind jdal: Gadgeteer is not GHI’s baby, but rather Microsoft’s. http://www.netmf.com/gadgeteer/

GHI just happens to be the biggest hardware implementer of Gadgeteer hardware, so far. I’m sure there is a lot of collaboration going on behind the scenes with Microsoft, but I just wanted to make sure you know where to point the finger when the next set of libraries needs to be released. :slight_smile:

Correct, gadgeteer is very new still. Smart companies will see this value and jump in and help in this amazing global collaboration.

@ MoonDragon,

IMHO, GHI’s main business will be in making GT main boards, especially GHI-specific SOM boards and “Premium Library”. That is where GHI has competitive advantage over everyone.

The modules, on the other hands, will become cheaper as more people design/produce them. Of course the more modules are designed, the more main boards are needed. Hopefully we will see a growing community and a complete ecosystem. If so, everybody wins.