Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Google Beacon Platform, JavaScript Electronics & The Internet of Things

Google Beacon Platform, JavaScript Electronics & The Internet of Things

This presentation was given at GDG DevFest Nairobi, Strathmore University on the 14th January 2017. It covers Google Beacon Platform, Intel Architecture, JavaScript Electronics & The Internet of Things. More: https://medium.com/iot-5g-extreme-ideas-lab/iot-at-devfest-nairobi-8bf898cc4149#.94phcix8f

Ngesa Marvin

January 14, 2017
Tweet

More Decks by Ngesa Marvin

Other Decks in Technology

Transcript

  1. My last 4 years (or so) • IoT become a

    word • Open Source Electronics • Got an Edison board • Cellular tech, Antennas & Automation, Control systems • Started playing with Angular 2, Socket.io, Node Js, & Jonny 5 • Firebase, HTML5 & Bootstrap 8
  2. • Bits and Volts • Analogue Inputs/Outputs • Digital Inputs/Outputs

    • Pulse Width Modulation • Hardware Interfacing
  3. Arduino 101 Arduino 101 Runs Arduino Firmata and RTOS Zephyr

    Computing cores • 32-bit x86 core, Intel Quark SE SoC (Curie) 32Mhz • ARC core (DSP + sensor hub) Storage/memory • 196 kB flash memory • 24 kB SRAM Operating voltage • 3.3V (5V tolerant) operating voltage Input/output • I2C master • SPI • UART • 6 ADC pins • 4x PWM capable I/O pins • 14 GPIO (4 PWM capable) pins Communication/sensor • Bluetooth LE • 6-axis Accelerometer/gyroscope Price: ~30$
  4. Quark™ MDK D2000 Quark™ Microcontroller Developer Kit D2000 Runs proprietary

    RTOS and RTOS Zephyr Computing cores • 32-bit Intel Quark D2000 SoC 32Mhz (with low-power mode) Storage/memory • 32KB flash memory • 8KB OTP flash • 4KB data flash • 8KB SRAM Operating voltage • 2.0V-3.3V operating voltage (can function at 1.8V without comparator support) • Fits coin cells of 2.0V-3.6V, or regulated 2.5V-5V Input/output • USB 2.0 Type Micro-B • I2C master • SPI master/slave • UART • 19 ADC/Comparator pins • 2 PWM pins • 25 GPIO pins Sensors • Accelerometer/Magnetometer Price: ~15$
  5. Intel Edison Module Edison Compute Module + Arduino Board /

    Mini Breakout Board Runs Ostro OS and Google Brillo, Linux based operating systems. Computing cores • Dual-core 32-bit Intel Atom x86 core 500Mhz • 32-bit Intel Quark SoC 100Mhz Storage/memory • 4 GB flash memory + microSD on Arduino board • 1 GB DDR memory Operating voltage • 1.8V for compute module and mini breakout board • 3.3V (5V tolerant) operating voltage Input/output (for Arduino board) • USB 2.0 - 1 OTG Controller • I2C master (2 controllers) • SPI • UART (2 Controllers: 1 full flow control, 1 RX/TX) Price: ~50$ (Compute module), ~60$ (incl. Mini breakout board), ~90$ (incl. Arduino Board)
  6. Intel Edison Module Input/output (for Arduino board) • USB 2.0

    - 1 OTG Controller • I2C master (2 controllers) • SPI • UART (2 Controllers: 1 full flow control, 1 RX/TX) • 6 ADC pins • 20 GPIO (4 PWM capable) pins Communication • Full Bluetooth 4.0 support • Integrated Wi-Fi certified in 68 countries Price: ~50$ (Compute module), ~60$ (incl. Mini breakout board), ~90$ (incl. Arduino Board)
  7. 25

  8. 26

  9. With multiple smart objects around us, installing an app for

    each doesn't scale And how to discover objects close by, without being buzzed at and annoyed? 28
  10. Other Beacon Protocols Beacon • iBeacon • Estimote Connectivity •

    Estimote Location • Estimote Telemetry • Nearable
  11. 36 • Beacon technology based on BLE and the Eddystone

    protocol • Allows for discovering objects in the proximity, represented by URLs (Physical Web) • Users have to ask to see objects to avoid pestering people • Secure (no tracking) as URLs are processed via a proxy; HTTPS only • Fully open design; for instance supported by Opera which operates their own proxy Eddystone and Physical Web is a great solution
  12. 37 Allows for finding objects and services around you Supported

    by Chrome (iOS and Android) and Opera And it is in use today!
  13. 46 Already, 53% of mobile developers are involved in IoT

    development (VisionMobile) Majority of these have no embedded background, and are not used to C, manual memory management, etc. How do we give them the tools these smart people need JavaScript looks like a nice candidate Mobile Developers will do IoT
  14. 47 Why [not] Node? • Fast, very fast • Consistent

    • Asynchronous • Event-based • Scalable • Top 1 language in the world • Large Community JavaScript looks like a nice candidate
  15. 53

  16. 55 Demo Time: Let’s try it live! KENYA Hardware Required

    Edison Board/Arduino 6 LEDs 6 220 ohm resistors hook-up wires breadboard
  17. Libmraa Defines the capabilities of GPIO pins, Autodetection of Gen

    1, Gen 2 and Edison Arduino boards Libupm Defines the interaction of high level sensors. Buttons, Buzzers, LCD, LED, Light Sensor, Servos, Rotary Angle Sensor, Relays, Sound Sensors, temperature sensors … more are added continually. Purpose of Each Library
  18. 66 IoT GDE RESOURCES For more demos and articles Article

    on Google's developer site: https://developers.google.com/web/updates/2016/03/web-enabled-internet-of- things?hl=en https://medium.com/@urish @kennethrohde
  19. Frontend Gateway Wireless Networks Cloud Socket.iO Angular 2 Message Queue

    Stream Processing Time Series Database Firebase Pub/Sub Dataflow Big Table
  20. 76 What next? • Improve the algorithm • Add more

    sensors • Give it a goal • Give it personality • Make the hardware better (Better chassis, stronger motors, etc)