.NET Gadgeteer
Nur Lego für Große oder doch der einfache Weg des
 „rapid prototyping“ für Hardwarekomponenten?



                              Holger Wendel
Gadgeteer

Holger Wendel befasst sich seit 1997 mit der Planung und
Entwicklung von Web Anwendungen. Seit 2009 entwickelt er vor allem
auf Grundlage des .NET-Frameworks mit ASP.NET (MVC) in HTML,
JavaScript und C#, sowie mit WPF, Silverlight und Windows Phone.
Er ist Gadget verrückt, Trainer, Autor und Seele seines Blog unter
http://blog.levdaywalker.de

Als Informatiker für Softwaretechnologie hat er auch ein gutes
Händchen für UI Konzepte, Design und ist Windows Phone Entwickler
der ersten Stunde. Holger Wendel arbeitet bei der msg systems ag als
Senior IT Consultant für Client-, Web- und Mobile-Anwendungen.
Ursprung der .NET Gadgeteer
                  Plattform II
•   Die .NET Gadgeteer Plattform wurde von Steve Hodges und dem
    Sensoren- & Geräte-Team bei Microsoft Research Cambridge
    entwickelt.

•   Die Arbeit am            - Projekt verschlang Monate an Forschungs- und
    Entwicklungsarbeit
•   So wurde das .NET Gadgeteer ins Leben gerufen und Geräte wie SenseCam
    konnten in Stunden oder sogar Minuten realisiert werden.




•   Nicolas Villar und James Scott arbeiteten zusammen um eine Alternative zu
    den langsamen Prozessessen des Prototypings für neue Geräte mit
    Embedded-Mikrocontrollern zu entwickeln.
Ursprung der .NET Gadgeteer
                  Plattform II
•   Normalerweise erfordert dieser Prozess die Erstellung und Gestaltung
    elektronischer Schaltungen und deren Prüfung, die auf jeder Stufe der
    Fertigung wiederholt werden müssen. Das Schreiben der Software geschieht
    mit Low-Level-Code in Assembler oder C, ohne gute Debugging-Tools.

•   Das .NET Gadgeteer kombiniert einen ARM7-Mikrocontroller,
    programmierbare Hardware-Module, und das .NET Micro Framework.

•   Hiermit können selbst .NET-Programmierer in die Geräteentwicklung mittels
    C# einsteigen, deren Know-how eher in der Embedded- / Software-
    entwicklung anstatt der Elektrotechnik liegt.

    Microsoft Research:
    .NET Gadgeteer / .NET Gadgeteer: A Platform for Custom Devices
Wofür überhaupt Prototyping?
• Es ist sinnvoll auf Basis von Prototypen seine Anforderungen genau
  zu definieren und diese in die spätere Produktion mit einfließen zu
  lassen.

• Da häufig erst mitten in der Entwicklung klar wird, welcher
  Entwicklungsansatz der richtige ist, sollte mit der technischen
  Umsetzung erst so spät wie möglich gestartet werden.

• So kann nicht nur Hardware, sondern auch Software erstellt werden.

   Solange man mit Prototypen arbeitet, wird der Wechsel zwischen
   verschiedensten Plattformen und Techniken unterstützt und man
   sollte so lange wie möglich auf dieser Basis iterieren.

   .NET Gadgeteer bringt Embedded-Elektronikbaukasten von Microsoft
Gibt’s sowas nicht schon?
Nicht so:
• Hardware und Software sind modular aufgebaut
• Alle Module werden von Standardklassen unterstützt
• Das Framework bietet objektorientierten Zugriff auf die Hardware
• Hex Codes und Pin Belegung waren Gestern

   Am Ende entscheidet immer der Einsatzbereich und die
   persönlichen Vorlieben ☺
Die Tools II

• Microsoft Visual C# Express 2010
• Verwendung von anderen Versionen wie Professional
• oder Ultimate ist problemlos möglich.

• Microsoft .NET Micro Framework 4.1 SDK
• Das SDK muss VOR dem .NET Gadgeteer Paket installiert werden!

