SlideShare a Scribd company logo
1 of 43
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Core 3.1 with
Raspberry Pi
PETE GALLAGHER
PJGCREATIONS.CO.UK
28/07/2020
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
About Me
Pete Gallagher
@pete_codes / @PJGCreations
www.PeteCodes.co.uk
www.PJGCreations.co.uk
Pete@PJGCreations.co.uk
IT Consultant, Microsoft Azure MVP, Pluralsight Author,
Decades of Desktop, Web & Embedded Software experience,
Meetup Organiser,
STEM Ambassador, Code Club Organiser … Gadget Addict
Father of two inquisitive girls
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
What we’re going to be doing…
 .NET Framework
 .NET Core 3.1
 Installing .NET Core on the Raspberry Pi
 Hello World Console Apps
 .NET Core IoT + Console Apps + Azure
 Blazor
 Hello World Blazor App
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Framework
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
DESKTOP WEB CLOUD MOBILE GAMING IoT AI
.NET
Your platform for building anything
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
• C# is a simple, modern, object-oriented, and type-
safe programming language
• Its roots in the C family of languages makes C#
immediately familiar to C, C++, Java, and JavaScript
programmers
• F# is a cross-platform, open-source, functional
programming language for .NET
• It also includes object-oriented and imperative
programming
• Visual Basic is an approachable language with a
simple syntax for building type-safe, object-
oriented apps
You can write .NET with…
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
A brief history of .NET
• .NET
Framework
V1
• Visual
Studio .NET
• .NET
Framework
3.0
• WPF
• .NET
Framework
4.5
• LINQ
• Async
• .NET
Framework
4.6.2
• Visual
Studio 2015
• .NET
Core V1
• .NET
Framework
4.7
• Visual
Studio 2017
• .NET
Core 2.0
• .NET
Framework
4.8
• .NET Core
3.1
• Mono 6.8
• Visual
Studio 2019
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Standard
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Standard
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
LIBRARIES
INFRASTRUCTURE
.NET STANDARD
.NET is a software development platform
DESKTOP WEB CLOUD MOBILE GAMING IoT AI
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Standard
.NET Standard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0 2.1
.NET Core 1.0 1.0 1.0 1.0 1.0 1.0 1.0 2.0 3.1
.NET Framework 4.5 4.5 4.5.1 4.6 4.6.1 4.6.1 4.6.1 4.6.1 4.8
Mono 4.6 4.6 4.6 4.6 4.6 4.6 4.6 5.4 6.4
Xamarin.iOS 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.14 12.16
Xamarin.Mac 3.0 3.0 3.0 3.0 3.0 3.0 3.0 3.8 5.16
Xamarin.Android 7.0 7.0 7.0 7.0 7.0 7.0 7.0 8.0 10.0
Universal Windows
Platform 10.0 10.0 10.0 10.0 10.0 10.0.16299 10.0.16299 10.0.16299 TBD
Unity 2018.1 2018.1 2018.1 2018.1 2018.1 2018.1 2018.1 2018.1 TBD
https://docs.microsoft.com/en-us/dotnet/standard/net-standard
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Core
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
“.NET Core is a free and open-source,
managed computer software framework
for Windows, Linux, and macOS
operating systems.
It is an open source, cross platform
successor to .NET Framework.”
Wikipedia
.NET Core
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Core 3.1
 Open Source
 Cross Platform
 High Performance
 Long Term Support
 Built on .NET Standard 2.1
 Includes C# 8 and F# 4.7
 Build WPF and Forms for Windows 10
 Supports Raspberry Pi
https://devblogs.microsoft.com/dotnet/
announcing-net-core-3-1/
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Open Source Journey
2001
ECMA 335
2002
NET 1.0 for
Windows released.
Mono project
begins
2008
ASP.NET MVC
(web platform)
open source
April 2014
.NET Compiler
Platform (“Roslyn”)
open source
.NET Foundation
founded
Nov. 2014
.NET Core
(cross-platform)
project begins
2016
Mono project joins
.NET Foundation
Aug. 2017
.NET Core 2.0
released
Dec. 2018
.NET Core 2.2
released
.NET Core 3.0
preview
WinForms
and WPF go
open source
2020
.NET Core 3.1
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
“Using the same-size server, we were able to go from 1,000 requests per
second per node with Node.js to 20,000 requests per second with .NET Core.“
— Raygun
https://www.microsoft.com/net/customers
Data sourced from official tests available at TechEmpower Round 15.
Java Servlet .NET Core Node.js
.NET is fast… REALLY FAST!
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Ecosystem Momentum
> 1.5M
.NET Core Developers
In Visual Studio
#1 Most Loved
Framework
.NET Core
Top 30
Highest velocity OSS Projects
github.com/dotnet
github.com/aspnet
Top 5
Language on GitHub
C#
7x
Faster than Node.js
ASP.NET Core
40%
New to .NET are students
dot.net download survey
Build 2020 – Journey to one .NET - https://www.youtube.com/watch?v=ctSqiD8BGPM
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Windows Demo
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
www.dot.net
Learn how to program with C#
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Core
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Install
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Install
http://bit.ly/dotnetcorerpi1
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Install
 Update your Pi;
