SlideShare a Scribd company logo
1 of 28
NetMF@Work
NetMF@Work
Are you a Gadgeteer ?
Mirco Vanini
http://mircovanini.blogspot.com
info@proxsoft.it
@MircoVanini
Microsoft MVP Windows Embedded
NetMF@WorkGrazie agli sponsor
NetMF@Work
Genesi
Che cos’è .NET Gadgeteer
Caratteristiche principali
Hardware
Moduli
Socket
DaisyLink
VS Integration / Tools
Licenze
Demo
Agenda
NetMF@Work
Creato da Steve Hodges e dal Sensors and Devices Team di Microsoft
Research Cambridge.
Presentata ufficialmente da Microsoft Research Cambrige nell’Agosto
2011 durante lo sviluppo del progetto SenseCam, una fotocamera da
indossare che cattura le foto automaticamente.
Nic Villars e James Scott hanno collaborato nella ricerca di
un'alternativa al lento processo di prototipazione per nuovi dispositivi
basati su microcontrollori.
Il progetto, gestito da Kerry Hammil, è disponibile su CodePlex.
Genesi
NetMF@Work
• Una piattaforma hardware e software open source (Apache 2.0) per
la progettazione e lo sviluppo di device embedded basati sul .NET
Micro Framework.
• .NET Gadgeteer combina un microcontrollore (ARM7, ARM9,
CORTEX M3, M4, ecc.), moduli hardware programmabili e il .NET
Micro Framework.
• Questo rende accessibile lo sviluppo di dispositivi a qui
programmatori .NET la cui competenza è focalizzata nel software,
piuttosto che nell’elettronica.
• Permette ad appassionati, educatori e sviluppatori senza
conoscenze di elettronica di realizzare prototipi di dispositivi in modo
molto semplice e veloce.
Che cos’è .NET Gadgeteer? (1/2)
NetMF@Work
• Verticalizzazione del .NET MF prevalentemente per hobbisti ma non
solo.
• Programmazione ad alto livello, non si ha a che fare con porte di
ingresso/uscita e scritture di byte, bensì con oggetti!
• Ideale per chi ha paura del saldatore .
• Il progetto .NET Gadgeteer è una collaborazione aperta tra
Microsoft, fabbricanti di hardware e gli utenti finali.
• Futuro: Microsoft continuerà il supporto attivo a questo progetto
migliorando il .NET MF su cui si basa. La collaborazione stretta tra i
principali costruttori HW ed il mantenimento del sito web Gadgeteer
sono le principali azioni.
Che cos’è .NET Gadgeteer? (2/2)
NetMF@Work
• Piattaforma hardware per la progettazione di device embedded.
• Una scheda madre a cui collegare moduli di espansione (al
momento ne sono disponibili 54, ma crescono 
• I collegamenti sono effettuati tramite cavi di connessione, senza
richiedere saldature o specifiche conoscenze di elettronica.
• Piattaforma software per lo sviluppo ad alto livello basato su .NET
Micro Framework. La progettazione dell’assemblato è
completamente visuale.
• L’SDK mette a disposizione oggetti in grado di eseguire operazioni
complesse (visualizzare un messaggio su un display, attivare un
motore, leggere un sensore, scattare una foto, creare un servizio
Web, ecc.) in modo molto semplice.
Caratteristiche principali
NetMF@Work
GHI Electronics, Sytech Designs, Love Electronics, Seeed Studio,
Oberon Microsystems, CSA Engineering, Mountaineer Group
Hardware
NetMF@Work
Sensori, pulsanti, LED, connessioni Ethernet, Wi-
Fi, Bluetooth, ZigBee, infrarossi, RFID, GPS, Cellular
Radio, display, audio, memorie, accelerometro, bussola, giroscopio, rel
ays, controller per motori, scheda audio, uscita vga, radio, led
strip, ecc.
Moduli
NetMF@Work
Prima scheda rilasciata, con il supporto al maggior numero di moduli
Processore ARM7 a 32 bit operante a 72 MHz
4,5 MB di Flash
16 MB di RAM
14 socket
.NET Micro Framework 4.2 QBE2 [4.3]
FEZ Spider è l’attuale riferimento
NetMF@WorkEMX
• 76 GPIO Pins
• 39 Interrupt Inputs
• 2 SPI (8/16bit)
• I2C
• 4 UART
• 2 CAN Channels
• 7 10-bit Analog Inputs.
• 10-bit Analog Output
• 4-bit SD/MMC Memory card
interface
• 6 PWM
• 160 mA current consumption
with everything enabled
• 40mA Hibernate Mode
• -40ºC to +85ºC Operational
• RoHS Lead Free
• Microsoft .NET Micro
Framework
• 72Mhz 32-bit Processor
(LPC2478 – ARM7)
• 16MB RAM
• 4.5MB FLASH
• Embedded LCD controller
• Embedded Ethernet PHY with
DMA communication.
• Runtime Loadable Procedure
• Full TCP/IP Stack
• SSL
• ZG2100 WiFi Driver
• PPP ( GPRS/ 3G )
• DPWS
• Embedded USB host/device
NetMF@WorkSpider - Socket
NetMF@WorkSocket - Cable
One type of Cable !
NetMF@WorkSocket
NET Gadgeteer Module Builder's Guide version 1.8
• GPIO A general-purpose digital
input/output pin, operating at 3.3 Volts
• (G) In addition to another functionality, a
pin that is also usable as a GPIO.
• (OPT) A socket type that is optionally
supported by a mainboard or a module.
• [UN] Modules must not connect to this pin
if using this socket type. Mainboards can
support multiple socket types on one
socket, as long as individual pin
functionalities overlap in a compatible
manner. A pin from one socket type can
overlap with a [UN] pin of another
• [MS] A manufacturer-specific pin. See the
documentation from the manufacturer of
the board.
• ! Interrupt-capable and software pull-up
capable GPIO (the pull-up is switchable and
in the range of 10,000 to 100,000 ohms).
• * Socket type * should not appear on a
mainboard, only on DaisyLink modules. The
[MS] pins on this socket type can optionally
support reflashing the firmware on the
module
NetMF@Work
Condivisione socket per moduli diversi
Collegamento a catena dei moduli invece che a stella
Utilizza solo 3 dei pin del socket
Indirizzamento semplice
Rilevamento automatico del tipo e dei moduli collegati
Ogni modulo ha il suo MCU che implementa il protocollo
DaisyLink - Nuovo tipo di
interfaccia
DaisyLink comprende due
bus I2C: un bus condiviso
di dati per il trasferimento e
un bus neighbor che viene
utilizzato per assegnare l'ID
I2C di ciascun modulo sul
bus condiviso.
Open DaisyLink Project
NetMF@WorkVS Integration / Tools
NetMF@WorkVS Integration / Tools
NetMF@WorkVS Integration / Tools
NetMF@WorkVS Integration / Tools
High level API with inline docs
Event driven rather than while(true)
Next level of abstraction easily accessed
NetMF@WorkArchitettura
.NET Micro Framework
Mainboard,
Sockets, Pins
Module,
Interfaces
Program
Modules
Main-
board
Timer
Color
Pictures
Storage
Program
End User
Hardware
Manufacturers
GadgeteerCore
NETMF
Note: Italics denotes abstract class
NetMF@Work
Le specifiche hardware e gli schemi elettrici delle schede madri e dei
moduli sono rilasciati con licenza Creative Commons
Le librerie software di .NET Micro Framework e .NET Gadgeteer sono
disponibili con licenza Apache 2.0
Il codice sorgente di .NET Micro Framework è pubblicato su
http://netmf.codeplex.com
Il codice sorgente di .NET Gadgeteer è pubblicato su
http://gadgeteer.codeplex.com
Licenze
NetMF@Work
FEZ Spider Mainboard & Modules
DEMO
NetMF@Workhttp://netmf.com/gadgeteer/
Index of hardware from any
manufacturer
Example projects
Forums
NetMF@Workhttp://gadgeteer.codeplex.com/
Project documentation Open source for SW + HW Core and Builder MSIs
NetMF@WorkQ&A
NetMF@Work
.NET Gadgeteer: Launch Pad for Devices
Hey there! Are you ready to create something awesome
.NET Gadgeteer – CodePlex
.NET Micro Framework
GHI Electronics
TinyCLR.it
Links
NetMF@WorkGrazie agli sponsor
NetMF@WorkFeedback Form
Per voi sono solo 10 minuti persi, per
noi è utilissimo per poter crescere!!!!
http://tinyurl.com/netmfwork

More Related Content

Viewers also liked

Title sequence to thrillers
Title sequence to thrillersTitle sequence to thrillers
Title sequence to thrillersamycoker
 
C++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewC++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewMirco Vanini
 
50 things To do in Tamil nadu
50 things To do in Tamil nadu50 things To do in Tamil nadu
50 things To do in Tamil naduGP SRIRAM
 
Mec 2015 - Windows developer program for IoT
Mec 2015 - Windows developer program for IoTMec 2015 - Windows developer program for IoT
Mec 2015 - Windows developer program for IoTMirco Vanini
 
Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...
Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...
Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...5heikh95
 
Advanced SEO Technoiques-2014
Advanced SEO Technoiques-2014Advanced SEO Technoiques-2014
Advanced SEO Technoiques-2014VIJAYAKRISHNAN K
 
Threading model in windows store apps
Threading model in windows store appsThreading model in windows store apps
Threading model in windows store appsMirco Vanini
 
Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...
Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...
Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...molga-ru
 
Windows developer program for IoT
Windows developer program for IoTWindows developer program for IoT
Windows developer program for IoTMirco Vanini
 
Автоматизация смешанного обучения на платформе SAP
Автоматизация смешанного обучения на платформе SAP Автоматизация смешанного обучения на платформе SAP
Автоматизация смешанного обучения на платформе SAP molga-ru
 
Cutomize and Control Connected Devices
Cutomize and Control Connected DevicesCutomize and Control Connected Devices
Cutomize and Control Connected DevicesMirco Vanini
 
Why should you use Slideshare - Getting Started
Why should you use Slideshare  - Getting StartedWhy should you use Slideshare  - Getting Started
Why should you use Slideshare - Getting StartedGP SRIRAM
 
Windows 10 on Raspberry PI 2
Windows 10 on Raspberry PI 2Windows 10 on Raspberry PI 2
Windows 10 on Raspberry PI 2Mirco Vanini
 

Viewers also liked (13)

Title sequence to thrillers
Title sequence to thrillersTitle sequence to thrillers
Title sequence to thrillers
 
C++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - OverviewC++ in Windows Phone Apps - Overview
C++ in Windows Phone Apps - Overview
 
50 things To do in Tamil nadu
50 things To do in Tamil nadu50 things To do in Tamil nadu
50 things To do in Tamil nadu
 
Mec 2015 - Windows developer program for IoT
Mec 2015 - Windows developer program for IoTMec 2015 - Windows developer program for IoT
Mec 2015 - Windows developer program for IoT
 
Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...
Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...
Q7. LOOKING BACK AT THE PRELIMINARY TASK, WHAT DO YOU FEEL YOU HAVE LEARNT IN...
 
Advanced SEO Technoiques-2014
Advanced SEO Technoiques-2014Advanced SEO Technoiques-2014
Advanced SEO Technoiques-2014
 
Threading model in windows store apps
Threading model in windows store appsThreading model in windows store apps
Threading model in windows store apps
 
Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...
Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...
Внедрение ERP-систем в компаниях среднего бизнеса: практика, ошибки и возврат...
 
Windows developer program for IoT
Windows developer program for IoTWindows developer program for IoT
Windows developer program for IoT
 
Автоматизация смешанного обучения на платформе SAP
Автоматизация смешанного обучения на платформе SAP Автоматизация смешанного обучения на платформе SAP
Автоматизация смешанного обучения на платформе SAP
 
Cutomize and Control Connected Devices
Cutomize and Control Connected DevicesCutomize and Control Connected Devices
Cutomize and Control Connected Devices
 
Why should you use Slideshare - Getting Started
Why should you use Slideshare  - Getting StartedWhy should you use Slideshare  - Getting Started
Why should you use Slideshare - Getting Started
 
Windows 10 on Raspberry PI 2
Windows 10 on Raspberry PI 2Windows 10 on Raspberry PI 2
Windows 10 on Raspberry PI 2
 

Similar to Are you a Gadgeteer? - NetMF@Work

Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2pma77
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embeddedDaniele Costarella
 
J2Me Il Micro Mondo Java
J2Me Il Micro Mondo JavaJ2Me Il Micro Mondo Java
J2Me Il Micro Mondo JavaAntonio Terreno
 
Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...
Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...
Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...Ionela
 
Progettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computerProgettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computerAlessandro Mascherin
 
Generazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGenerazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGiacomoZorzin
 
GWT Development for Handheld Devices
GWT Development for Handheld DevicesGWT Development for Handheld Devices
GWT Development for Handheld DevicesGWTcon
 
Internet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessiInternet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessiWhymca
 
Gam04 introduzione a-netduino_final
Gam04   introduzione a-netduino_finalGam04   introduzione a-netduino_final
Gam04 introduzione a-netduino_finalDotNetCampus
 
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...Codemotion
 
Webinar porting e ottimizzazione per x86
Webinar   porting e ottimizzazione per x86Webinar   porting e ottimizzazione per x86
Webinar porting e ottimizzazione per x86Massimiliano Torregiani
 
Fpga il componente universale 2010-11-09
Fpga  il componente universale   2010-11-09Fpga  il componente universale   2010-11-09
Fpga il componente universale 2010-11-09Ionela
 
.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018Fabrizio Bernabei
 
Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018Andrea Tosato
 
Meetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure FunctionsMeetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure Functionsdotnetcode
 
IoT Saturday 2019 - Custom Vision on Edge device
IoT Saturday 2019 - Custom Vision on Edge deviceIoT Saturday 2019 - Custom Vision on Edge device
IoT Saturday 2019 - Custom Vision on Edge deviceAlessio Biasiutti
 
NEXiDA Smart User Interface flyer (italian)
NEXiDA Smart User Interface flyer (italian)NEXiDA Smart User Interface flyer (italian)
NEXiDA Smart User Interface flyer (italian)Claudio Rubbiani
 
04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges
04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges
04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloigesMarco Suma
 

Similar to Are you a Gadgeteer? - NetMF@Work (20)

Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2Il web service e i sistemi embedded - Tesi - cap2
Il web service e i sistemi embedded - Tesi - cap2
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embedded
 
J2Me Il Micro Mondo Java
J2Me Il Micro Mondo JavaJ2Me Il Micro Mondo Java
J2Me Il Micro Mondo Java
 
Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...
Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...
Come Abilitare La Connettività Usb Con La Famiglia Di Js16 8 A 8 Bit Della Fr...
 
Progettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computerProgettazione e sviluppo di un software applicativo su un single board computer
Progettazione e sviluppo di un software applicativo su un single board computer
 
Generazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptxGenerazione automatica diagrammi di rete con template pptx
Generazione automatica diagrammi di rete con template pptx
 
GWT Development for Handheld Devices
GWT Development for Handheld DevicesGWT Development for Handheld Devices
GWT Development for Handheld Devices
 
Internet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessiInternet of Things con .Net Micro Framework: un mondo di device interconnessi
Internet of Things con .Net Micro Framework: un mondo di device interconnessi
 
Gam04 introduzione a-netduino_final
Gam04   introduzione a-netduino_finalGam04   introduzione a-netduino_final
Gam04 introduzione a-netduino_final
 
3rd 3DDRESD: BSS
3rd 3DDRESD: BSS3rd 3DDRESD: BSS
3rd 3DDRESD: BSS
 
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
Sviluppo di soluzioni embedded moderne con .NET Micro Framework by Lorenzo Ma...
 
Webinar porting e ottimizzazione per x86
Webinar   porting e ottimizzazione per x86Webinar   porting e ottimizzazione per x86
Webinar porting e ottimizzazione per x86
 
Fpga il componente universale 2010-11-09
Fpga  il componente universale   2010-11-09Fpga  il componente universale   2010-11-09
Fpga il componente universale 2010-11-09
 
SIMarket_Massimo La Morgia
SIMarket_Massimo La MorgiaSIMarket_Massimo La Morgia
SIMarket_Massimo La Morgia
 
.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018.NET & Linux: la strana coppia - DotNetDay 2018
.NET & Linux: la strana coppia - DotNetDay 2018
 
Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018
 
Meetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure FunctionsMeetup DotNetCode A.I. Bot Framework and Azure Functions
Meetup DotNetCode A.I. Bot Framework and Azure Functions
 
IoT Saturday 2019 - Custom Vision on Edge device
IoT Saturday 2019 - Custom Vision on Edge deviceIoT Saturday 2019 - Custom Vision on Edge device
IoT Saturday 2019 - Custom Vision on Edge device
 
NEXiDA Smart User Interface flyer (italian)
NEXiDA Smart User Interface flyer (italian)NEXiDA Smart User Interface flyer (italian)
NEXiDA Smart User Interface flyer (italian)
 
04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges
04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges
04-Lezione PON BAITAH Dott. Suma - IDE and modern developing technoloiges
 

More from Mirco Vanini

.NET 7 Performance Improvements_10_03_2023.pdf
.NET 7 Performance Improvements_10_03_2023.pdf.NET 7 Performance Improvements_10_03_2023.pdf
.NET 7 Performance Improvements_10_03_2023.pdfMirco Vanini
 
Debugging a .NET program after crash (Post-mortem debugging)
Debugging a .NET program after crash (Post-mortem debugging)Debugging a .NET program after crash (Post-mortem debugging)
Debugging a .NET program after crash (Post-mortem debugging)Mirco Vanini
 
Connect a chips to Azure
Connect a chips to AzureConnect a chips to Azure
Connect a chips to AzureMirco Vanini
 
Connect a chips to Azure
Connect a chips to AzureConnect a chips to Azure
Connect a chips to AzureMirco Vanini
 
How to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDKHow to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDKMirco Vanini
 
.NET Conf 2021 - Hot Topics Desktop Development
.NET Conf 2021 - Hot Topics Desktop Development.NET Conf 2021 - Hot Topics Desktop Development
.NET Conf 2021 - Hot Topics Desktop DevelopmentMirco Vanini
 
Async Debugging A Practical Guide to survive !
Async Debugging A Practical Guide to survive !Async Debugging A Practical Guide to survive !
Async Debugging A Practical Guide to survive !Mirco Vanini
 
IoT support for .NET (Core/5/6)
IoT support for .NET (Core/5/6)IoT support for .NET (Core/5/6)
IoT support for .NET (Core/5/6)Mirco Vanini
 
Async Debugging - A Practical Guide to survive !
Async Debugging - A Practical Guide to survive !Async Debugging - A Practical Guide to survive !
Async Debugging - A Practical Guide to survive !Mirco Vanini
 
IoT support for .NET Core
IoT support for .NET CoreIoT support for .NET Core
IoT support for .NET CoreMirco Vanini
 
IoT support for .NET Core - IoT Saturday 2020
IoT support for .NET Core - IoT Saturday 2020IoT support for .NET Core - IoT Saturday 2020
IoT support for .NET Core - IoT Saturday 2020Mirco Vanini
 
.NET Conf 2020 - Hot Topics Desktop Development
.NET Conf 2020 - Hot Topics Desktop Development.NET Conf 2020 - Hot Topics Desktop Development
.NET Conf 2020 - Hot Topics Desktop DevelopmentMirco Vanini
 
Are you ready for Microsoft Azure Sphere?
Are you ready for Microsoft Azure Sphere?Are you ready for Microsoft Azure Sphere?
Are you ready for Microsoft Azure Sphere?Mirco Vanini
 
IoT Day 2019 Naples - Microsoft Azure Shpere
IoT Day 2019 Naples - Microsoft Azure ShpereIoT Day 2019 Naples - Microsoft Azure Shpere
IoT Day 2019 Naples - Microsoft Azure ShpereMirco Vanini
 
Debugging with VS2019
Debugging with VS2019Debugging with VS2019
Debugging with VS2019Mirco Vanini
 
Optimising code using Span<T>
Optimising code using Span<T>Optimising code using Span<T>
Optimising code using Span<T>Mirco Vanini
 
Xe OneDay - Modernizing Enterprise Apps
Xe OneDay - Modernizing Enterprise AppsXe OneDay - Modernizing Enterprise Apps
Xe OneDay - Modernizing Enterprise AppsMirco Vanini
 

More from Mirco Vanini (20)

.NET 7 Performance Improvements_10_03_2023.pdf
.NET 7 Performance Improvements_10_03_2023.pdf.NET 7 Performance Improvements_10_03_2023.pdf
.NET 7 Performance Improvements_10_03_2023.pdf
 
Debugging a .NET program after crash (Post-mortem debugging)
Debugging a .NET program after crash (Post-mortem debugging)Debugging a .NET program after crash (Post-mortem debugging)
Debugging a .NET program after crash (Post-mortem debugging)
 
Connect a chips to Azure
Connect a chips to AzureConnect a chips to Azure
Connect a chips to Azure
 
Connect a chips to Azure
Connect a chips to AzureConnect a chips to Azure
Connect a chips to Azure
 
How to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDKHow to modernise WPF and Windows Forms applications with Windows Apps SDK
How to modernise WPF and Windows Forms applications with Windows Apps SDK
 
C# on a CHIPs
C# on a CHIPsC# on a CHIPs
C# on a CHIPs
 
.NET Conf 2021 - Hot Topics Desktop Development
.NET Conf 2021 - Hot Topics Desktop Development.NET Conf 2021 - Hot Topics Desktop Development
.NET Conf 2021 - Hot Topics Desktop Development
 
Async Debugging A Practical Guide to survive !
Async Debugging A Practical Guide to survive !Async Debugging A Practical Guide to survive !
Async Debugging A Practical Guide to survive !
 
IoT support for .NET (Core/5/6)
IoT support for .NET (Core/5/6)IoT support for .NET (Core/5/6)
IoT support for .NET (Core/5/6)
 
Async Debugging - A Practical Guide to survive !
Async Debugging - A Practical Guide to survive !Async Debugging - A Practical Guide to survive !
Async Debugging - A Practical Guide to survive !
 
IoT support for .NET Core
IoT support for .NET CoreIoT support for .NET Core
IoT support for .NET Core
 
IoT support for .NET Core - IoT Saturday 2020
IoT support for .NET Core - IoT Saturday 2020IoT support for .NET Core - IoT Saturday 2020
IoT support for .NET Core - IoT Saturday 2020
 
.NET Conf 2020 - Hot Topics Desktop Development
.NET Conf 2020 - Hot Topics Desktop Development.NET Conf 2020 - Hot Topics Desktop Development
.NET Conf 2020 - Hot Topics Desktop Development
 
Are you ready for Microsoft Azure Sphere?
Are you ready for Microsoft Azure Sphere?Are you ready for Microsoft Azure Sphere?
Are you ready for Microsoft Azure Sphere?
 
IoT Day 2019 Naples - Microsoft Azure Shpere
IoT Day 2019 Naples - Microsoft Azure ShpereIoT Day 2019 Naples - Microsoft Azure Shpere
IoT Day 2019 Naples - Microsoft Azure Shpere
 
Debugging with VS2019
Debugging with VS2019Debugging with VS2019
Debugging with VS2019
 
Azure Sphere
Azure SphereAzure Sphere
Azure Sphere
 
Optimising code using Span<T>
Optimising code using Span<T>Optimising code using Span<T>
Optimising code using Span<T>
 
Azure Sphere
Azure SphereAzure Sphere
Azure Sphere
 
Xe OneDay - Modernizing Enterprise Apps
Xe OneDay - Modernizing Enterprise AppsXe OneDay - Modernizing Enterprise Apps
Xe OneDay - Modernizing Enterprise Apps
 

Are you a Gadgeteer? - NetMF@Work

  • 1. NetMF@Work NetMF@Work Are you a Gadgeteer ? Mirco Vanini http://mircovanini.blogspot.com info@proxsoft.it @MircoVanini Microsoft MVP Windows Embedded
  • 3. NetMF@Work Genesi Che cos’è .NET Gadgeteer Caratteristiche principali Hardware Moduli Socket DaisyLink VS Integration / Tools Licenze Demo Agenda
  • 4. NetMF@Work Creato da Steve Hodges e dal Sensors and Devices Team di Microsoft Research Cambridge. Presentata ufficialmente da Microsoft Research Cambrige nell’Agosto 2011 durante lo sviluppo del progetto SenseCam, una fotocamera da indossare che cattura le foto automaticamente. Nic Villars e James Scott hanno collaborato nella ricerca di un'alternativa al lento processo di prototipazione per nuovi dispositivi basati su microcontrollori. Il progetto, gestito da Kerry Hammil, è disponibile su CodePlex. Genesi
  • 5. NetMF@Work • Una piattaforma hardware e software open source (Apache 2.0) per la progettazione e lo sviluppo di device embedded basati sul .NET Micro Framework. • .NET Gadgeteer combina un microcontrollore (ARM7, ARM9, CORTEX M3, M4, ecc.), moduli hardware programmabili e il .NET Micro Framework. • Questo rende accessibile lo sviluppo di dispositivi a qui programmatori .NET la cui competenza è focalizzata nel software, piuttosto che nell’elettronica. • Permette ad appassionati, educatori e sviluppatori senza conoscenze di elettronica di realizzare prototipi di dispositivi in modo molto semplice e veloce. Che cos’è .NET Gadgeteer? (1/2)
  • 6. NetMF@Work • Verticalizzazione del .NET MF prevalentemente per hobbisti ma non solo. • Programmazione ad alto livello, non si ha a che fare con porte di ingresso/uscita e scritture di byte, bensì con oggetti! • Ideale per chi ha paura del saldatore . • Il progetto .NET Gadgeteer è una collaborazione aperta tra Microsoft, fabbricanti di hardware e gli utenti finali. • Futuro: Microsoft continuerà il supporto attivo a questo progetto migliorando il .NET MF su cui si basa. La collaborazione stretta tra i principali costruttori HW ed il mantenimento del sito web Gadgeteer sono le principali azioni. Che cos’è .NET Gadgeteer? (2/2)
  • 7. NetMF@Work • Piattaforma hardware per la progettazione di device embedded. • Una scheda madre a cui collegare moduli di espansione (al momento ne sono disponibili 54, ma crescono  • I collegamenti sono effettuati tramite cavi di connessione, senza richiedere saldature o specifiche conoscenze di elettronica. • Piattaforma software per lo sviluppo ad alto livello basato su .NET Micro Framework. La progettazione dell’assemblato è completamente visuale. • L’SDK mette a disposizione oggetti in grado di eseguire operazioni complesse (visualizzare un messaggio su un display, attivare un motore, leggere un sensore, scattare una foto, creare un servizio Web, ecc.) in modo molto semplice. Caratteristiche principali
  • 8. NetMF@Work GHI Electronics, Sytech Designs, Love Electronics, Seeed Studio, Oberon Microsystems, CSA Engineering, Mountaineer Group Hardware
  • 9. NetMF@Work Sensori, pulsanti, LED, connessioni Ethernet, Wi- Fi, Bluetooth, ZigBee, infrarossi, RFID, GPS, Cellular Radio, display, audio, memorie, accelerometro, bussola, giroscopio, rel ays, controller per motori, scheda audio, uscita vga, radio, led strip, ecc. Moduli
  • 10. NetMF@Work Prima scheda rilasciata, con il supporto al maggior numero di moduli Processore ARM7 a 32 bit operante a 72 MHz 4,5 MB di Flash 16 MB di RAM 14 socket .NET Micro Framework 4.2 QBE2 [4.3] FEZ Spider è l’attuale riferimento
  • 11. NetMF@WorkEMX • 76 GPIO Pins • 39 Interrupt Inputs • 2 SPI (8/16bit) • I2C • 4 UART • 2 CAN Channels • 7 10-bit Analog Inputs. • 10-bit Analog Output • 4-bit SD/MMC Memory card interface • 6 PWM • 160 mA current consumption with everything enabled • 40mA Hibernate Mode • -40ºC to +85ºC Operational • RoHS Lead Free • Microsoft .NET Micro Framework • 72Mhz 32-bit Processor (LPC2478 – ARM7) • 16MB RAM • 4.5MB FLASH • Embedded LCD controller • Embedded Ethernet PHY with DMA communication. • Runtime Loadable Procedure • Full TCP/IP Stack • SSL • ZG2100 WiFi Driver • PPP ( GPRS/ 3G ) • DPWS • Embedded USB host/device
  • 13. NetMF@WorkSocket - Cable One type of Cable !
  • 14. NetMF@WorkSocket NET Gadgeteer Module Builder's Guide version 1.8 • GPIO A general-purpose digital input/output pin, operating at 3.3 Volts • (G) In addition to another functionality, a pin that is also usable as a GPIO. • (OPT) A socket type that is optionally supported by a mainboard or a module. • [UN] Modules must not connect to this pin if using this socket type. Mainboards can support multiple socket types on one socket, as long as individual pin functionalities overlap in a compatible manner. A pin from one socket type can overlap with a [UN] pin of another • [MS] A manufacturer-specific pin. See the documentation from the manufacturer of the board. • ! Interrupt-capable and software pull-up capable GPIO (the pull-up is switchable and in the range of 10,000 to 100,000 ohms). • * Socket type * should not appear on a mainboard, only on DaisyLink modules. The [MS] pins on this socket type can optionally support reflashing the firmware on the module
  • 15. NetMF@Work Condivisione socket per moduli diversi Collegamento a catena dei moduli invece che a stella Utilizza solo 3 dei pin del socket Indirizzamento semplice Rilevamento automatico del tipo e dei moduli collegati Ogni modulo ha il suo MCU che implementa il protocollo DaisyLink - Nuovo tipo di interfaccia DaisyLink comprende due bus I2C: un bus condiviso di dati per il trasferimento e un bus neighbor che viene utilizzato per assegnare l'ID I2C di ciascun modulo sul bus condiviso. Open DaisyLink Project
  • 19. NetMF@WorkVS Integration / Tools High level API with inline docs Event driven rather than while(true) Next level of abstraction easily accessed
  • 20. NetMF@WorkArchitettura .NET Micro Framework Mainboard, Sockets, Pins Module, Interfaces Program Modules Main- board Timer Color Pictures Storage Program End User Hardware Manufacturers GadgeteerCore NETMF Note: Italics denotes abstract class
  • 21. NetMF@Work Le specifiche hardware e gli schemi elettrici delle schede madri e dei moduli sono rilasciati con licenza Creative Commons Le librerie software di .NET Micro Framework e .NET Gadgeteer sono disponibili con licenza Apache 2.0 Il codice sorgente di .NET Micro Framework è pubblicato su http://netmf.codeplex.com Il codice sorgente di .NET Gadgeteer è pubblicato su http://gadgeteer.codeplex.com Licenze
  • 23. NetMF@Workhttp://netmf.com/gadgeteer/ Index of hardware from any manufacturer Example projects Forums
  • 26. NetMF@Work .NET Gadgeteer: Launch Pad for Devices Hey there! Are you ready to create something awesome .NET Gadgeteer – CodePlex .NET Micro Framework GHI Electronics TinyCLR.it Links
  • 28. NetMF@WorkFeedback Form Per voi sono solo 10 minuti persi, per noi è utilissimo per poter crescere!!!! http://tinyurl.com/netmfwork