Creating an IoT Solution

6.1 Become a Global Problem Solver

6.1.1 Solving Global Problems

  • Global Problems: Include burning fossil fuels, air pollution, acidic oceans, climate change, poverty, hunger, disease, gender inequality, and access to water and sanitation.
  • Organizations Doing Global Good: Some companies and organizations provide funds to help solve these global problems, such as the Bill & Melinda Gates Foundation and The Musk Foundation.
  • The Millennium Development Goals (MDGs):
    • In 2000, leaders from 189 countries made a list of 8 goals to be achieved in 15 years.
    • These were called the Millennium Development Goals (MDGs).
    • The United Nations Development Programme (UNDP) is working on fulfilling these goals.
  • Progress on MDGs:
    • The percentage of people living on less than 1.251.25 per day has dropped by more than half.
    • The number of young children attending school is up by almost half.
    • The number of people receiving HIV treatment has increased by over 15 times.
    • The child mortality rate has been lowered by almost half.

Solving Global Problems (Cont.)

  • The Sustainable Development Goals (SDGs):
    • In 2015, 189 world leaders at the United Nations Sustainable Development Summit unanimously adopted the 2030 Agenda for Sustainable Development.
    • The result was a set of 17 Sustainable Development Goals (SDGs).
    • These SDGs go much further than the MDGs, addressing the root causes of poverty and the universal need for development that works for all people.

6.1.2 Globally Transformative Breakthrough Technologies

  • Lawrence Berkeley National Lab (LBNL):
    • The Institute of Globally Transformative Technologies (LIGTT) (pronounced ‘light’) is part of LBNL and was created in 2012.
    • The goal of LIGTT is to leverage LBNL’s resources to develop and deploy breakthrough technologies for sustainable global development.
  • Institute of Globally Transformative Technologies:
    • The LIGTT released a top "50 Breakthroughs" study in 2014.
    • It identified some of the most important breakthrough technologies that are required for sustainable global development.
    • LIGTT aims to develop many of these breakthroughs, which will make substantial impacts on poverty.
    • Breakthrough #42 is directly related to using the IoT to enable new services.

6.2 Designing a Solution

6.2.1 Designing Solutions

  • The Engineering Design Process:
    • The engineering design process is a proven method to help solve global challenges.
    • The five steps are cyclical, meaning they can be repeated to improve the design process.
    • The steps include: Inspire/Empathize, Define/Ideate, Prototype, Test/Refine, and Present/Communicate.

6.2.1 Designing Solutions (Cont.)

  • Security Design:
    • Security should be included from the beginning, in the design phase.
    • Ensure new devices facilitate software updates, and all hidden backdoors are removed.
    • On pre-manufactured devices used in projects, ensure the following:
      • Default passwords/usernames are changed.
      • UPnP is disabled on IoT devices if possible.
      • Remote device management is protected with strong passwords, and access is limited to trusted personnel.
      • Ensure all devices are updated with the latest software updates and patches.
      • Ensure all devices support and use encryption and certificates.
      • Secure the physical location of IoT devices as much as possible.

6.3 Create an IoT System

6.3.1 The IoT System Project

  • Project Overview:
    • Identify a problem that can be solved by an IoT device.
    • Example: Building a device that senses the amount of light and determines sunrise and sunset.
  • The Circuit Layout:
    • Electronic components have specific power, polarity, and connection requirements.
    • The circuit layout identifies/describes these requirements.
    • The sunrise/sunset example requires a voltage divider, which produces an output voltage that is a fraction of its input voltage by distributing the input voltage among the components of the divider.

6.3.1 The IoT System Project (cont’d)

  • REST API in an IoT System:
    • REST APIs use HTTP methods to exchange data between systems or applications.
    • RESTful systems use Uniform Resource Identifiers (URIs) to represent their services to external systems.
    • Sample URIs:
      • GET /people/michael to receive Michael's user profile dataset.
      • POST /people/michael to update Michael's profile with new data.
    • The IFTTT web service allows for special resource URIs to be created and mapped to specific IFTTT actions.
    • Example IFTTT URI: https://maker.ifttt.com/trigger/SunRise/with/key/.
    • The sunrise/sunset example uses both IFTTT and Google Calendar services.

