Save 37% off PRO during our Black Friday Sale! »

Prototyping IOT with JavaScript

Prototyping IOT with JavaScript

Prototyping IoT devices is something that you may believe requires specialized skills in electrical engineering, embedded development, and mechanical engineering. Not so fast! Lance Gleason says that, thanks to the maker revolution, we can combine our deep knowledge of programming with access to a 3D printer and some basic electronics/soldering skills to create valuable prototypes. More importantly, there are now boards that give Javascript developers the ability to interact with them without requiring custom Bluetooth drivers and writing firmware. Join Lance for a quick tour of IoT prototyping options and then take a deep dive into how you can create a prototype, writing only Javascript code with devices such as the MbientLab MetaWear and Arduinos. This will be a hands-on session with live demos where you will see how to get started with these boards—and have some fun along the way. See how easy it can be to play with IoT and start to p rototype your ideas!

89e0c5e7bfe1c613b1b9287d89963e73?s=128

Lance Gleason

October 26, 2016
Tweet

Transcript

  1. Introductions

  2. Twitter @lgleasain Github lgleasain www.lancegleason.com www.polyglotprogrammincinc.com lgleason@polyglotprogramminginc.com

  3. @PolyglotProgram @lgleasain @PurrProgramming

  4. None
  5. None
  6. None
  7. None
  8. http://www.polyglotprogramminginc.com/purr- programming-2-0/

  9. None
  10. None
  11. None
  12. None
  13. None
  14. None
  15. None
  16. None
  17. Software

  18. None
  19. Options

  20. None
  21. Features • Bluetooth Support • Robust API for Android and

    IOS • Built in Sensors (temperature, accelerometer etc.) • Built in support for rechargeable batteries
  22. Specs • Nordic Semiconductor nRF51822 BLE SoC • 2.4 GHz

    transceiver • ARM®Cortex™-M0 32 bit processor • 256 kB flash program memory • 16 kB RAM • 8/9/10 bit ADC
  23. Specs Continued • Accelerometer • Temperature Sensor • Push Button

    Switch • Bright LED • Driver for vibration motor • micro usb chargable • I2C bus, and support for 4 digital/analog and 4 digital pins
  24. None
  25. None
  26. None
  27. None
  28. ESP8266 • Python, JavaScript, Arduino (C++), Nodemcu (Lua) • 128

    Kb RAM • 4 mb SSD • 802.11 b/g/n WIFI • 32 bit 80-160 MHZ single core RISC processor • 16 GPIO pins • SPI, I2C, I2S support • UART • 1 10-bit ADC • 3.3 V DC
  29. None
  30. ESP32 • Python, JavaScript, Arduino (C++), Nodemcu (Lua) • 520

    Kb RAM • Bluetooth 4.2 support • 802.11 b/g/n/e/i WIFI • 32 bit 160-240 MHZ dual core RISC processor • lots of GPIO pins • SPI, I2C, I2S support • UART • 1 10-bit ADC • 3.3 V DC • and much more
  31. ESPRUINO

  32. None
  33. None
  34. Arduino • Arduino (C++), Firmata • 0.5 - 32 Kb

    RAM • Bluetooth 4.2 support (101 only) • 8-48 MHZ processors (mostly ATmega) • 3-54 I/O pins • 3.3 or 5V DC (depending on the model) • and much more
  35. Firmata

  36. None
  37. Micro Controller vs Microprocessor

  38. None
  39. Raspberry Pi Zero • Linux, Android • 512 Mb RAM

    • 1 Ghz Single Core BCM2835 • 26 GPIO Pins • Camera support • HDMI • Micro SD slot • 3.3 V DC • and much more
  40. None
  41. Raspberry Pi 3 • Linux, Android and Windows 10 Support

    • 1 GB RAM • 1.2 Ghz Quad Core BCM2837 • 26 GPIO Pins • Camera support • HDMI • Micro SD slot • 3.3 V DC • and much more
  42. None
  43. None
  44. @PolyglotProgram @lgleasain @PurrProgramming

  45. None
  46. MetaWear https://mbientlab.com/ https://github.com/mbientlab-projects/MetaWearCordova-Plugin NodeMCU ESP8266 nodemcu.com http://www.espruino.com/ Johnny-Five/Firmata http://johnny-five.io/ https://www.arduino.cc/en/Reference/Firmata

    https://github.com/ajfisher/node-pixel Raspberry Pi https://www.raspberrypi.org/ https://learn.adafruit.com/neopixels-on-raspberry-pi/overview Buying NeoPixels/WS2812 (search for ws2812) www.ebay.com www.banggood.com www.amazon.com
  47. Twitter @lgleasain Github lgleasain www.lancegleason.com www.polyglotprogrammincinc.com lgleason@polyglotprogramminginc.com