sudo apt-get update
sudo apt-get upgrade
 Setup a shared directory using Samba
 Install and Setup Dot Net Core 3.1;
 Download Pre-Req’s
 Download Dot Net Core Binaries
 Download ASP.Net Core Runtime
 Make dotnet directory in opt
 Extract Binaries and Runtime to dotnet directory
 Create Symbolic Link to usr/local/bin
 Add export for DotNet root to .bash file in home directory
 Check if it all works with;
dotnet --info
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Install
Or now just run…
wget -O - https://raw.githubusercontent.com/pjgpetecodes/dotnetcore3pi/master/install.sh | sudo bash
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Demo 1
Console App
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
.NET Core GPIO
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Circuit
Pin 10
Pin 26
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi GPIO
Board Numbering
BCM Numbering
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
System.Device.Gpio
 Supports I/O, SPI, PWM, I2C
 Supports Raspberry Pi, Beagleboard,
Hummingboard, Odroid etc
 Supports Linux and Windows 10 IoT
 Installs via the CLI or Nuget PM
https://www.nuget.org/packages/
System.Device.Gpio
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Iot.Device.Bindings
 Support for
BME280 Temp / Humidity Sensor
MCP23xxx I/O Expander
Explorer Hat
Sense Hat
Much more…
https://www.nuget.org/packages/
Iot.Device.Bindings
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Demo 2
LED App
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Demo 3
Remote Deploy and Debug
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Circuit
Pin 10
Pin 26
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Demo 4
Button App
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Demo 5
Azure IoT Hubs Apps
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Blazor
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
“Blazor is a single-page app
framework for building
interactive client-side Web
apps with .NET”
Scott Hansleman
Blazor
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Blazor
 Started Life as Steve Sanderson’s Pet Project
 Web UI Framework based in C#
 Replaces JavaScript
 Razor and HTML
 Server Side or Client Side WebAssembley
 Client Side .NET with no plugins
 Support in most modern Browsers
https://dotnet.microsoft.com/apps/
aspnet/web-apps/blazor
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Raspberry Pi Demo 6
Blazor App
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Links
 Blazor
https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor
 C# 8 + Dot Net Core 3.1
https://devblogs.microsoft.com/dotnet/announcing-net-core-3-1
 Entity Framework Core 3.1 & EF 6.4
https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-3-1-and-entity-
framework-6-4/
 Visual Studio 2019
https://docs.microsoft.com/en-us/visualstudio/ide/whats-new-visual-studio-2019?view=vs-2019
 Installing Dot Net Core 3.1 on the Raspberry Pi
http://bit.ly/dotnetcorerpi1
 Dot Net Core 3 GPIO Nuget Package
https://www.nuget.org/packages/System.Device.Gpio
 Dot Net Core 3 IoT Device Bindings Source Code
https://github.com/dotnet/iot/tree/master/src/devices
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
 Twitter
@pete_codes / @PJGCreations
 Email:
pete@pjgcreations.co.uk
 Website:
https://www.petecodes.co.uk
https://www.pjgcreations.co.uk
 Notts IoT:
https://www.nottsiot.co.uk
 Dot Net Notts:
https://www.dotnetnotts.co
 Notts Dev Workshop:
https://www.nottsdevworkshop.co.uk
 LATi:
https://www.lati.org.uk
 Agile Engineering Podcast:
https://agileengineeringpodcast.com/
Contact Me
Slides:
http://bit.ly/DotNetCoreRpiVACD2020
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Free. Cross-platform. Open source.
A developer platform for building all your apps.
www.dot.net
Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes
Questions?
Pete Gallagher
@pete_codes / @PJGCreations
www.PeteCodes.co.uk
www.PJGCreations.co.uk
Pete@PJGCreations.co.uk

