#techBDV21
and collect printed photos at Jepret Allegra booth
FullStack
Internet of Things
Development
Disclaimer
It’s technical Talk,
Sorry if you can’t catch up :)
Andri Yadi
@andri_yadi | a at dycode dot com
http://andriyadi.me | http://dycodex.com
CEO of DycodeX
IoT & disruptive technologies enabler
for more enjoyable life.
DycodeX, by DyCode
8 years in a row
What is it, really?
Image source: https://www.youtube.com/watch?v=KflfJwXncy8
“Network-connected devices with
embedded processing power„
Internet of Things
*Microsoft’s definition of IoT
Connectivity Data AnalyticsThings
Internet of Things
internet
Cloud
Mobile/web app
internet
IoT Typical Architecture
Things
Things
IoT Typical Archiecture
Protocol

(over internet)
Ingestion Analytics
Storage Visualization
Device
Management
API
Cloud
Message
Broker
Mobile Apps
3rd party
systems
Microcontroller
Radio Transceiver/
Network Interface
Sensor/Actuator
Circuitry
Energy Source
A Thing
When we’re talking about full stack/
end-to-end IoT Development…
So…
…we’re talking about developing for:
Things, Cloud, Mobile
as developer…
Image source: https://www.entrepreneur.com/article/241644
Developer Skillset
Thing side Backend side Mobile side
[Obj-C]
Let’s start
Thing’s side
ESP8266Arduino nRF BLE
EspruinoParticle.io

Photon, Electron
Arduino 101
Indonesia-made

Bluino
Nucleo

mbed
Raspberry Pi
and many

more…
Choose Dev Board
Choose Dev Platform
COSA Teensy
and many

more…Sming
Choose Dev Tool/Ide
Disclaimer
Let’s focus to ESP8266
Do you still use ESP8266 this way?
While nothing wrong with that, but you can program ESP8266 directly. 

Without the Arduino board!
CPU: Tensilca Xtensa LX3: 32-bit, 80 MHz
3.3V operating voltage
ESP8266 SOC: Expressif
RAM: 32Kb, DRAM 80Kb
External Flash: 512KB to 16MB
WiFi (802.11): b/g/n/d/e/i/k/r
Peripherals: 16 GPIOs, 3 PWM, 1 ADC, I2S,
UART, SPI, I2C
ESP8266 Specs
ESP-01
ESP-12
ESP-12E ESP-14 ESP-WROOM-02
ESP-07
ESP-13
ESP8266 Family
Choose ESP8266 Framework
Sming
NONOS RTOS
Choose Dev Tool/IDE
Did I mention it’s only
$2
ESP8266 Dev Board
OlimexNodeMCU ESPino Thing Dev ESPresso
Digistump Oak Wemos D1 Mini Witty
and

more…
Today, we use…
DycodeX ESP8266 Dev Board v0.5
Based on ESP-12E
Breadboard-friendly
8 channels GPIO Extender
On-board additional SPI RAM 128 KB
On-board additional ADC 12-bit 8 channels
User-programmable LED & RGB LED, and button
Reset & Flash buttons
Automatic program upload
SPIs, I2Cs breakout
Supports I2C or SPI-based display
DycodeX ESP8266 Dev Board v0.5
Demo
Let there be a light…
Cloud side
Cloud Platform
Azure

IoT Hub
and a whole lot more…
Designed for IoT
Connectivity, Security & Management for billions of devices
Service Assisted Communications
Devices are not servers
Use IoT Hub to enable secure bi-directional communications
Cloud Scale Messaging
Device-to-cloud and Cloud-to-device
Durable message inbox/outbox per device
Monitor Devices
Delivery receipts, expired messages
Device communication errors
Per-Device Authentication
Individual device identities and credentials
Connection Multiplexing
Single device-cloud connection for all communications
(device-to-cloud, cloud-to-device)
Multi-Protocol
Natively supports AMQPS, HTTPS, MQTT
Extensible protocol support for custom protocol needs
Multi-Platform
Device SDKs available for multiple platforms: RTOS, Linux, Windows,
iOS, Android
Service SDK supports multiple languages (Node, Java, C#)
Azure IoT Hub
• Blog article: http://aka.ms/azureiotdevintro
• Azure IoT dev center: http://aka.ms/azureiotdev
• GitHub repo: http://github.com/azure/azure-iot-sdks
• Watch Build 2016 videos on Channel 9
More about Azure IoT Hub
ESP8266
Today, we use…
Dycodex’s iothub.id Cloud
We’ve been using it internally, heavily during learning & prototyping. 

Then we decided to make it available for everyone.
Demo
How hot is it here?
internet
iothub.id
Cloud
Web app
internet
Demo Architecture
ESP8266 

+ BMP180
Temperature
Reading
BMP180
Demo
Hey Siri…
Cloud
iOS
internet
Demo Architecture
HomeKit

Accessory

(ESP8266-based)
internet
WiFi
Hub

(Raspberry Pi-based)
WiFi
How to start?
for developers
Solve your own problem
Start with…
Join Communities
Learn to code
What do you need
Developer Skillset
Electronics side Backend side Mobile side
[Obj-C]
Learn Basic Electronics

especially digital electronics
What do you need
Use dev boards
Use Ready-to-use Cloud
Explore The Real World
techs
IoT 3G or WiFinot only
Communication
Source: http://postscapes.com/internet-of-things-technologies
LoRa
Cloud
3G/4G/WiFi/

Ethernet
Internet
Sensor nodes:

15-20km range, 10 years of battery life, small form factor
Sensor
Radio
Transceiver
Microcontroller

(ESP8266)
Energy

Source
Sensor
Radio
Transceiver
Microcontroller

(ESP8266)
Energy

Source
MQTT

(internet)
Node
Azure IoT Hub
Node
Node
Gateway
Radio
Transceiver
WiFi
Raspberry Pi 2 Battery
Long Range

(radio)
Sensor
Radio
Transceiver
Microcontroller

(ESP8266)
Energy

Source
LoRa Use Case
IoT ≠ HTTP
Protocol
CoAP
Challenge & Expo
Next Year!
Join
v1.0 just finished on early June 2016
Join Our Classes…
+
Please keep checking

our website

http://edu.dycode.co.id
+ + [Obj-C]
+
Join Our Classes…
http://edu.dycode.co.id/ios/
IoT development will breed A new type of engineer,
expert in electronics Engineering while fluent in
software development
I believe…
DycodeX IS HIRING!
Interns are welcome
x@dycode.com | http://dycodex.com
• IoT communities on Facebook: 

IoT Geek Surabaya, IoT for Bandung, Arduino
Indonesia, Raspberry Indonesia, IoT Indonesia,
Indonesia IoT Connect, ESP8266 Indonesia
• Connect your things: http://iothub.id
• Professional training: http://edu.dycode.co.id
• DycodeX’s IoT products: http://dycodex.com
Call to Action
Thanks!
Andri Yadi
Email — a at dycode dot com

twitter — @andri_yadi
www — andriyadi.me 

github — github.com/andriyadi

Fullstack IoT Development