• GHI NETMF v4.1 and .NET Gadgeteer Package
• Restliche SDKs und Komponenten.
Die Tools II

• Grafischer Hardwaredesigner
Tooldetails

Das .NET Micro Framework
• Auf der CPU laufen:
    – .NET Micro Framework, eine reduzierte Version von .NET
    – sowie spezielle Gadgeteer-Bibliotheken
• Die Plattform wird mit C# an programmiert
• Angeschlossene Geräte können in Echtzeit gedebuggt werden

Open-Source
• Die gesamte Software, von der Hardware-Beschreibung der Platinen,
  bis zum .NET Micro Framework, steht unter Open-Source-Lizenz und
  kann von der Microsoft Website Codeplex heruntergeladen werden.

   http://gadgeteer.codeplex.com/
Die Hardware II
• Mainboard mit “embedded processor” und markierten
  Steckverbindungen “plug-and-play”



•   Touch-/Display
•   Kamera
•   Ethernet
•   SD Kartenleser
•   USB Port
•   Taster
•   LEDs
•   Jede Menge Sensoren
Die Hardware II
Key Features (FEZ Spider):
•   14 .NET Gadgeteer compatible sockets that include these types:
      – X, Y, A, C, D, E, F, H, I, K, O, P, S, T, U, R, G, B and Z.
•   Configurable on-board LED
•   Configuration switches.
•   Based on GHI Electronics EMX module
      – 72MHz 32-bit ARM7 processor
      – 4.5 MB Flash
      – 16 MB RAM
      – LCD controller
      – Full TCP/IP Stack with SSL,
           HTTP, TCP, UDP, DHCP
      – Ethernet, WiFi driver and PPP
           ( GPRS/ 3G modems) and DPWS
      – Built-in Real Time Clock (RTC) with the suitable crystal
      – RLP allowing users to load native code (C/Assembly) for real-time requirements
      – Extended double-precision math class
      – USB Device with specialized libraries to emulate devices like thumb-drive, virtual COM (CDC), mouse, keyboard
      – 4-bit SD/MMC Memory card interface
      – Cryptography (AES and XTEA)
      – In-field update (from SD, network or other)
      – Low power and hibernate support
      – FAT File System
      – USB host
Hardwaredetails
Starter-Kit
• GHI Electronics bietet für die Microsoft .NET Gadgeteer
   Plattform ein Starter-Kit, für ca. 250 US-Dollar, an. Dieses
   beinhaltet ein Mainboard und zwölf weiter Module, wie
   einen 3,5 Zoll Touchscreen oder ein Kamera-Modul.
   http://www.ghielectronics.com/catalog/product/297

Module
• http://www.ghielectronics.com/catalog/category/275/

Andere Hersteller ziehen nach der Markt füllt sich und die Verfügbarkeit
der Komponenten wächst ☺
Wissenssammlung
Foren Support und Tutorials
• http://tinyclr.com/
• http://tinyclr.com/support/
• http://wiki.tinyclr.com/

•   http://www.netmf.com/
•   http://www.netmf.com/gadgeteer/forum/

API Referenzen                        Social
• .NET Micro Framework                • @netgadgeteer
• GHI NETMF Library                   • netgadgeteer
• GHI Open Source Hardware NETMF
• WIZnet Ethernet (FEZ Connect)
DEMO
Showcase: Featured Projects III
                 Camera Picture Puzzle




http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=188
Showcase: Featured Projects III
     Arcade Console                Flipbook Maker




http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=120
http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=121
Showcase: Featured Projects III
     Connected Servo         Gadgeteer-Powered Robot




http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=178
http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=173
FRAGEN?
Holger Wendel

… oder später ☺                       https://twitter.com/levdaywalker
speaker@levdaywalker.de       https://www.facebook.com/levdaywalker
http://blog.levdaywalker.de    http://www.slideshare.net/levdaywalker
DANKE!
Holger Wendel

Senior IT Consultant
Travel & Logistics
Telefon: +49 2233 9721 6229         msg systems ag
Mobil:     +49 170 3770406      www.msg-systems.com