6.3.1 The IoT System Project (cont’d)

  • Flowcharts, Electronic Schematics, and Sequence Diagrams:
    • Documenting the project is very important for building the devices, testing, troubleshooting, and creating a business model.
    • Flowcharts use standardized symbols to represent the processes and workflows.
    • Electronic schematics are a graphical representation of a circuit diagram using internationally standardized components.
    • Sequence diagrams represent interactions between entities along a timeline.

6.3.1 The IoT System Project (cont’d)

  • The Code:
    • The sunrise/sunset example is written in Python using a Raspberry Pi.
    • The Arduino is connected to the Raspberry Pi.
    • Programming is done on the Raspberry Pi to send the level of voltage drop from the Arduino to the RaPi.
    • Firmata, a generic protocol for communicating with microcontrollers, is used to communicate between the Arduino firmware and the RaPi.
    • The Python code used for the sunrise/sunset example is explained line by line.

6.3.2 The IoT System Prototype

  • Overview of the Problem:
    • A simple problem identified that can be solved by an IoT system: remote access to determine if a garage door is open or closed.
      • A switch can determine if a door is open or closed.
      • The switch attaches to a controller, which keeps track of the switch status.
      • The controller is connected to the Internet to provide remote access.
  • Prototyping and Testing System:
    • Create an electronic schematic, flowchart, and sequence diagram for the prototype.
    • Packet Tracer 7 is used to create and test the prototype.
    • Update documentation once the prototype works successfully.
    • Documenting is important not only for future reference but also for situations where marketing material or patent applications are to be created.

6.4 The Business Aspects

6.4.1 Business Model Canvas

  • Business Model Canvas Overview:
    • Helps organizations and entrepreneurs map, discuss, design, and invent new business models.
    • A business model consists of nine building blocks:
      • Customer Segments, Value Proposition, Channels, Customer Relationships, Revenue Stream, Key Resources, Key Activities, Key Partnerships, and Cost Structure.
  • Customer Interface:
    • Customer Interface is comprised of Customer Segments, Value Proposition, Channels, and Customer Relationships.
  • Infrastructure Management:
    • Defines how to build the value proposition.
    • Key Resources, Key Activities, and Key Partnerships make up the Infrastructure Management.

6.4.1 Business Model Canvas (Cont.)

  • Business Finances:
    • Include the cost structure and revenue streams created by the value proposition.
  • Business Model Canvas Example:
    • Example of a completed business model canvas for a custom computer manufacturer.

6.5 What is Next?

6.5.1 Lifelong Learning

  • 21st Century Skills:
    • The 21st-century job market is looking for employees who can accomplish one or more job roles, such as designing a project, prototyping a device, creating and maintaining documentation, and creating a business plan.
  • IoT employees also need learning and innovation skills:
    • Creativity and innovation
    • Critical thinking and problem-solving
    • Communication
    • Collaboration

6.5.1 Lifelong Learning (cont’d)

  • Resources for Continued Learning:
    • There are many resources available to enable you to continue learning about the IoT, including:
      • Cisco Networking Academy
      • Cisco Learning Network
      • Cisco DevNet
      • IEEE Computer Society (IEEE-CS) and the Association for Computing Machinery (ACM)
      • Many other online resources, including forums, wikis, blogs, and more.
      • There are also IoT communities of practice consisting of other like-minded individuals who want to share ideas with others.

6.6 Chapter Summary

  • There are many global social and environmental problems that can be solved by IoT systems. The Institute for Globally Transformative Technologies (LIGTT) has compiled a list of 50 breakthrough technologies that will drastically improve the work on these global problems.
  • The Engineering Design Process is a proven method to develop a product.
  • The first step to design an IoT solution is to identify a problem that can be solved with an IoT device. To test the idea, a prototype could be built simply by using a Raspberry Pi with an attached Arduino. To provide an example, a sunrise/sunset tracker was built.
  • Another prototype was designed on Packet Tracer to remotely check to see if the garage door was open or closed.
  • Documentation is a very important component of any project. Flowcharts, Electronic Schematics, and sequence diagrams are often used to provide documentation.
  • The Business Model Canvas helps organizations and entrepreneurs map, discuss, design, and invent new business models based on a value proposition, customer interface, infrastructure management, and finances.
  • IoT professionals should be individuals who espouse life-long learning. They need to be flexible, take the initiative, lead when necessary, and be able to produce something new and useful.