More Related Content

What's hot

What's hot (7)

Building a Raspberry Pi Robot Arm with .NET 5, Blazor and SignalR - HackSoc -...
Building a Raspberry Pi Robot Arm with .NET 5, Blazor and SignalR - HackSoc -...Building a Raspberry Pi Robot Arm with .NET 5, Blazor and SignalR - HackSoc -...
Building a Raspberry Pi Robot Arm with .NET 5, Blazor and SignalR - HackSoc -...
 
Azure IoT Hubs with Raspberry Pi and Node.js - Azure Bootcamp - 27-04-19
Azure IoT Hubs with Raspberry Pi and Node.js - Azure Bootcamp - 27-04-19Azure IoT Hubs with Raspberry Pi and Node.js - Azure Bootcamp - 27-04-19
Azure IoT Hubs with Raspberry Pi and Node.js - Azure Bootcamp - 27-04-19
 
Azure Percept Home Automation - Festive Tech Calendar 2021 - 01-12-21
Azure Percept Home Automation  - Festive Tech Calendar 2021 - 01-12-21Azure Percept Home Automation  - Festive Tech Calendar 2021 - 01-12-21
Azure Percept Home Automation - Festive Tech Calendar 2021 - 01-12-21
 
Azure Percept Home Automation - .NET Liverpool - 28-10-21
Azure Percept Home Automation  - .NET Liverpool - 28-10-21Azure Percept Home Automation  - .NET Liverpool - 28-10-21
Azure Percept Home Automation - .NET Liverpool - 28-10-21
 
Azure Percept Home Automation - .NET Docs Show - 20-09-21
Azure Percept Home Automation  - .NET Docs Show - 20-09-21Azure Percept Home Automation  - .NET Docs Show - 20-09-21
Azure Percept Home Automation - .NET Docs Show - 20-09-21
 
Getting started with IoT with only your laptop - September 2019 - Dot Net Liv...
Getting started with IoT with only your laptop - September 2019 - Dot Net Liv...Getting started with IoT with only your laptop - September 2019 - Dot Net Liv...
Getting started with IoT with only your laptop - September 2019 - Dot Net Liv...
 
Controlling Robots Remotely with Azure
Controlling Robots Remotely with AzureControlling Robots Remotely with Azure
Controlling Robots Remotely with Azure
 

Similar to Dot NET Core 3 with the Raspberry Pi - Virtual Azure Community Day

NET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptxNET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptx
NishitPatel409228
 

Similar to Dot NET Core 3 with the Raspberry Pi - Virtual Azure Community Day (20)

Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - NDC London 2021
Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - NDC London 2021Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - NDC London 2021
Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - NDC London 2021
 
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Yorkshire ...
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Yorkshire ...Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Yorkshire ...
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Yorkshire ...
 
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - NDC Melbou...
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - NDC Melbou...Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - NDC Melbou...
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - NDC Melbou...
 
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Dot NET Pe...
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Dot NET Pe...Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Dot NET Pe...
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR - Dot NET Pe...
 
Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - Slides Onl...
Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - Slides Onl...Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - Slides Onl...
Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - Slides Onl...
 
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR.pptx
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR.pptxBuilding a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR.pptx
Building a Raspberry Pi Robot with Dot NET 6, Blazor and SignalR.pptx
 
Building a Raspberry Pi Robot with Dot NET 8, Blazor and SignalR
Building a Raspberry Pi Robot with Dot NET 8, Blazor and SignalRBuilding a Raspberry Pi Robot with Dot NET 8, Blazor and SignalR
Building a Raspberry Pi Robot with Dot NET 8, Blazor and SignalR
 
Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - DDD 2020
Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - DDD 2020Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - DDD 2020
Building a Raspberry Pi Robot with .NET 5, Blazor and SignalR - DDD 2020
 
Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - TechDays 2023
Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - TechDays 2023Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - TechDays 2023
Building a Raspberry Pi Robot with Dot NET 7, Blazor and SignalR - TechDays 2023
 
Azure IoT Hubs with Raspberry Pi and Node.js - DDD 14 Microsoft - Reading - 1...
Azure IoT Hubs with Raspberry Pi and Node.js - DDD 14 Microsoft - Reading - 1...Azure IoT Hubs with Raspberry Pi and Node.js - DDD 14 Microsoft - Reading - 1...
Azure IoT Hubs with Raspberry Pi and Node.js - DDD 14 Microsoft - Reading - 1...
 
DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20DevOps in an IoT World - Brighton Web Development - 29-10-20
DevOps in an IoT World - Brighton Web Development - 29-10-20
 
.NET Fest 2018. Оля Гавриш. Что нового в .NET Core 3.0
.NET Fest 2018. Оля Гавриш. Что нового в .NET Core 3.0.NET Fest 2018. Оля Гавриш. Что нового в .NET Core 3.0
.NET Fest 2018. Оля Гавриш. Что нового в .NET Core 3.0
 
The fight for surviving in the IoT world
The fight for surviving in the IoT worldThe fight for surviving in the IoT world
The fight for surviving in the IoT world
 
The fight for surviving in the IoT world - Radu Vunvulea
The fight for surviving in the IoT world - Radu VunvuleaThe fight for surviving in the IoT world - Radu Vunvulea
The fight for surviving in the IoT world - Radu Vunvulea
 
WebRTC Reborn - Full Stack
WebRTC Reborn  - Full StackWebRTC Reborn  - Full Stack
WebRTC Reborn - Full Stack
 
NET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptxNET app modernization and Microsoft Azure.pptx
NET app modernization and Microsoft Azure.pptx
 
IOT with Drupal 8 - Webinar Hyderabad Drupal Community
IOT with Drupal 8 -  Webinar Hyderabad Drupal CommunityIOT with Drupal 8 -  Webinar Hyderabad Drupal Community
IOT with Drupal 8 - Webinar Hyderabad Drupal Community
 
HTTP, WebSocket, SPDY: evoluzione dei protocolli web by Simone Bordet
HTTP, WebSocket, SPDY: evoluzione dei protocolli web by Simone BordetHTTP, WebSocket, SPDY: evoluzione dei protocolli web by Simone Bordet
HTTP, WebSocket, SPDY: evoluzione dei protocolli web by Simone Bordet
 
WebRTC Reborn Hackference
WebRTC Reborn HackferenceWebRTC Reborn Hackference
WebRTC Reborn Hackference
 
.NET Core Today and Tomorrow
.NET Core Today and Tomorrow.NET Core Today and Tomorrow
.NET Core Today and Tomorrow
 

More from Peter Gallagher

More from Peter Gallagher (10)

Supercharging your Data with Azure AI Search and Azure OpenAI
Supercharging your Data with Azure AI Search and Azure OpenAISupercharging your Data with Azure AI Search and Azure OpenAI
Supercharging your Data with Azure AI Search and Azure OpenAI
 
Experience Raspberry Pi 5 - October 2023
Experience Raspberry Pi 5 - October 2023Experience Raspberry Pi 5 - October 2023
Experience Raspberry Pi 5 - October 2023
 
Azure Percept Home Automation - Hacksoc 2022
Azure Percept Home Automation - Hacksoc 2022Azure Percept Home Automation - Hacksoc 2022
Azure Percept Home Automation - Hacksoc 2022
 
Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...
Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...
Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...
 
Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...
Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...
Deploying Web Apps using Config and Infrastructure as Code with Octopus Deplo...
 
Config and Deployments as Code with Octopus Deploy
Config and Deployments as Code with Octopus DeployConfig and Deployments as Code with Octopus Deploy
Config and Deployments as Code with Octopus Deploy
 
Azure Percept Home Automation - Microsoft Reactor London - 28-05-22
Azure Percept Home Automation - Microsoft Reactor London - 28-05-22Azure Percept Home Automation - Microsoft Reactor London - 28-05-22
Azure Percept Home Automation - Microsoft Reactor London - 28-05-22
 
IoT with only your Laptop - Build Stuff 2021
IoT with only your Laptop - Build Stuff 2021IoT with only your Laptop - Build Stuff 2021
IoT with only your Laptop - Build Stuff 2021
 
IoT with only your laptop - Microsoft Garage - January 2021
IoT with only your laptop - Microsoft Garage - January 2021IoT with only your laptop - Microsoft Garage - January 2021
IoT with only your laptop - Microsoft Garage - January 2021
 
IoT isn't just for Christmas
IoT isn't just for ChristmasIoT isn't just for Christmas
IoT isn't just for Christmas
 

Recently uploaded

