IoT Rant.

By Jeremy Ellis the maker of http://rocksetta.com
Twitter @rocksetta
Jan 23, 2015
The youtube video is at http://youtu.be/1ZYcCXPAMPo

The Internet of Things is mainly about:

Hardware such as: Microcontrollers --> Sensors --> Actuator (motors)

Software: such as CRobot, NodeJS, Java, Javascript (Yes the last two are very different)

People: Lots of different brands to choose from.

The Hardware and Software tends to be difficult, but every once in a while a new product comes along and makes it much easier.
  1. From a software point of view: Adobe-Phonegap is awesome. The open source version is called http://cordova.apache.org/
    Phonegap lets us take easy web pages and turn theminto Mobile Apps!

    Smart phones have sensors and allow voice and video communication, as well as a wealth of other sensors.
    z-device of smart phone
    Above image from z-device for android https://play.google.com/store/apps/details?id=zausan.zdevicetest&hl=en

    Phonegap allows any web page designer to control all these features and make Mobile APPs for most platforms: Android, iPhone, Win8 etc. Basically if your .html webpage works on Google Chrome then it can be made into a Mobile App!

    The Phonegap Developer App even gets around Apples ridiculous $100 a year fee to tryout your iOS apps.




  2. Here is a video I made about teaching Phonegap using cloud9 and the phonegap developer app



    Heres the connected github site
    https://github.com/hpssjellis/pgb-cloud9



    What about microcontrollers?


    1. Arduino. The ultimate Makers powerhouse
    2. http://www.arduino.cc/



    3. Raspberry Pi. Kind of a Linux computer on a circuit board
    4. http://www.raspberrypi.org/



    5. There is also Mindstorms, which are very expensive, cool and simple, but really expensive. Presently the EV3 can be hooked up to bluetooth, but not yet the internet.
    6. http://www.lego.com/en-us/mindstorms/?domainredir=mindstorms.lego.com

      Other things in this zone are Hummingbird and VexIQ



    7. But now there's Spark.io
    8. http://www.spark.io



    9. So how long until Google makes everything about IoT easy?




    10. If you really must learn about sensors and actuators, Snap Circuits is a nice situation to get started. Nice that it is powered by 2 AA batteries, causing a voltage that is the same as the 3.3 volts of the Spark Core. Then we just have to look at the total voltage and the total current going through Snap switches. If the current is about 20mA then we can replace the Snap switch with a Spark Core.
    11. http://www.snapcircuits.net/products/product_sub/base_models=OTY=



      But the Spark website is not perfect, it has Issues making things very difficult to learn

    12. For starters the wild explanation diagram at http://docs.spark.io/assets/images/spark-pinout.png
      Here is An easier version
      easier spark core diagram



    13. Generally the spark works great once wifi is setup using the easy Spark Android or iOS App
      https://play.google.com/store/apps/details?id=io.spark.core.android&hl=en



    14. Connecting the spark over USB. You install that windows driver!
      http://docs.spark.io/connect/#connecting-your-core-connect-over-usb



    15. Connecting the spark over DFU. Yeh this is really easy. NOT!
      http://docs.spark.io/connect/#appendix-dfu-mode-device-firmware-upgrade

      Here is a github site that I am working on to make this much easier on windows using batch files. Not sure if I will finish it, I may just give up and wait for Google to solve all the problems
      https://github.com/hpssjellis/dfu-util-windows-spark-core-photon



    16. What about Tinker. Lets use up all 4 possible functions!
      http://docs.spark.io/tinker/#tinkering-with-tinker-using-tinker-with-your-code



    17. What about the Core Code Firmware Documentation? It is very good, except I haven't got the spark.variables working. Limit 10 variables! Max 12 characters!
      http://docs.spark.io/firmware/#spark-variable



    18. What about Sensor and Actuators. SeedStudio has been amazing for the Arduino and Raspberry Pi Sensors. But this is a serial connection. http://www.seeedstudio.com/wiki/index.php?title=Main_Page#Product



    19. There's even a Grove starter kit
    20. http://www.seeedstudio.com/depot/Grove-Starter-Kit-V3-p-1855.html



    21. And Spark has a shield that connects to the cool Grove system, But.....
      https://s3.amazonaws.com/spark-website/Grovesized.jpg



    22. You would think the community would be helpful but..
      http://community.spark.io/



    23. Or Example Projects ...
      http://spark.hackster.io/



    24. Even breadboards are confusing. A google search shows about 80% of bread boards use blue lines for ground, which is almost always a black wire. Go figure.
      breadboard blue line for ground
      Even http://fritzing.org/home/ defaults to a blue line on the bread board. However my diagram of the spark core didn't for some reason.
      fritzing example























    With all these issues why is the Spark Core or Photon so cool?
    Because it is cheap and it works out of the box over wifi!
    Has a great IDE (Online Integrated Development Environment) to flash code to your spark device.
    Works from a simple web page

    1. Lets check the Docs again
    2. http://docs.spark.io/examples/







      Let's prove the Spark Core works.

    3. Simple Code flashed to the core




    4. A web page on my computer or Smart Phone




    5. That page looks like


      Online Spark Core




      Note: This web form shows your Cored-ID and Access_Token. Do not put it on the internet!
      For a safer version of this page using local Storage checkout the github site at https://github.com/hpssjellis/spark-core-web-page-html-control



    6. Click the button and the Light goes on for almost a second. Not the worlds best code, but it works




    7. Let's make something else. The spark has a starter kit. But that is too confusing.
    8. http://docs.spark.io/shields/#spark-maker-kit Spark Core Starter kit



      We need IoT ready devices! A black cable for ground and a yellow cable for spark control using either Digital or Analog Pins.

      Here is a suggested logo for IoT ready devices. Maybe we can all just wait for Google to take it over.
      Original IoT Ready Diagram
      That's one really ugly logo. I think someone artistic should have a look at that.
      Here is my second attempt
      iot ready version 2



    9. Even an LED can be confusing. Do you need a resistor or not. Why not just make a kit with yellow wires for Spark connections and black for ground. Hardware that is preset for low milliAmps and 3.3 Volts
    10. Iot ready LED



    11. Anyone familliar with Arduino's will think it is crazy not teaching all this hardware basics, but software used to be done with Machine code, and Assembly language, some people still do!

    12. binary data



      Assembly Language



    13. A Light Sensor, a voltage divider with the photoresistor connected to the Positive 3.3 Volts
    14. IoT ready light sensor

      A Dark sensor, a voltage divider with the photoresistor connected to ground
      IoT ready dark sensor



    15. Spark has a relay shield so I can connect 120 volts!!!!. That's just plain dangerous.
      http://docs.spark.io/shields/#relay-shield



    16. An Electrical Powerbar
    17. IoT ready powerbar
      Update Feb 25, 2015.
      Just found these ready made 120 Volt sockets, kind of a spark device controllable small extension cord. The Power Switch Tail
      spark controllable extension cord http://www.powerswitchtail.com/Pages/default.aspx also check out the dimmer switch http://www.powerswitchtail.com/Pages/PowerSSRTail.aspx


    18. A coffee Machine
    19. IoT ready Coffee Maker



    20. What about a servo motor? Don't let the Spark Core deal with the higher voltage. Keep it separate.
    21. IoT ready Servo



    22. How about something fun. An online whoopee cushion
      See the github site below for the code
    23. https://github.com/hpssjellis/online-whoppi-cushion
      IoT ready whoopee Cushion



      The Internet of things is ready to make a huge splash for the general population

      Do we have to wait for Google to make it all really easy, or will some other entrepreneur(s) take up the challenge and make Spark (or something else) ready devices.
      Update: Looks like Samsung is entering into the Internet of Things.

      Here is a better version of the spark core web page control on youtube



      And it's connected github site https://github.com/hpssjellis/spark-core-web-page-html-control



      Note: This page is the opinions of Jeremy Ellis who only just found out about the Spark Core in early Dec 2014. This page will probably be out of date shortly after making it.



      By Jeremy Ellis the maker of http://rocksetta.com
      Twitter @rocksetta
      Jan 23, 2015