SlideShare a Scribd company logo
After Hour 2021
Internet of Things
Building an IoT infrastructure on Edge with .NET that talks with Azure
on Raspberry PI, ESP32, Mini PC
Marco Parenzan
After Hour 2021
Internet of Things
Marco Parenzan
Senior Solution Architect in beanTech
Microsoft Azure MVP
Community Lead 1nn0va // Pordenone
1nn0va After Hour (ogni martedì sera alle 21)
https://www.youtube.com/c/Community1nn0va
Linkedin: https://www.linkedin.com/in/marcoparenzan/
After Hour 2021
Internet of Things
Marco Parenzan
marco_parenzan
marcoparenzan
marcoparenzan
Marco Parenzan
After Hour 2021
Internet of Things
After Hour 2021
Internet of Things
After Hour 2021
Internet of Things
“I’m not a data scientist!
Or a BI Analyst!
After Hour 2021
Internet of Things
“But I’m a .NET developer
After Hour 2021
Internet of Things
.NET for data(science)
• .NET Spark
• .NET Interactive (notebooks)
• Azure Synapse Analytics
• ML.NET…
• All good for IoT scenarios!
After Hour 2021
Internet of Things
After Hour 2021
Internet of Things
“I’m not a field engineer
After Hour 2021
Internet of Things
https://opcfoundation.github.io/UA-.NETStandard/
After Hour 2021
Internet of Things
Real industrial edge/GW with PI
After Hour 2021
Internet of Things
More ARM
After Hour 2021
Internet of Things
.NET for ARM/edge
• .NET (Core)
• Jeff Geerling (You Tube)
After Hour 2021
Internet of Things
Sono contento perchè...
...dalla sessione di... ...ho preso...
Marco Dal Pino Devices on edge
Mirco Vanini .NET e Raspberry PI
Andrea Tosato Message broker
Marco Minerva Minimal API
Riccardo Zamana «Distributed edge»
After Hour 2021
Internet of Things
““Questo matrimonio
non s’ha da fare…”
After Hour 2021
Internet of Things
“ Sì….può….fareeeee!
After Hour 2021
Internet of Things
Edge Scenario
• IoT Edge…quale è lo scenario equivalente OpenSource?
• Non voglio usare i container…voglio sfruttare una rete di rpi
After Hour 2021
Internet of Things
Apache Kafka and Apache Spark
Gateway
(s)
After Hour 2021
Internet of Things
After Hour 2021
Internet of Things
TP-LINK MR6400 4G LENTO!!!!!!!
After Hour 2021
Internet of Things
Edge00 // PI400/4 PiOS
Edge06 // Atom Z8350/2 Win10/64
Edge03 // Pi3B/1 PiOS/32
Edge02 // Pi3B/1 PiOS/32
Edge01 // Pi4B/4 PiOS/32
After Hour 2021
Internet of Things
VNET
The complete vision
Edge00
PI400/4
Edge01
PI4/4
Kafka
Edge02
PI3B+/1
Spark
Edge99
IoTHub
Nano00
ESP32WROOM
Device//GPIO
TP-LINK
MR6400 4G
Edge03
PI3B+/1
Broker)
VPN
Private
Azure
Edge
192.168.2.100 192.168.2.101 192.168.2.102 192.168.2.103
Edge06
Atom Z8350/2
AI
NOT YET
TO BE CHANGED
After Hour 2021
Internet of Things
Enabled SSH and VNC
• DHCP with MAC reservation
• Issues:
• networking: PI does not
broadcast its name out of the
box(?!?!?!)
• Samba/NFS/…
• Reaching (issues with Windows
10)Router!
After Hour 2021
Internet of Things
Install .NET 6.0 on Raspberry PI
wget https://download.visualstudio.microsoft.com/download/pr/1f85b038-
9917-4d0a-8485-5dc86510eec7/a7555924fe292c6c2140893f066abe65/dotnet-
sdk-6.0.100-linux-arm.tar.gz
sudo mkdir -p $HOME/.dotnet
sudo tar zxf dotnet-sdk-6.0.100-linux-arm.tar.gz -C $HOME/.dotnet
echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc
source ~/.bashrc
• On edge00 and edge03
• edge02 has 3.1 for .net spark
• And JDK
• Edge01only JDK
https://docs.microsoft.com/en-us/dotnet/iot/deployment
After Hour 2021
Internet of Things
Visual Studio Code
• It works!
• And install VSCode
(https://code.visualstudio.com/docs/setup/raspberry-pi)
• sudo apt update
• sudo apt install code
• But...
After Hour 2021
Internet of Things
Ubuntu o RaspiOS?
• Ho provato Ubuntu 20 su PI400/4 64bit
• Lento!
• Sono tornato a RaspiOS/32
• Facile abilitare VNC e SSH
After Hour 2021
Internet of Things
No Containers?
• Not using containers
• More simple manipulation of config files
• Images not ready for ARM
• Speed…not ready to wait more…
After Hour 2021
Internet of Things
The scenario
• WordCount as a Sample (WCaaS )
• Wordsignal, command, event (vote?)
• 19 can become «event1»..»event9»
• In device terms: a button on digital input for each «word»
After Hour 2021
Internet of Things
Edge00: PI400
• Produce events
• Send to Kafka
• Issues:
• Kafka written in Java
• But std .NET package uses native libkafka (C++) from Confluent that is
available only for x86
• Require rebuilding (not found a ready rebuild)
• Used a native implementation
• not maintained
• Not clean working
• MQTT listener on kafka does not exist (only plugins controlled by kafka)
After Hour 2021
Internet of Things
Edge01: PI4/4 Kafka
• Collect events events with Kafka
• Install OpenJDK11
• Issues
• Consumes lot of memory (required PI4)
• Issues with configuration (listeners, also on WSL)
• Complicated configuration (SASL-SCRAM, certificate store)Industrial
scenario (tampering)
After Hour 2021
Internet of Things
Edge02: PI3 Spark
• Aggregating events
• Install OpenJDK8 for 2.4.8 (not 11)
• Issues
• Issues(?) with 3.x (not really tested)
• Alignment between .net spark with spark
• Problems with watermarking that is fundamental on streaming
After Hour 2021
Internet of Things
Edge03: PI3
• Handle processed data and route to the cloud
• Planned installing an MQTT broker (Mosquitto?)
• To implement real MQTT routing
• Installed .NET 6
• Monitor files on a shared folder on edge02
• sudo mkdir /mnt/data
• sudo apt-get install sshfs
• sudo sshfs -o allow_other,default_permissions pi@edge02.local:/home/pi/data
/mnt/data
• Issues
• <empty>?
• Broker not tested
After Hour 2021
Internet of Things
DEMO
After Hour 2021
Internet of Things
.NET NanoFramework
• http://nanoframework.net/
• Open Source, from .net microframework
• no AOT compiling
• Interpreter
• firmware containing IL code
• Promising, not complete
• No async/await and Tasks
• API
• All rewritten
• Focused on devices, not Azure
After Hour 2021
Internet of Things
ESP32-WROOM32 (1x10€, 3x23€)
After Hour 2021
Internet of Things
ESP32 CAM – Waiting for driver (few weeks)
After Hour 2021
Internet of Things
DEMO
After Hour 2021
Internet of Things
After Hour 2021
Internet of Things
Minus/Issues
• PI3 is slowOnly PI4+
• PI4 is slow for desktop
• Kafka is difficult to configure
• Spark has a complex processing/execution model
• In general documentation is sparse and not homogeneus
(PI/Kafka/Spark)
After Hour 2021
Internet of Things
Plus
• .NET 6 works fine
• Works everywhere
• Also Java works fine Kafka and Spark
• PI4 is powerful
• It can be a potential platform for Kafka and Spark on edge
After Hour 2021
Internet of Things
Some links
• https://github.com/dotnet/spark
• https://docs.microsoft.com/en-us/dotnet/spark/tutorials/get-
started?tabs=linux
• https://code.visualstudio.com/docs/setup/raspberry-pi
• https://dotnet.microsoft.com/download/dotnet/thank-you/sdk-3.1.413-
linux-arm32-binaries
• https://github.com/dotnet/spark/releases
• https://docs.microsoft.com/en-us/dotnet/iot/deployment
• https://mvnrepository.com/artifact/org.apache.spark/spark-
streaming_2.12/3.0.1
After Hour 2021
Internet of Things
GRAZIE!
After Hour 2021
Internet of Things
https://www.youtube.com/c/Community1nn0va

More Related Content

PPTX
IoT Microservices at the Edge with Eclipse ioFog
PPTX
Network Monitoring and Analytics
PDF
[OpenStack Day in Korea 2015] Track 3-6 - Archiectural Overview of the Open S...
PDF
IPSN 2009 Contiki / uIP tutorial
PDF
[OpenStack Day in Korea 2015] Track 2-3 - 오픈스택 클라우드에 최적화된 네트워크 가상화 '누아지(Nuage)'
PPTX
OpenStack: Everything You Need to Know To Get Started
PDF
Evolving Virtual Networking with IO Visor
PDF
Contiki Presentation
IoT Microservices at the Edge with Eclipse ioFog
Network Monitoring and Analytics
[OpenStack Day in Korea 2015] Track 3-6 - Archiectural Overview of the Open S...
IPSN 2009 Contiki / uIP tutorial
[OpenStack Day in Korea 2015] Track 2-3 - 오픈스택 클라우드에 최적화된 네트워크 가상화 '누아지(Nuage)'
OpenStack: Everything You Need to Know To Get Started
Evolving Virtual Networking with IO Visor
Contiki Presentation

What's hot (20)

PDF
Openstack Pakistan Workshop (intro)
PPTX
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
PDF
[OpenStack Day in Korea 2015] Track 3-4 - Software Defined Storage (SDS) and ...
PDF
Eclipse Kura Shoot a-pi
PPTX
[OpenStack 하반기 스터디] DPDK & OpenStack why?
PDF
OpenStack Astara
PPTX
OpenStack and the Transformation of the Data Center - Lew Tucker
PDF
Openstack Workshop (Networking/Storage)
PPTX
OpenStack As A Strategy For Future Growth at Cisco
PDF
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
PDF
End-to-end IoT solutions with Java and Eclipse IoT
PDF
Improving Network Application Performance using Load Aware Libeventdev
PPTX
Creator IoT Framework
PPTX
OpenStack and OpenDaylight Workshop: ONUG Spring 2014
PPTX
FIWARE Lab architecture, an open point to start the installation of a new region
PPTX
Introduction to Openstack Network
PDF
Using VPP and SRIO-V with Clear Containers
PDF
Quieting noisy neighbor with Intel® Resource Director Technology
PPTX
OpenStack Enabling DevOps
PPTX
Is OpenStack Neutron production ready for large scale deployments?
Openstack Pakistan Workshop (intro)
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[OpenStack Day in Korea 2015] Track 3-4 - Software Defined Storage (SDS) and ...
Eclipse Kura Shoot a-pi
[OpenStack 하반기 스터디] DPDK & OpenStack why?
OpenStack Astara
OpenStack and the Transformation of the Data Center - Lew Tucker
Openstack Workshop (Networking/Storage)
OpenStack As A Strategy For Future Growth at Cisco
[OpenStack Day in Korea 2015] Track 1-6 - 갈라파고스의 이구아나, 인프라에 오픈소스를 올리다. 그래서 보이...
End-to-end IoT solutions with Java and Eclipse IoT
Improving Network Application Performance using Load Aware Libeventdev
Creator IoT Framework
OpenStack and OpenDaylight Workshop: ONUG Spring 2014
FIWARE Lab architecture, an open point to start the installation of a new region
Introduction to Openstack Network
Using VPP and SRIO-V with Clear Containers
Quieting noisy neighbor with Intel® Resource Director Technology
OpenStack Enabling DevOps
Is OpenStack Neutron production ready for large scale deployments?
Ad

Similar to Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to connect to Azure (20)

PPTX
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
PDF
Developers’ mDay u Banjoj Luci - Janko Isidorović, Mainflux – Unified IoT Pl...
PPTX
The fight for surviving in the IoT world
PDF
The fight for surviving in the IoT world - Radu Vunvulea
PDF
CCNA Security Lab 9 - Enabling SSH and HTTPS access to Cisco IOS Routers - CLI
PDF
Introduction to Windows IoT via Raspberry Pi 3
PPTX
Introduction to Windows IoT Nov 2017
PDF
Mozilla chirimen firefox os dwika v5
PPTX
IOT with Drupal 8 - Webinar Hyderabad Drupal Community
PDF
Intel ndk - a few Benchmarks
PDF
20151207 - iot strategy
PPTX
Volunteer Computing using BOINC
PDF
Peripheral Programming using Arduino and Python on MediaTek LinkIt Smart 7688...
PDF
Maker of Things - the open IoT cloud for makers chapter.
PPTX
What should you know about Net Core?
PDF
Twilio Signal 2016 WebRTC Reborn
PDF
WebRTC Reborn SignalConf 2016
PDF
Sergio González - WiFiSlax 4.0 [RootedCON 2010]
PPTX
IoTSummit: Design and architect always disconnected iot system
Running Kafka and Spark on Raspberry PI with Azure and some .net magic
Developers’ mDay u Banjoj Luci - Janko Isidorović, Mainflux – Unified IoT Pl...
The fight for surviving in the IoT world
The fight for surviving in the IoT world - Radu Vunvulea
CCNA Security Lab 9 - Enabling SSH and HTTPS access to Cisco IOS Routers - CLI
Introduction to Windows IoT via Raspberry Pi 3
Introduction to Windows IoT Nov 2017
Mozilla chirimen firefox os dwika v5
IOT with Drupal 8 - Webinar Hyderabad Drupal Community
Intel ndk - a few Benchmarks
20151207 - iot strategy
Volunteer Computing using BOINC
Peripheral Programming using Arduino and Python on MediaTek LinkIt Smart 7688...
Maker of Things - the open IoT cloud for makers chapter.
What should you know about Net Core?
Twilio Signal 2016 WebRTC Reborn
WebRTC Reborn SignalConf 2016
Sergio González - WiFiSlax 4.0 [RootedCON 2010]
IoTSummit: Design and architect always disconnected iot system
Ad

More from Marco Parenzan (20)

PPTX
Azure IoT Central per lo SCADA engineer
PPTX
Azure Hybrid @ Home
PPTX
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
PPTX
Azure Synapse Analytics for your IoT Solutions
PPTX
Power BI Streaming Data Flow e Azure IoT Central
PPTX
Power BI Streaming Data Flow e Azure IoT Central
PPTX
Power BI Streaming Data Flow e Azure IoT Central
PPTX
Developing Actors in Azure with .net
PPTX
Math with .NET for you and Azure
PPTX
Power BI data flow and Azure IoT Central
PPTX
.net for fun: write a Christmas videogame
PPTX
Anomaly Detection with Azure and .NET
PPTX
Deploy Microsoft Azure Data Solutions
PPTX
Deep Dive Time Series Anomaly Detection in Azure with dotnet
PPTX
Azure IoT Central
PPTX
Anomaly Detection with Azure and .net
PPTX
Code Generation for Azure with .net
PPTX
Time Series Anomaly Detection with Azure and .NETT
PPTX
Code Generation for Azure with .net
PPTX
Deep dive time series anomaly detection with different Azure Data Services
Azure IoT Central per lo SCADA engineer
Azure Hybrid @ Home
Static abstract members nelle interfacce di C# 11 e dintorni di .NET 7.pptx
Azure Synapse Analytics for your IoT Solutions
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
Power BI Streaming Data Flow e Azure IoT Central
Developing Actors in Azure with .net
Math with .NET for you and Azure
Power BI data flow and Azure IoT Central
.net for fun: write a Christmas videogame
Anomaly Detection with Azure and .NET
Deploy Microsoft Azure Data Solutions
Deep Dive Time Series Anomaly Detection in Azure with dotnet
Azure IoT Central
Anomaly Detection with Azure and .net
Code Generation for Azure with .net
Time Series Anomaly Detection with Azure and .NETT
Code Generation for Azure with .net
Deep dive time series anomaly detection with different Azure Data Services

Recently uploaded (20)

PPTX
Materi-Enum-and-Record-Data-Type (1).pptx
PDF
PTS Company Brochure 2025 (1).pdf.......
PDF
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
PPTX
Transform Your Business with a Software ERP System
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PPT
JAVA ppt tutorial basics to learn java programming
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
PPTX
ManageIQ - Sprint 268 Review - Slide Deck
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus
Materi-Enum-and-Record-Data-Type (1).pptx
PTS Company Brochure 2025 (1).pdf.......
Flood Susceptibility Mapping Using Image-Based 2D-CNN Deep Learnin. Overview ...
Transform Your Business with a Software ERP System
VVF-Customer-Presentation2025-Ver1.9.pptx
Operating system designcfffgfgggggggvggggggggg
Design an Analysis of Algorithms II-SECS-1021-03
JAVA ppt tutorial basics to learn java programming
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Softaken Excel to vCard Converter Software.pdf
Which alternative to Crystal Reports is best for small or large businesses.pdf
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Wondershare Filmora 15 Crack With Activation Key [2025
How to Migrate SBCGlobal Email to Yahoo Easily
Why TechBuilder is the Future of Pickup and Delivery App Development (1).pdf
ManageIQ - Sprint 268 Review - Slide Deck
How Creative Agencies Leverage Project Management Software.pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
T3DD25 TYPO3 Content Blocks - Deep Dive by André Kraus

Building IoT infrastructure on edge with .net, Raspberry PI and ESP32 to connect to Azure

  • 1. After Hour 2021 Internet of Things Building an IoT infrastructure on Edge with .NET that talks with Azure on Raspberry PI, ESP32, Mini PC Marco Parenzan
  • 2. After Hour 2021 Internet of Things Marco Parenzan Senior Solution Architect in beanTech Microsoft Azure MVP Community Lead 1nn0va // Pordenone 1nn0va After Hour (ogni martedì sera alle 21) https://www.youtube.com/c/Community1nn0va Linkedin: https://www.linkedin.com/in/marcoparenzan/
  • 3. After Hour 2021 Internet of Things Marco Parenzan marco_parenzan marcoparenzan marcoparenzan Marco Parenzan
  • 6. After Hour 2021 Internet of Things “I’m not a data scientist! Or a BI Analyst!
  • 7. After Hour 2021 Internet of Things “But I’m a .NET developer
  • 8. After Hour 2021 Internet of Things .NET for data(science) • .NET Spark • .NET Interactive (notebooks) • Azure Synapse Analytics • ML.NET… • All good for IoT scenarios!
  • 10. After Hour 2021 Internet of Things “I’m not a field engineer
  • 11. After Hour 2021 Internet of Things https://opcfoundation.github.io/UA-.NETStandard/
  • 12. After Hour 2021 Internet of Things Real industrial edge/GW with PI
  • 13. After Hour 2021 Internet of Things More ARM
  • 14. After Hour 2021 Internet of Things .NET for ARM/edge • .NET (Core) • Jeff Geerling (You Tube)
  • 15. After Hour 2021 Internet of Things Sono contento perchè... ...dalla sessione di... ...ho preso... Marco Dal Pino Devices on edge Mirco Vanini .NET e Raspberry PI Andrea Tosato Message broker Marco Minerva Minimal API Riccardo Zamana «Distributed edge»
  • 16. After Hour 2021 Internet of Things ““Questo matrimonio non s’ha da fare…”
  • 17. After Hour 2021 Internet of Things “ Sì….può….fareeeee!
  • 18. After Hour 2021 Internet of Things Edge Scenario • IoT Edge…quale è lo scenario equivalente OpenSource? • Non voglio usare i container…voglio sfruttare una rete di rpi
  • 19. After Hour 2021 Internet of Things Apache Kafka and Apache Spark Gateway (s)
  • 21. After Hour 2021 Internet of Things TP-LINK MR6400 4G LENTO!!!!!!!
  • 22. After Hour 2021 Internet of Things Edge00 // PI400/4 PiOS Edge06 // Atom Z8350/2 Win10/64 Edge03 // Pi3B/1 PiOS/32 Edge02 // Pi3B/1 PiOS/32 Edge01 // Pi4B/4 PiOS/32
  • 23. After Hour 2021 Internet of Things VNET The complete vision Edge00 PI400/4 Edge01 PI4/4 Kafka Edge02 PI3B+/1 Spark Edge99 IoTHub Nano00 ESP32WROOM Device//GPIO TP-LINK MR6400 4G Edge03 PI3B+/1 Broker) VPN Private Azure Edge 192.168.2.100 192.168.2.101 192.168.2.102 192.168.2.103 Edge06 Atom Z8350/2 AI NOT YET TO BE CHANGED
  • 24. After Hour 2021 Internet of Things Enabled SSH and VNC • DHCP with MAC reservation • Issues: • networking: PI does not broadcast its name out of the box(?!?!?!) • Samba/NFS/… • Reaching (issues with Windows 10)Router!
  • 25. After Hour 2021 Internet of Things Install .NET 6.0 on Raspberry PI wget https://download.visualstudio.microsoft.com/download/pr/1f85b038- 9917-4d0a-8485-5dc86510eec7/a7555924fe292c6c2140893f066abe65/dotnet- sdk-6.0.100-linux-arm.tar.gz sudo mkdir -p $HOME/.dotnet sudo tar zxf dotnet-sdk-6.0.100-linux-arm.tar.gz -C $HOME/.dotnet echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc echo 'export PATH=$PATH:$HOME/.dotnet' >> ~/.bashrc source ~/.bashrc • On edge00 and edge03 • edge02 has 3.1 for .net spark • And JDK • Edge01only JDK https://docs.microsoft.com/en-us/dotnet/iot/deployment
  • 26. After Hour 2021 Internet of Things Visual Studio Code • It works! • And install VSCode (https://code.visualstudio.com/docs/setup/raspberry-pi) • sudo apt update • sudo apt install code • But...
  • 27. After Hour 2021 Internet of Things Ubuntu o RaspiOS? • Ho provato Ubuntu 20 su PI400/4 64bit • Lento! • Sono tornato a RaspiOS/32 • Facile abilitare VNC e SSH
  • 28. After Hour 2021 Internet of Things No Containers? • Not using containers • More simple manipulation of config files • Images not ready for ARM • Speed…not ready to wait more…
  • 29. After Hour 2021 Internet of Things The scenario • WordCount as a Sample (WCaaS ) • Wordsignal, command, event (vote?) • 19 can become «event1»..»event9» • In device terms: a button on digital input for each «word»
  • 30. After Hour 2021 Internet of Things Edge00: PI400 • Produce events • Send to Kafka • Issues: • Kafka written in Java • But std .NET package uses native libkafka (C++) from Confluent that is available only for x86 • Require rebuilding (not found a ready rebuild) • Used a native implementation • not maintained • Not clean working • MQTT listener on kafka does not exist (only plugins controlled by kafka)
  • 31. After Hour 2021 Internet of Things Edge01: PI4/4 Kafka • Collect events events with Kafka • Install OpenJDK11 • Issues • Consumes lot of memory (required PI4) • Issues with configuration (listeners, also on WSL) • Complicated configuration (SASL-SCRAM, certificate store)Industrial scenario (tampering)
  • 32. After Hour 2021 Internet of Things Edge02: PI3 Spark • Aggregating events • Install OpenJDK8 for 2.4.8 (not 11) • Issues • Issues(?) with 3.x (not really tested) • Alignment between .net spark with spark • Problems with watermarking that is fundamental on streaming
  • 33. After Hour 2021 Internet of Things Edge03: PI3 • Handle processed data and route to the cloud • Planned installing an MQTT broker (Mosquitto?) • To implement real MQTT routing • Installed .NET 6 • Monitor files on a shared folder on edge02 • sudo mkdir /mnt/data • sudo apt-get install sshfs • sudo sshfs -o allow_other,default_permissions pi@edge02.local:/home/pi/data /mnt/data • Issues • <empty>? • Broker not tested
  • 34. After Hour 2021 Internet of Things DEMO
  • 35. After Hour 2021 Internet of Things .NET NanoFramework • http://nanoframework.net/ • Open Source, from .net microframework • no AOT compiling • Interpreter • firmware containing IL code • Promising, not complete • No async/await and Tasks • API • All rewritten • Focused on devices, not Azure
  • 36. After Hour 2021 Internet of Things ESP32-WROOM32 (1x10€, 3x23€)
  • 37. After Hour 2021 Internet of Things ESP32 CAM – Waiting for driver (few weeks)
  • 38. After Hour 2021 Internet of Things DEMO
  • 40. After Hour 2021 Internet of Things Minus/Issues • PI3 is slowOnly PI4+ • PI4 is slow for desktop • Kafka is difficult to configure • Spark has a complex processing/execution model • In general documentation is sparse and not homogeneus (PI/Kafka/Spark)
  • 41. After Hour 2021 Internet of Things Plus • .NET 6 works fine • Works everywhere • Also Java works fine Kafka and Spark • PI4 is powerful • It can be a potential platform for Kafka and Spark on edge
  • 42. After Hour 2021 Internet of Things Some links • https://github.com/dotnet/spark • https://docs.microsoft.com/en-us/dotnet/spark/tutorials/get- started?tabs=linux • https://code.visualstudio.com/docs/setup/raspberry-pi • https://dotnet.microsoft.com/download/dotnet/thank-you/sdk-3.1.413- linux-arm32-binaries • https://github.com/dotnet/spark/releases • https://docs.microsoft.com/en-us/dotnet/iot/deployment • https://mvnrepository.com/artifact/org.apache.spark/spark- streaming_2.12/3.0.1
  • 43. After Hour 2021 Internet of Things GRAZIE!
  • 44. After Hour 2021 Internet of Things https://www.youtube.com/c/Community1nn0va