SlideShare ist ein Scribd-Unternehmen logo
1 von 69
USING ACTORS FOR THE
INTERNET OF (LEGO) TRAINS
Johan Janssen, Info Support @johanjanssen42
Disclaimer:
No Lego was harmed beyond
repair during the project.
CONTENT
 Why?
 Getting started
 Architecture
 Actors
 Remote actors
 Shared protocol
 HTTP vs Actors
 Conclusion
 Challenges
 Questions
WHY?
Why?
GETTING STARTED
MINIMAL INGREDIENTS FOR 1TRAIN
ABOUT € 50
Raspberry Pi A+ / Raspberry Pi Zero
Wifi dongle
EDUP Ultra-Mini Nano USB 2.0 802.11n
USB battery pack
Anker® 2. Gen Astro Mini 3200mAh
Infrared transmitter
Keyes 38KHz IR InfraredTransmitter Module for
Arduino
COMPARISON
Idle (mA) Memory (MB) CPU (Mhz) Size (mm)
RPi A+ 100 256 700 65 *56
RPi Zero 100 512 1000 65 * 30
RPi B+ 200 512 700 85 *56
RPi 2 B 230 1024 4*900 85 *56
Odroid C1 325 1024 4*1500 85 *56
Particle
Photon
80-100 128KB 120 38 * 21
ARCHITECTURE
Architecture
LTCC
(Angular)
LTCC
(Java)
DeviceControl
(Java)
Infrared
(C and LIRC)
RFID
(C)
SwitchControl
(Java)
Servo
(Python)
RPi-Cam-Web-
Interface
(C)
LTCC
(Angular)
LTCC
(Scala/Akka)
DeviceControl
(Scala/Akka)
Infrared
(C and LIRC)
RFID
(C)
SwitchControl
(Scala/Akka)
Servo
(Python)
Leds with Photon
(C)
RPi-Cam-Web-
Interface
(C)
LTCC (Laptop / Pi)
LegoTrain
SwitchControl (Pi) Camera (Pi)
Device
Control
(Pi)
Original
controls
Infrared
Sound
Camera
Switches
LTCC APPLICATION
ACTORS
AKKA ACTORS
class Worker extends Actor {
def receive = {
case x =>
println(x)
}
}
val system = ActorSystem("ExampleActorSystem")
val workerActorRef = system.actorOf(Props[Worker])
workerActorRef ! "Hello conference"
REMOTE ACTORS
AKKA REMOTE ACTOR CALL
val workerActorRef =
system.actorOf(Props[Worker])
val workerActorRef =
system.actorSelection("akka.tcp://
ExampleActorSystem@127.0.0.1:9005
/user/workerActor")
AKKA REMOTE ACTOR CONFIGURATION
akka {
actor {
provider = "akka.remote.RemoteActorRefProvider"
}
remote {
enabled-transports = ["akka.remote.netty.tcp"]
netty.tcp {
hostname = "127.0.0.1"
port = 9002
}
}
}
SHARED PROTOCOL
Actor on
JVM 1
Actor on
JVM 2
Messages
Actor on
laptop
Musicservice
Actor on
Raspberry PiPlay
message
CONCRETE EXAMPLE
Server
application
MessageProtocol
Raspberry Pi
application
EXAMPLE MESSAGE
object MusicServiceMessage {
case class Play(filename: String)
case class MusicList(filenames: List[Song])
}
MESSAGE USED BY APPLICATION
val actorRef = context.actorSelection(
"akka.tcp://[Actorsystem]@
[IP]:[port]/user/musicservice")
actorRef !
[packagename].MusicServiceMessage.Play(filename)
HTTP VS REMOTE ACTOR
ADVANTAGES REMOTE ACTORS
 No converting to JSON/SOAP
 More natural programming
 Concurrent on default
 Built-in load balancer
 Built-in circuit breaker
ADVANTAGES HTTP
 Indepedent of technology
 Loosely coupled
FAT JAR (SBT ASSEMBLY) IN MB
0
5
10
15
20
25
Local actor Remote actor Akka HTTP Spring boot
GATLING
class ExampleSimulation extends Simulation {
val scn = scenario("My scenario").repeat(100) {
exec(
http("Ping")
.get("http://localhost:8080/ping")
.check(status.is(200))
).pause(100 millisecond) // Optional
}
setUp(scn.inject(
rampUsers(1000) over (10 seconds) // Changing
))
}
PERFORMANCETEST SETUP
JVM 1
Akka HTTP
HTTP: /ping
pong JVM 2
Akka HTTP
HTTP: /pong
pong
JVM 1
Akka HTTP
HTTP: /ping
pong JVM 2
Akka remote actor
Akka over TCP: pong
pong
0
20
40
60
80
100
120
50 50 no pause 500 500 no pause 1000 1000 no pause
Mean response time (ms)
Akka HTTP Remote actor
0
100
200
300
400
500
600
700
800
900
50 50 no pause 500 500 no pause 1000 1000 no pause
Max response time (ms)
Akka HTTP Remote actor
0
50
100
150
200
250
300
350
50 50 no pause 500 500 no pause 1000 1000 no pause
99 percentile (ms)
Akka HTTP Remote actor
GRADUATION STUDENT
REST could handle around 600 users
Remote actors probably around 3300 users
REST is dead,
long live remote actors!
- Johan Janssen
0
5
10
15
20
25
30
50 50 no pause 500 500 no pause 1000 1000 no pause
Mean response time (ms)
Remote actor Spring boot
0
100
200
300
400
500
600
700
800
900
50 50 no pause 500 500 no pause 1000 1000 no pause
Max response time (ms)
Remote actor Spring boot
0
20
40
60
80
100
120
140
160
50 50 no pause 500 500 no pause 1000 1000 no pause
99 percentile (ms)
Remote actor Spring boot
Challenges
DO ITYOURSELF
 https://github.com/johanjanssen/
 LCC
 LCCInstallScript
CONCLUSION
The best part!!
QUESTIONS?
Johan Janssen, Info Support
@johanjanssen42

Weitere ähnliche Inhalte

Was ist angesagt?

SiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_DoinSiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_Doin
Jonny Doin
 

Was ist angesagt? (17)

Cisco 2921 specs
Cisco 2921 specsCisco 2921 specs
Cisco 2921 specs
 
SiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_DoinSiliconFailsafeForIoT_Doin
SiliconFailsafeForIoT_Doin
 
Milan Futurology V1.1
Milan Futurology V1.1Milan Futurology V1.1
Milan Futurology V1.1
 
nullcon 2010 - Software Fuzzing with Wireplay
nullcon 2010 - Software Fuzzing with Wireplaynullcon 2010 - Software Fuzzing with Wireplay
nullcon 2010 - Software Fuzzing with Wireplay
 
Cisco 2901 specs
Cisco 2901 specsCisco 2901 specs
Cisco 2901 specs
 
Full DDR Bank Power and Signal Integrity Analysis with Chip-Package-System Co...
Full DDR Bank Power and Signal Integrity Analysis with Chip-Package-System Co...Full DDR Bank Power and Signal Integrity Analysis with Chip-Package-System Co...
Full DDR Bank Power and Signal Integrity Analysis with Chip-Package-System Co...
 
Methods for Achieving RTL to Gate Power Consistency
Methods for Achieving RTL to Gate Power ConsistencyMethods for Achieving RTL to Gate Power Consistency
Methods for Achieving RTL to Gate Power Consistency
 
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
Your Linux AMI: Optimization and Performance (CPN302) | AWS re:Invent 2013
 
Trash Robotic Router Platform - David Melendez - Codemotion Rome 2015
Trash Robotic Router Platform - David Melendez - Codemotion Rome 2015Trash Robotic Router Platform - David Melendez - Codemotion Rome 2015
Trash Robotic Router Platform - David Melendez - Codemotion Rome 2015
 
Spiceを活用した電源回路シミュレーションセミナーテキスト 18 feb2015
Spiceを活用した電源回路シミュレーションセミナーテキスト 18 feb2015Spiceを活用した電源回路シミュレーションセミナーテキスト 18 feb2015
Spiceを活用した電源回路シミュレーションセミナーテキスト 18 feb2015
 
AgO Product Road Map
AgO Product Road MapAgO Product Road Map
AgO Product Road Map
 
Tools for Practical Attacks on Analog-to-Digital Conversion
Tools for Practical Attacks on Analog-to-Digital ConversionTools for Practical Attacks on Analog-to-Digital Conversion
Tools for Practical Attacks on Analog-to-Digital Conversion
 
Packet Manipulator Processor: Smashing «Atomic» Actions
Packet Manipulator Processor:  Smashing «Atomic» Actions Packet Manipulator Processor:  Smashing «Atomic» Actions
Packet Manipulator Processor: Smashing «Atomic» Actions
 
Multicloud connectivity using OpenNHRP
Multicloud connectivity using OpenNHRPMulticloud connectivity using OpenNHRP
Multicloud connectivity using OpenNHRP
 
Electric Double-Layer Capacitor(EDLC) Simulink Model using MATLAB
Electric Double-Layer Capacitor(EDLC) Simulink Model using MATLABElectric Double-Layer Capacitor(EDLC) Simulink Model using MATLAB
Electric Double-Layer Capacitor(EDLC) Simulink Model using MATLAB
 
Quantum Computing in China: Progress on Superconducting Multi-Qubits System
Quantum Computing in China: Progress on Superconducting Multi-Qubits SystemQuantum Computing in China: Progress on Superconducting Multi-Qubits System
Quantum Computing in China: Progress on Superconducting Multi-Qubits System
 
TechWiseTV Workshop: Digital Building Switches
TechWiseTV Workshop: Digital Building SwitchesTechWiseTV Workshop: Digital Building Switches
TechWiseTV Workshop: Digital Building Switches
 

Ähnlich wie EuregJUG: Using actors for the internet of (lego) trains

Ähnlich wie EuregJUG: Using actors for the internet of (lego) trains (20)

The internet of (lego) trains
The internet of (lego) trainsThe internet of (lego) trains
The internet of (lego) trains
 
Server-side Intelligent Switching using vyatta
Server-side Intelligent Switching using vyattaServer-side Intelligent Switching using vyatta
Server-side Intelligent Switching using vyatta
 
huawei-ce6850-ei-b00-brochure-datasheet.pdf
huawei-ce6850-ei-b00-brochure-datasheet.pdfhuawei-ce6850-ei-b00-brochure-datasheet.pdf
huawei-ce6850-ei-b00-brochure-datasheet.pdf
 
Javantura v3 - The Internet of (Lego) Trains – Johan Janssen, Ingmar van der ...
Javantura v3 - The Internet of (Lego) Trains – Johan Janssen, Ingmar van der ...Javantura v3 - The Internet of (Lego) Trains – Johan Janssen, Ingmar van der ...
Javantura v3 - The Internet of (Lego) Trains – Johan Janssen, Ingmar van der ...
 
huawei-ce6851-48s6q-hi-b-brochure-datasheet.pdf
huawei-ce6851-48s6q-hi-b-brochure-datasheet.pdfhuawei-ce6851-48s6q-hi-b-brochure-datasheet.pdf
huawei-ce6851-48s6q-hi-b-brochure-datasheet.pdf
 
VYATTAによるマルチパスVPN接続手法
VYATTAによるマルチパスVPN接続手法VYATTAによるマルチパスVPN接続手法
VYATTAによるマルチパスVPN接続手法
 
huawei-ce6850-ei-b-b0a-brochure-datasheet.pdf
huawei-ce6850-ei-b-b0a-brochure-datasheet.pdfhuawei-ce6850-ei-b-b0a-brochure-datasheet.pdf
huawei-ce6850-ei-b-b0a-brochure-datasheet.pdf
 
SAS (Secure Active Switch)
SAS (Secure Active Switch)SAS (Secure Active Switch)
SAS (Secure Active Switch)
 
Edge-Core - экономия без потери качества | Семинар для интеграторов 15.06.17
Edge-Core - экономия без потери качества | Семинар для интеграторов 15.06.17Edge-Core - экономия без потери качества | Семинар для интеграторов 15.06.17
Edge-Core - экономия без потери качества | Семинар для интеграторов 15.06.17
 
huawei-ce6851-hi-f-b0a-brochure-datasheet.pdf
huawei-ce6851-hi-f-b0a-brochure-datasheet.pdfhuawei-ce6851-hi-f-b0a-brochure-datasheet.pdf
huawei-ce6851-hi-f-b0a-brochure-datasheet.pdf
 
Stress your DUT
Stress your DUTStress your DUT
Stress your DUT
 
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
PLNOG20 - Paweł Małachowski - Stress your DUT–wykorzystanie narzędzi open sou...
 
Nvidia in bioinformatics
Nvidia in bioinformaticsNvidia in bioinformatics
Nvidia in bioinformatics
 
SDN/OpenFlow #lspe
SDN/OpenFlow #lspeSDN/OpenFlow #lspe
SDN/OpenFlow #lspe
 
huawei-ce6850-48s4q-ei-brochure-datasheet.pdf
huawei-ce6850-48s4q-ei-brochure-datasheet.pdfhuawei-ce6850-48s4q-ei-brochure-datasheet.pdf
huawei-ce6850-48s4q-ei-brochure-datasheet.pdf
 
FPGA based 10G Performance Tester for HW OpenFlow Switch
FPGA based 10G Performance Tester for HW OpenFlow SwitchFPGA based 10G Performance Tester for HW OpenFlow Switch
FPGA based 10G Performance Tester for HW OpenFlow Switch
 
cisco-ie-2000-16tc-b-datasheet.pdf
cisco-ie-2000-16tc-b-datasheet.pdfcisco-ie-2000-16tc-b-datasheet.pdf
cisco-ie-2000-16tc-b-datasheet.pdf
 
huawei-ce6850-48s4q-ei-b-brochure-datasheet.pdf
huawei-ce6850-48s4q-ei-b-brochure-datasheet.pdfhuawei-ce6850-48s4q-ei-b-brochure-datasheet.pdf
huawei-ce6850-48s4q-ei-b-brochure-datasheet.pdf
 
huawei-ce7850-ei-b-b0a-brochure-datasheet.pdf
huawei-ce7850-ei-b-b0a-brochure-datasheet.pdfhuawei-ce7850-ei-b-b0a-brochure-datasheet.pdf
huawei-ce7850-ei-b-b0a-brochure-datasheet.pdf
 
huawei-ce6850u-48s6q-hi-brochure-datasheet.pdf
huawei-ce6850u-48s6q-hi-brochure-datasheet.pdfhuawei-ce6850u-48s6q-hi-brochure-datasheet.pdf
huawei-ce6850u-48s6q-hi-brochure-datasheet.pdf
 

Mehr von Johan Janssen

Mehr von Johan Janssen (15)

How and why to upgrade to java 16 or 17
How and why to upgrade to java 16 or 17How and why to upgrade to java 16 or 17
How and why to upgrade to java 16 or 17
 
Upgrade to java 16 or 17
Upgrade to java 16 or 17Upgrade to java 16 or 17
Upgrade to java 16 or 17
 
Continuous delivery in 50 minutes
Continuous delivery in 50 minutesContinuous delivery in 50 minutes
Continuous delivery in 50 minutes
 
Create a Continuous Delivery Pipeline in 45 minutes
Create a Continuous Delivery Pipeline in 45 minutesCreate a Continuous Delivery Pipeline in 45 minutes
Create a Continuous Delivery Pipeline in 45 minutes
 
DevNexus: Create a Continuous Delivery pipeline in 50 minutes
DevNexus: Create a Continuous Delivery pipeline in 50 minutesDevNexus: Create a Continuous Delivery pipeline in 50 minutes
DevNexus: Create a Continuous Delivery pipeline in 50 minutes
 
How we started our first java conference JVMCON
How we started our first java conference JVMCONHow we started our first java conference JVMCON
How we started our first java conference JVMCON
 
Use voice recognition with Alexa to control your home [JavaOne]
Use voice recognition with Alexa to control your home [JavaOne]Use voice recognition with Alexa to control your home [JavaOne]
Use voice recognition with Alexa to control your home [JavaOne]
 
Docker for Java developers at JavaLand
Docker for Java developers at JavaLandDocker for Java developers at JavaLand
Docker for Java developers at JavaLand
 
Welcome alexa, your personal assistant
Welcome alexa, your personal assistantWelcome alexa, your personal assistant
Welcome alexa, your personal assistant
 
A tour of (advanced) Akka features in 40 minutes
A tour of (advanced) Akka features in 40 minutesA tour of (advanced) Akka features in 40 minutes
A tour of (advanced) Akka features in 40 minutes
 
Beyond the basics of SonarQube: improve your Java(Script) code even further
Beyond the basics of SonarQube: improve your Java(Script) code even furtherBeyond the basics of SonarQube: improve your Java(Script) code even further
Beyond the basics of SonarQube: improve your Java(Script) code even further
 
Continuous delivery with docker
Continuous delivery with dockerContinuous delivery with docker
Continuous delivery with docker
 
JavaOne: Welcome alexa, your personal assistant [con1700]
JavaOne: Welcome alexa, your personal assistant [con1700]JavaOne: Welcome alexa, your personal assistant [con1700]
JavaOne: Welcome alexa, your personal assistant [con1700]
 
JavaOne: A tour of (advanced) akka features in 60 minutes [con1706]
JavaOne: A tour of (advanced) akka features in 60 minutes [con1706]JavaOne: A tour of (advanced) akka features in 60 minutes [con1706]
JavaOne: A tour of (advanced) akka features in 60 minutes [con1706]
 
Hide your development environment and application in a container
Hide your development environment and application in a containerHide your development environment and application in a container
Hide your development environment and application in a container
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Kürzlich hochgeladen (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

EuregJUG: Using actors for the internet of (lego) trains

Hinweis der Redaktion

  1. You can also make it a bit bigger with camera, RFID, speaker
  2. You could use a Zero or Particle Photon if you only need an IR transmitter. But for video it’s a bit more difficult to use those. Bigger is better for development speed. Smaller is better to put it in a train.
  3. This is the test setup for the performance test JVM1 is the frontend, receives http request from client JVM1 sends a request to JVM2 for some further info, after reply from JVM2 it responds to the client. Top is over HTTP Bottom is using Akka remote actors over TCP.
  4. Documentation Raspberry USB connector/burned Hardware resources To small children Time
  5. Limited resources although quite a lot with the Raspberry Pi. This HD only has 72 MB
  6. Broken Raspberry Pi USB connector on A+
  7. Lego quite picky with batteries, empty batteries. No easy/cheap way to charge Lego battery box.
  8. RFID only works when nearby and when moving slowly
  9. WIFI issues
  10. No plug and play
  11. Lots of options: Raspbian/Arch. Docker, documentation, support, hardware
  12. Documentation, wiring etc.
  13. To small children
  14. Not enough time
  15. Sum up Play with lego;s like kids Show and tells for grownups Testdrive akka, experience Come to Jfokus in beaty stockholm … That’s not even the best part. The best part is … Ervaring opgedaan met hardware/IoT Java en Scala/Akka werken blijkbaar prima - Marketing stands op conferenties Scala/Akka ervaring REST vs Remote Actors Ons hier gebracht