holger.wendel@msg-systems.com

.NET Gadgeteer // msg@dnc12

  • 1.
    .NET Gadgeteer Nur Legofür Große oder doch der einfache Weg des „rapid prototyping“ für Hardwarekomponenten? Holger Wendel
  • 2.
    Gadgeteer Holger Wendel befasstsich seit 1997 mit der Planung und Entwicklung von Web Anwendungen. Seit 2009 entwickelt er vor allem auf Grundlage des .NET-Frameworks mit ASP.NET (MVC) in HTML, JavaScript und C#, sowie mit WPF, Silverlight und Windows Phone. Er ist Gadget verrückt, Trainer, Autor und Seele seines Blog unter http://blog.levdaywalker.de Als Informatiker für Softwaretechnologie hat er auch ein gutes Händchen für UI Konzepte, Design und ist Windows Phone Entwickler der ersten Stunde. Holger Wendel arbeitet bei der msg systems ag als Senior IT Consultant für Client-, Web- und Mobile-Anwendungen.
  • 3.
    Ursprung der .NETGadgeteer Plattform II • Die .NET Gadgeteer Plattform wurde von Steve Hodges und dem Sensoren- & Geräte-Team bei Microsoft Research Cambridge entwickelt. • Die Arbeit am - Projekt verschlang Monate an Forschungs- und Entwicklungsarbeit • So wurde das .NET Gadgeteer ins Leben gerufen und Geräte wie SenseCam konnten in Stunden oder sogar Minuten realisiert werden. • Nicolas Villar und James Scott arbeiteten zusammen um eine Alternative zu den langsamen Prozessessen des Prototypings für neue Geräte mit Embedded-Mikrocontrollern zu entwickeln.
  • 4.
    Ursprung der .NETGadgeteer Plattform II • Normalerweise erfordert dieser Prozess die Erstellung und Gestaltung elektronischer Schaltungen und deren Prüfung, die auf jeder Stufe der Fertigung wiederholt werden müssen. Das Schreiben der Software geschieht mit Low-Level-Code in Assembler oder C, ohne gute Debugging-Tools. • Das .NET Gadgeteer kombiniert einen ARM7-Mikrocontroller, programmierbare Hardware-Module, und das .NET Micro Framework. • Hiermit können selbst .NET-Programmierer in die Geräteentwicklung mittels C# einsteigen, deren Know-how eher in der Embedded- / Software- entwicklung anstatt der Elektrotechnik liegt. Microsoft Research: .NET Gadgeteer / .NET Gadgeteer: A Platform for Custom Devices
  • 5.
    Wofür überhaupt Prototyping? •Es ist sinnvoll auf Basis von Prototypen seine Anforderungen genau zu definieren und diese in die spätere Produktion mit einfließen zu lassen. • Da häufig erst mitten in der Entwicklung klar wird, welcher Entwicklungsansatz der richtige ist, sollte mit der technischen Umsetzung erst so spät wie möglich gestartet werden. • So kann nicht nur Hardware, sondern auch Software erstellt werden. Solange man mit Prototypen arbeitet, wird der Wechsel zwischen verschiedensten Plattformen und Techniken unterstützt und man sollte so lange wie möglich auf dieser Basis iterieren. .NET Gadgeteer bringt Embedded-Elektronikbaukasten von Microsoft
  • 6.
    Gibt’s sowas nichtschon? Nicht so: • Hardware und Software sind modular aufgebaut • Alle Module werden von Standardklassen unterstützt • Das Framework bietet objektorientierten Zugriff auf die Hardware • Hex Codes und Pin Belegung waren Gestern Am Ende entscheidet immer der Einsatzbereich und die persönlichen Vorlieben ☺
  • 7.
    Die Tools II •Microsoft Visual C# Express 2010 • Verwendung von anderen Versionen wie Professional • oder Ultimate ist problemlos möglich. • Microsoft .NET Micro Framework 4.1 SDK • Das SDK muss VOR dem .NET Gadgeteer Paket installiert werden! • GHI NETMF v4.1 and .NET Gadgeteer Package • Restliche SDKs und Komponenten.
  • 8.
    Die Tools II •Grafischer Hardwaredesigner
  • 9.
    Tooldetails Das .NET MicroFramework • Auf der CPU laufen: – .NET Micro Framework, eine reduzierte Version von .NET – sowie spezielle Gadgeteer-Bibliotheken • Die Plattform wird mit C# an programmiert • Angeschlossene Geräte können in Echtzeit gedebuggt werden Open-Source • Die gesamte Software, von der Hardware-Beschreibung der Platinen, bis zum .NET Micro Framework, steht unter Open-Source-Lizenz und kann von der Microsoft Website Codeplex heruntergeladen werden. http://gadgeteer.codeplex.com/
  • 10.
    Die Hardware II •Mainboard mit “embedded processor” und markierten Steckverbindungen “plug-and-play” • Touch-/Display • Kamera • Ethernet • SD Kartenleser • USB Port • Taster • LEDs • Jede Menge Sensoren
  • 11.
    Die Hardware II KeyFeatures (FEZ Spider): • 14 .NET Gadgeteer compatible sockets that include these types: – X, Y, A, C, D, E, F, H, I, K, O, P, S, T, U, R, G, B and Z. • Configurable on-board LED • Configuration switches. • Based on GHI Electronics EMX module – 72MHz 32-bit ARM7 processor – 4.5 MB Flash – 16 MB RAM – LCD controller – Full TCP/IP Stack with SSL, HTTP, TCP, UDP, DHCP – Ethernet, WiFi driver and PPP ( GPRS/ 3G modems) and DPWS – Built-in Real Time Clock (RTC) with the suitable crystal – RLP allowing users to load native code (C/Assembly) for real-time requirements – Extended double-precision math class – USB Device with specialized libraries to emulate devices like thumb-drive, virtual COM (CDC), mouse, keyboard – 4-bit SD/MMC Memory card interface – Cryptography (AES and XTEA) – In-field update (from SD, network or other) – Low power and hibernate support – FAT File System – USB host
  • 12.
    Hardwaredetails Starter-Kit • GHI Electronicsbietet für die Microsoft .NET Gadgeteer Plattform ein Starter-Kit, für ca. 250 US-Dollar, an. Dieses beinhaltet ein Mainboard und zwölf weiter Module, wie einen 3,5 Zoll Touchscreen oder ein Kamera-Modul. http://www.ghielectronics.com/catalog/product/297 Module • http://www.ghielectronics.com/catalog/category/275/ Andere Hersteller ziehen nach der Markt füllt sich und die Verfügbarkeit der Komponenten wächst ☺
  • 13.
    Wissenssammlung Foren Support undTutorials • http://tinyclr.com/ • http://tinyclr.com/support/ • http://wiki.tinyclr.com/ • http://www.netmf.com/ • http://www.netmf.com/gadgeteer/forum/ API Referenzen Social • .NET Micro Framework • @netgadgeteer • GHI NETMF Library • netgadgeteer • GHI Open Source Hardware NETMF • WIZnet Ethernet (FEZ Connect)
  • 14.
  • 15.
    Showcase: Featured ProjectsIII Camera Picture Puzzle http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=188
  • 16.
    Showcase: Featured ProjectsIII Arcade Console Flipbook Maker http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=120 http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=121
  • 17.
    Showcase: Featured ProjectsIII Connected Servo Gadgeteer-Powered Robot http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=178 http://www.netmf.com/showcase.aspx?ShowcaseID=2&id=173
  • 18.
    FRAGEN? Holger Wendel … oderspäter ☺ https://twitter.com/levdaywalker speaker@levdaywalker.de https://www.facebook.com/levdaywalker http://blog.levdaywalker.de http://www.slideshare.net/levdaywalker
  • 19.
    DANKE! Holger Wendel Senior ITConsultant Travel & Logistics Telefon: +49 2233 9721 6229 msg systems ag Mobil: +49 170 3770406 www.msg-systems.com holger.wendel@msg-systems.com