.NET Gadgeteer

Summary

Microsoft .NET Gadgeteer is an open-source rapid-prototyping standard for building small electronic devices using the Microsoft .NET Micro Framework and Microsoft Visual Studio/Visual C# Express.[1][2]

.NET Gadgeteer
Original author(s)Microsoft Research Cambridge
Developer(s)Microsoft
Initial releaseSeptember 20, 2010; 13 years ago (2010-09-20)
Final release
Core 2.14.500 / 2012; 12 years ago (2012)
Repositoryarchive.codeplex.com?p=gadgeteer
Written inC#, Visual Basic .NET
Platform.NET Micro Framework
TypeEmbedded systems
LicenseApache License 2.0,
Creative Commons 3.0
Websitemicrosoft.com/en-us/research/project/net-gadgeteer/

The Gadgeteer platform edit

The Gadgeteer platform centers around a Gadgeteer mainboard with a microcontroller running the .NET Micro Framework. Gadgeteer sets out rules about how hardware devices packaged as add-on modules may connect to the mainboard, using solderless push-on connectors. Gadgeteer includes a small class library to simplify the implementation details for integrating these add-on modules into a system. It is a way of assigning the plethora of functions that a microcontroller provides to sockets that have a standardized, small set of interfaces at the hardware level.[3]

History and licensing edit

.NET Gadgeteer was created by researchers at Microsoft Research Cambridge, where the Sensors and Devices group created it as a way develop device ideas rapidly and iteratively. It quickly generated interest from hobbyists, teachers, and developers, who wanted a platform to build gadgets in a short time.[4]

In response to outside interest, Microsoft then released Gadgeteer as an open source software project,[5] describing the project as "an open collaboration between Microsoft, hardware manufacturers, and end users".[4]

The core libraries are published under the Apache 2.0 License, while the hardware designs are under the Creative Commons 3.0 License. The core source code is publicly available from the CodePlex source repository.[4]

Microsoft has stated plans to continue supporting and investing in the .NET Gadgeteer ecosystem, including hosting educational materials and working with companies to create compatible kits and modules.[4]

Design and construction edit

 
.NET Gadgeteer mainboard and button module.

.NET Gadgeteer projects consist of a mainboard and a series of modules connected via a standard 10 pin connector. The mainboard sockets can support one or more different types of modules, shown by a series of letters next to the socket. Each module has a letter showing its module type. (Connecting modules incorrectly does not harm the hardware – providing only one red power module is used). Any module that supplies power (via USB, DC or battery) is coloured red to help prevent multiple power sources that can potentially harm the devices.

The Gadgeteer library includes a layer of event-driven drivers and code generation, which integrates with Visual Studio. This enables developers to visually create a diagram in Visual Studio of which hardware modules (for instance, a camera module, button module and screen module) are connected to which sockets on the mainboard, and the Gadgeteer SDK then auto-generates code creating object instances for all the relevant hardware. In this way the developer can immediately begin writing .NET code targeting the connected hardware.[6]

Many different modules are currently available for a series of hardware vendors, including wireless transmission, environment sensors, actuators and custom community modules resulting in a large ecosystem of projects.[7][8][9][10][11][12][13]

Hardware edit

Any hardware manufacturer, builder or hobbyist can create .NET Gadgeteer-compatible hardware; currently multiple manufacturers participate.

Mainboard Clock speed (MHz) Processor Cores Number of sockets Width (mm) Length (mm) Manufacturer
Argon R1 120 LPC1788 Cortex-M3 1 14 57 92 Love Electronics
Eth Mainboard 1.0 168 STM32F407 Cortex-M4 1 8 42 57 Mountaineer Group
USB Mainboard 1.0 168 STM32F407 Cortex-M4 1 9 32 57 Mountaineer Group
Nano 200 Freescale ARM920T 1 10 42 57 Sytech Design
FEZ Spider 73 ARM7 LPC2478 1 14 52 57 GHI Electronics
FEZ Hydra 200 ARM9 AT91SAMRL 1 14 62 87 GHI Electronics
FEZ Cerberus 168 STM32F405 Cortex-M4 1 8 47 57 GHI Electronics
FEZ Cebuino Bee 168 STM32F405 Cortex-M4 1 3 55 80 GHI Electronics
Bambino 200 204 LPC4330 Cortex-M4 & M0 2 5 58 102 Micromint
Bambino 200E 204 LPC4330 Cortex-M4 & M0 2 10 58 102 Micromint


See also edit

References edit

  1. ^ "Microsoft Gadgeteer home page". Archived from the original on 2012-03-23. Retrieved 2012-03-31.
  2. ^ Hodges, Steve; Scott, James; Sentance, Sue; Miller, Colin; Villar, Nicolas; Schwiderski-Grosche, Scarlet; Hammil, Kerry; Johnston, Steven (2013). ".NET gadgeteer". Proceeding of the 44th ACM technical symposium on Computer science education. pp. 391–396. doi:10.1145/2445196.2445315. ISBN 9781450318686. S2CID 8921467.
  3. ^ "The .NET Gadgeteer Platform". Mountaineer. Archived from the original on 2014-04-19. Retrieved 2014-04-19.
  4. ^ a b c d "Introducing .NET Gadgeteer!". CodePlex. 2013-04-19. Retrieved 2014-04-19.
  5. ^ ".NET Gadgeteer". Microsoft. September 20, 2010. Retrieved 2014-04-19.
  6. ^ Hodges, Steve; Taylor, Stuart; Villar, Nicolas; Scott, James; Bial, Dominik; Fischer, Patrick (February 2013). "Prototyping Connected Devices for the Internet of Things" (PDF). IEEE Computer. 46 (2): 26–34. doi:10.1109/MC.2012.394. S2CID 12629843.
  7. ^ Clayton, Steve, ed. (2012-02-15). "What we didn't show you at CES: Microsoft's .NET Gadgeteer". Blogs.technet.com. Archived from the original on 2012-04-14. Retrieved 2012-05-15.
  8. ^ "Microsoft Research's .NET Gadgeteer steps out into the light, shoots daggers at Arduino". Engadget.com. 4 August 2011. Retrieved 2012-05-15.
  9. ^ "NET Gadgeteer looks to draw tinkering geeks away from Arduino". Slashgear.com. 4 August 2011. Retrieved 2012-05-15.
  10. ^ Pawel Piejko (2011-08-07). "NET Gadgeteer - Microsoft's open-source toolkit for building gadgets". Gizmag.com. Retrieved 2012-05-15.
  11. ^ "What Can You Do with .NET Gadgeteer?". Devhammer.net. 2012-02-18. Retrieved 2012-05-15.
  12. ^ "Gadgeteer: Microsoft's open-source .NET alternative to Arduino". Extremetech.com. 2011-08-04. Retrieved 2012-05-15.
  13. ^ Mike Dodaro (2012-04-10). "NET Gadgeteer Bluetooth Control of Motor Driver". Mikedodaro.net. Retrieved 2012-05-15.
  14. ^ "GHI Electronics homepage". Ghielectronics.com. Retrieved 2012-05-15.
  15. ^ "Love Electronics homepage". loveelectronics.co.uk. Archived from the original on 2013-05-02. Retrieved 2012-08-22.
  16. ^ "Micromint USA homepage". micromint.com. Retrieved 2013-05-08.
  17. ^ "Mountaineer Group homepage". mountaineer.co.uk. Retrieved 2012-08-22.
  18. ^ "Seeed Studio homepage". Seeedstudio.com. 2011-04-29. Retrieved 2012-05-15.
  19. ^ "Sytech Design homepage". Sytechdesigns.com. Retrieved 2012-05-15.