CHEAP Call Girls in Hauz Quazi (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Hauz Quazi  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Hauz Quazi  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Hauz Quazi (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
amitlee9823
 
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
amitlee9823
 
一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证
一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证
一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证
wpkuukw
 
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
tufbav
 
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
ehyxf
 
Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
amitlee9823
 
Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)
amitlee9823
 
一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证
一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证
一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证
wpkuukw
 
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Naicy mandal
 
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
amitlee9823
 

Recently uploaded (20)

CHEAP Call Girls in Hauz Quazi (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Hauz Quazi  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Hauz Quazi  (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Hauz Quazi (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
Call Girls Banashankari Just Call 👗 7737669865 👗 Top Class Call Girl Service ...
 
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night StandCall Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
Call Girls In RT Nagar ☎ 7737669865 🥵 Book Your One night Stand
 
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Chikhali Call Me 7737669865 Budget Friendly No Advance Booking
 
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
9892124323 Pooja Nehwal Call Girls Services Call Girls service in Santacruz A...
 
(=Towel) Dubai Call Girls O525547819 Call Girls In Dubai (Fav0r)
(=Towel) Dubai Call Girls O525547819 Call Girls In Dubai (Fav0r)(=Towel) Dubai Call Girls O525547819 Call Girls In Dubai (Fav0r)
(=Towel) Dubai Call Girls O525547819 Call Girls In Dubai (Fav0r)
 
一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证
一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证
一比一定(购)新西兰林肯大学毕业证(Lincoln毕业证)成绩单学位证
 
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
怎样办理斯威本科技大学毕业证(SUT毕业证书)成绩单留信认证
 
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
怎样办理圣芭芭拉分校毕业证(UCSB毕业证书)成绩单留信认证
 
Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
Bommasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
 
Book Sex Workers Available Pune Call Girls Yerwada 6297143586 Call Hot India...
Book Sex Workers Available Pune Call Girls Yerwada  6297143586 Call Hot India...Book Sex Workers Available Pune Call Girls Yerwada  6297143586 Call Hot India...
Book Sex Workers Available Pune Call Girls Yerwada 6297143586 Call Hot India...
 
Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Escorts Service Arekere ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证
一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证
一比一定(购)坎特伯雷大学毕业证(UC毕业证)成绩单学位证
 
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
Makarba ( Call Girls ) Ahmedabad ✔ 6297143586 ✔ Hot Model With Sexy Bhabi Rea...
 
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
Call Girls Chickpet ☎ 7737669865☎ Book Your One night Stand (Bangalore)
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...Shikrapur Call Girls Most Awaited Fun  6297143586 High Profiles young Beautie...
Shikrapur Call Girls Most Awaited Fun 6297143586 High Profiles young Beautie...
 
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...
Pooja 9892124323, Call girls Services and Mumbai Escort Service Near Hotel Th...
 
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pimple Saudagar Call Me 7737669865 Budget Friendly No Advance Booking
 
NO1 Verified Amil Baba In Karachi Kala Jadu In Karachi Amil baba In Karachi A...
NO1 Verified Amil Baba In Karachi Kala Jadu In Karachi Amil baba In Karachi A...NO1 Verified Amil Baba In Karachi Kala Jadu In Karachi Amil baba In Karachi A...
NO1 Verified Amil Baba In Karachi Kala Jadu In Karachi Amil baba In Karachi A...
 

Dot NET Core 3 with the Raspberry Pi - Virtual Azure Community Day

  • 1. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Core 3.1 with Raspberry Pi PETE GALLAGHER PJGCREATIONS.CO.UK 28/07/2020
  • 2. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes About Me Pete Gallagher @pete_codes / @PJGCreations www.PeteCodes.co.uk www.PJGCreations.co.uk Pete@PJGCreations.co.uk IT Consultant, Microsoft Azure MVP, Pluralsight Author, Decades of Desktop, Web & Embedded Software experience, Meetup Organiser, STEM Ambassador, Code Club Organiser … Gadget Addict Father of two inquisitive girls
  • 3. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes What we’re going to be doing…  .NET Framework  .NET Core 3.1  Installing .NET Core on the Raspberry Pi  Hello World Console Apps  .NET Core IoT + Console Apps + Azure  Blazor  Hello World Blazor App
  • 4. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Framework
  • 5. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes DESKTOP WEB CLOUD MOBILE GAMING IoT AI .NET Your platform for building anything
  • 6. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes • C# is a simple, modern, object-oriented, and type- safe programming language • Its roots in the C family of languages makes C# immediately familiar to C, C++, Java, and JavaScript programmers • F# is a cross-platform, open-source, functional programming language for .NET • It also includes object-oriented and imperative programming • Visual Basic is an approachable language with a simple syntax for building type-safe, object- oriented apps You can write .NET with…
  • 7. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes A brief history of .NET • .NET Framework V1 • Visual Studio .NET • .NET Framework 3.0 • WPF • .NET Framework 4.5 • LINQ • Async • .NET Framework 4.6.2 • Visual Studio 2015 • .NET Core V1 • .NET Framework 4.7 • Visual Studio 2017 • .NET Core 2.0 • .NET Framework 4.8 • .NET Core 3.1 • Mono 6.8 • Visual Studio 2019
  • 8. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Standard
  • 9. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Standard
  • 10. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes LIBRARIES INFRASTRUCTURE .NET STANDARD .NET is a software development platform DESKTOP WEB CLOUD MOBILE GAMING IoT AI
  • 11. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Standard .NET Standard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0 2.1 .NET Core 1.0 1.0 1.0 1.0 1.0 1.0 1.0 2.0 3.1 .NET Framework 4.5 4.5 4.5.1 4.6 4.6.1 4.6.1 4.6.1 4.6.1 4.8 Mono 4.6 4.6 4.6 4.6 4.6 4.6 4.6 5.4 6.4 Xamarin.iOS 10.0 10.0 10.0 10.0 10.0 10.0 10.0 10.14 12.16 Xamarin.Mac 3.0 3.0 3.0 3.0 3.0 3.0 3.0 3.8 5.16 Xamarin.Android 7.0 7.0 7.0 7.0 7.0 7.0 7.0 8.0 10.0 Universal Windows Platform 10.0 10.0 10.0 10.0 10.0 10.0.16299 10.0.16299 10.0.16299 TBD Unity 2018.1 2018.1 2018.1 2018.1 2018.1 2018.1 2018.1 2018.1 TBD https://docs.microsoft.com/en-us/dotnet/standard/net-standard
  • 12. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Core
  • 13. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes “.NET Core is a free and open-source, managed computer software framework for Windows, Linux, and macOS operating systems. It is an open source, cross platform successor to .NET Framework.” Wikipedia .NET Core
  • 14. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Core 3.1  Open Source  Cross Platform  High Performance  Long Term Support  Built on .NET Standard 2.1  Includes C# 8 and F# 4.7  Build WPF and Forms for Windows 10  Supports Raspberry Pi https://devblogs.microsoft.com/dotnet/ announcing-net-core-3-1/
  • 15. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Open Source Journey 2001 ECMA 335 2002 NET 1.0 for Windows released. Mono project begins 2008 ASP.NET MVC (web platform) open source April 2014 .NET Compiler Platform (“Roslyn”) open source .NET Foundation founded Nov. 2014 .NET Core (cross-platform) project begins 2016 Mono project joins .NET Foundation Aug. 2017 .NET Core 2.0 released Dec. 2018 .NET Core 2.2 released .NET Core 3.0 preview WinForms and WPF go open source 2020 .NET Core 3.1
  • 16. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes “Using the same-size server, we were able to go from 1,000 requests per second per node with Node.js to 20,000 requests per second with .NET Core.“ — Raygun https://www.microsoft.com/net/customers Data sourced from official tests available at TechEmpower Round 15. Java Servlet .NET Core Node.js .NET is fast… REALLY FAST!
  • 17. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Ecosystem Momentum > 1.5M .NET Core Developers In Visual Studio #1 Most Loved Framework .NET Core Top 30 Highest velocity OSS Projects github.com/dotnet github.com/aspnet Top 5 Language on GitHub C# 7x Faster than Node.js ASP.NET Core 40% New to .NET are students dot.net download survey Build 2020 – Journey to one .NET - https://www.youtube.com/watch?v=ctSqiD8BGPM
  • 18. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Windows Demo
  • 19. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes www.dot.net Learn how to program with C#
  • 20. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Core
  • 21. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Install
  • 22. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Install http://bit.ly/dotnetcorerpi1
  • 23. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Install  Update your Pi; sudo apt-get update sudo apt-get upgrade  Setup a shared directory using Samba  Install and Setup Dot Net Core 3.1;  Download Pre-Req’s  Download Dot Net Core Binaries  Download ASP.Net Core Runtime  Make dotnet directory in opt  Extract Binaries and Runtime to dotnet directory  Create Symbolic Link to usr/local/bin  Add export for DotNet root to .bash file in home directory  Check if it all works with; dotnet --info
  • 24. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Install Or now just run… wget -O - https://raw.githubusercontent.com/pjgpetecodes/dotnetcore3pi/master/install.sh | sudo bash
  • 25. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Demo 1 Console App
  • 26. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes .NET Core GPIO
  • 27. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Circuit Pin 10 Pin 26
  • 28. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi GPIO Board Numbering BCM Numbering
  • 29. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes System.Device.Gpio  Supports I/O, SPI, PWM, I2C  Supports Raspberry Pi, Beagleboard, Hummingboard, Odroid etc  Supports Linux and Windows 10 IoT  Installs via the CLI or Nuget PM https://www.nuget.org/packages/ System.Device.Gpio
  • 30. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Iot.Device.Bindings  Support for BME280 Temp / Humidity Sensor MCP23xxx I/O Expander Explorer Hat Sense Hat Much more… https://www.nuget.org/packages/ Iot.Device.Bindings
  • 31. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Demo 2 LED App
  • 32. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Demo 3 Remote Deploy and Debug
  • 33. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Circuit Pin 10 Pin 26
  • 34. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Demo 4 Button App
  • 35. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Demo 5 Azure IoT Hubs Apps
  • 36. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Blazor
  • 37. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes “Blazor is a single-page app framework for building interactive client-side Web apps with .NET” Scott Hansleman Blazor
  • 38. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Blazor  Started Life as Steve Sanderson’s Pet Project  Web UI Framework based in C#  Replaces JavaScript  Razor and HTML  Server Side or Client Side WebAssembley  Client Side .NET with no plugins  Support in most modern Browsers https://dotnet.microsoft.com/apps/ aspnet/web-apps/blazor
  • 39. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Raspberry Pi Demo 6 Blazor App
  • 40. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Links  Blazor https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor  C# 8 + Dot Net Core 3.1 https://devblogs.microsoft.com/dotnet/announcing-net-core-3-1  Entity Framework Core 3.1 & EF 6.4 https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-3-1-and-entity- framework-6-4/  Visual Studio 2019 https://docs.microsoft.com/en-us/visualstudio/ide/whats-new-visual-studio-2019?view=vs-2019  Installing Dot Net Core 3.1 on the Raspberry Pi http://bit.ly/dotnetcorerpi1  Dot Net Core 3 GPIO Nuget Package https://www.nuget.org/packages/System.Device.Gpio  Dot Net Core 3 IoT Device Bindings Source Code https://github.com/dotnet/iot/tree/master/src/devices
  • 41. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes  Twitter @pete_codes / @PJGCreations  Email: pete@pjgcreations.co.uk  Website: https://www.petecodes.co.uk https://www.pjgcreations.co.uk  Notts IoT: https://www.nottsiot.co.uk  Dot Net Notts: https://www.dotnetnotts.co  Notts Dev Workshop: https://www.nottsdevworkshop.co.uk  LATi: https://www.lati.org.uk  Agile Engineering Podcast: https://agileengineeringpodcast.com/ Contact Me Slides: http://bit.ly/DotNetCoreRpiVACD2020
  • 42. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Free. Cross-platform. Open source. A developer platform for building all your apps. www.dot.net
  • 43. Dot Net Core 3.1 with Raspberry Pi – Copyright Pete Gallagher 2020 – @Pete_Codes Questions? Pete Gallagher @pete_codes / @PJGCreations www.PeteCodes.co.uk www.PJGCreations.co.uk Pete@PJGCreations.co.uk

Editor's Notes

  1. You can build anything with .NET. From desktop apps to cloud-native services, iPhone and Android mobile apps to artificial intelligence, you can build almost anything with the .NET platform.
  2. .NET is an entire software development platform that takes care of a lot of the heavy lifting for you when you want to build an application. Applications frameworks help you build the specific types of apps or workloads and enable you to literally build any app for any platform with any operating system. Each .NET workload shares a common infrastructure and .NET Standard library. This means not only are your .NET skills portable, but your actual code is portable no matter what you’re building. This makes it easy to share reusable components (called libraries) across the breadth of applications people build. Additionally, there are a broad set of development tools that makes it really productive to write, debug, build and manage code bases. See: www.dot.net
  3. <talk to the journey, key milestones below> Dec 2001-Feb 2002. A new platform is born. Along with HP, Intel and others, the ECMA-335 standard was created that defined a common language infrastructure to support multiple programming languages. C# and Visual Basic.NET were released and F# came later in 2007, but there are over 20 other .NET languages today. Visual Studio .NET was released and included C#, VB, C++ development all in one box. This was the first IDE that was truly integrated across multiple languages. Mono project begins. The CLI spec gave others the ability to create their own .NET implementations. Even though Microsoft built the first .NET Framework for Windows-only, the spec was intentionally portable across OSes and chipsets. The Mono project began, spearheaded by Miguel de Icaza, with the goal to implement Microsoft's new .NET development platform on Linux and Unix-like platforms. Later, Miguel started Xamarin which focused on cross-platform, native, mobile development with C#, built upon Mono. This allows developers to use C# and .NET to build apps for iOS and Android. Unity games development also emerged from Mono. 2008. ASP.NET MVC web development stack is released to CodePlex as open source. This was the first application development framework from Microsoft to be released as open source. The underlying runtime and compilers were still closed however. 2014. Hell freezes over & pigs fly. Early 2014 at Microsoft’s BUILD conference, Anders Hejlsberg, the father of C#, releases the .NET Compiler Platform “Roslyn” as open source on stage. Later in November, .NET Core project begins in the open. The technology world is shocked, and the .NET community is excited. .NET Core is a new cloud-native implementation of .NET that is geared for cross-platform, hyper-scale services as well as small IoT devices. It’s meant to bring .NET into the next 15 years of computing. And the community has been extremely supportive…. 2016. Mono comes home. In early 2016, Microsoft finally acquires Xamarin and brings Miguel de Icaza into Developer Division. Mono joins the .NET foundation and is officially supported and contributed to by Microsoft. The Microsoft community officially meets the Mono community. 2017. .NET Core 2.0 Released. Our cross platform and open source implementation of .NET finally releases to the world with unified tooling support across multiple operating systems and editors. 2018. Winforms and WPF go open source. At Microsoft Connect 2018 we announced the open sourcing of Windows Forms and WPF desktop frameworks. We’ve seen incredible contributions and activity since. The community now has the power to guide the direction of these frameworks. 2019 .NET Core 3.0 released. .NET Core 3.0 brings Windows desktop workloads to the .NET Core runtime which will allow self contained EXEs, side-by-side installs, and faster performance.
  4. .NET is fast. Really fast! That means applications provide better response times and require less compute power. StackOverflow serves 5.3M page views a day on just 9 servers! The popular TechEmpower benchmark compares web application frameworks with tasks like JSON serialization, database access, and server side template rendering - .NET performs faster than any other popular framework. https://www.techempower.com/benchmarks/#section=data-r14&hw=ph&test=plaintext The community has played a crucial role in performance work for the .NET stack. https://blogs.msdn.microsoft.com/dotnet/tag/performance/
  5. Build 2020 – Journey to one .NET - https://www.youtube.com/watch?v=ctSqiD8BGPM https://insights.stackoverflow.com/survey/2019#technology-most-loved-dreaded-and-wanted-loved3 github.com/cncf/velocity octoverse.github.com www.techempower.com/benchmarks/#section=data-r18&hw=ph&test=plaintext
  6. https://dotnet.microsoft.com/download/dotnet-core/3.1
  7. Run dotnet add package System.Device.Gpio in the console app directory. Update the program.cs file to; using System; using System.Device.Gpio; using System.Threading; namespace rpitest { class Program { static void Main(string[] args) { GpioController controller = new GpioController(PinNumberingScheme.Board); Console.WriteLine("Hello World!"); var pin = 10; var lightTime = 300; controller.OpenPin(pin, PinMode.Output); try { while (true) { controller.Write(pin, PinValue.High); Thread.Sleep(lightTime); controller.Write(pin, PinValue.Low); Thread.Sleep(lightTime); } } finally { controller.ClosePin(pin); } } } }
  8. Blazor replaces javascript and runs C# on the client side directly in the browsers with no plugins needed. Blazor Server – Works as a web Server (Shipped) Blazor Web Assembly (May 2020) Blazor Renders HTML, but Blazor Native but can render to other things like Native Controls for Mobile.
  9. Blazor replaces javascript and runs C# on the client side directly in the browsers with no plugins needed. Blazor Server – Works as a web Server (Shipped) Blazor Web Assembly (Released May 2020) Blazor Renders HTML, but Blazor Native but can render to other things like Native Controls for Mobile. Originally developed as a pet project by Steve Sanderson at Microsoft, Blazor is Web UI Framework which is based on C#, Razor and HTML. Blazor compiles down to WebAssembly, which makes it super (or blazingly) fast (Hence the Razor with a “B”). Blazor allows developers to write client side .net… You may say “Oh, like Silverlight?”… Nope, no plugins needed… It’s just supported natively in most modern browsers.