CxD Archive
Code: Internet of Things 2.0
Code: Internet of Things 2.0
  • Code Introduction
  • Prerequisite Knowledge
  • Tutorials
    • A. Meet Your IoT Kit
      • A-1 Circuit Board
      • A-2 Other Components
      • A-3 Electronic Circuits
    • B. Hello World Test
      • B-1 Start IoT Device
      • B-2 Login to Web IDE
      • B-3 New App Template
      • B-4 Global Variable
      • B-5 Setup Function
      • B-6 Loop Function
      • B-7 Flash App to Device
      • B-8 Modify App
    • C. Smart Light Device
      • C-1 Connect LED
      • C-2 Copy Hello World App
      • C-3 Connect Button
      • C-4 Add Button Code
      • C-5 Modify Button Code
      • C-6 Particle Cloud Code
      • C-7 Web App HTML
      • C-8 Web App CSS
      • C-9 Web App JS
    • D. Smart Security Device
      • D-1 Connect Motion Sensor
      • D-2 Connect Speaker
      • D-3 LED and Button Code
      • D-4 Motion Sensor Code
      • D-5 Speaker Code
      • D-6 Particle Cloud Code
      • D-7 Web App HTML
      • D-8 Web App CSS
      • D-9 Web App JS
  • References
    • Particle Build
    • Photon Device App
    • Web App - Single Screen
    • Web App - Multiple Screens
    • Particle Cloud
      • Web App Prep Steps
      • Get Device Variable
      • Call Device Function
      • Get Device Events
    • Physical Inputs
      • Push Buttons
      • Trimpot Dial
      • Motion Sensor
      • Magnetic Switch
      • Light Sensor
      • Temperature Sensor
      • Soil Moisture Sensor
      • Accelerometer
      • Ultrasonic Sensor *
    • Physical Outputs
      • LED Lights
      • Speaker
      • Servo Motor
      • Micro OLED Display
  • Links
    • IoT Project Guidebook
    • Particle Build (Web IDE)
    • Wiring Language
    • Photon Firmware
    • Particle API JS
    • W3Schools
    • Photon Kit Experiments
Powered by GitBook
On this page
  • Electric Circuits
  • Physical Computing
  • Arduino
  • Web Development
  • HTML
  • CSS
  • JavaScript (including jQuery)
Export as PDF

Prerequisite Knowledge

Electric Circuits

Having a basic conceptual understanding of electric circuits is very helpful, so students can better understand how to correctly connect the parts in their IoT electronics kit (and how to troubleshoot connection issues) – however, it is NOT required:

  • Atoms and Electrons

  • Static Electricity vs. Current Electricity

  • Conductors vs. Insulators

  • Closed Circuit vs. Open Circuit

  • Voltage, Current, and Resistance

  • Series Circuit vs. Parallel Circuit

Being able to solve quantitative equations involving circuits (Ohm's Law, etc.) is NOT required.

The IoT tutorials will provide a limited explanation of circuits, which should be sufficient for using the IoT kit to create devices.

Physical Computing

Previous experience building and programming devices using an Arduino electronics kit – such as a robotics kit, etc. – is very helpful. However, it is NOT required. The IoT tutorials will assume that students have no prior experience in building or programming physical computing devices.

Arduino

Previous experience and familiarity with the following Arduino development concepts is very helpful before programming IoT device apps – however, it is NOT required:

  • Variables – declaring data type (int, float, boolean, String, etc.) and name (unique identifier), assigning and changing values, converting data type, global vs. local scope

  • Program Functions – setup() function, loop() function, creating custom functions, calling a custom function, passing arguments into a function, returning value from a function

  • Input/Output Functions – such as: pinMode(), digitalRead(), digitalWrite(), analogRead(), analogWrite(), tone(), etc.

  • Libraries and Objects – including external library file in device app, constructing new object using defined class in library, using object properties and methods

  • Comparison Operators – such as: >, <, ==, !=, etc.

  • Logical Operators (NOT, AND, OR): !, &&, ||

  • Conditional Statements using if and else

  • Loops – such as: for, while, etc.

Web Development

Previous experience and familiarity with these web development concepts is highly recommended before programming IoT web apps – however, mastery is NOT required:

HTML

  • Tag syntax for common HTML elements – such as: <div>, <h1>, <h2>, <p>, <span>, <a>,<img>, <button>, <input>, <ul>, <li>, etc.

  • Nesting of HTML elements within other elements

  • Use of class and id attributes for HTML elements

  • Loading external files – such as: CSS style sheets, JavaScript files, images, other web pages, etc.

CSS

  • CSS selectors for HTML elements, classes, and ids

  • Common properties used in styles – such as: background-color, color, font-size, margin, padding, border, width, height, display, etc.

JavaScript (including jQuery)

  • Variables – declaring names (unique identifiers), assigning and changing values, data types (numbers, strings, boolean, etc.), global vs. local scope

  • Functions – creating functions, calling a function, passing arguments into a function, returning value from a function

  • Objects – constructing new object using defined class, using object properties and methods

  • Comparison Operators – such as: >, <, ==, !=, etc.

  • Logical Operators (NOT, AND, OR): !, &&, ||

  • Conditional Statements using if and else

  • Loops – such as: for, while, etc.

  • Events – such as: onclick, onchange, etc.

  • jQuery selectors for HTML elements, classes, and ids

  • jQuery syntax for basic functions – such as: .html(), .show(), .hide(), .addClass(), .removeClass(), etc.

PreviousCode IntroductionNextA. Meet Your IoT Kit

Last updated 2 years ago

Familiarity with these JavaScript concepts will make it easier for students to learn and apply similar concepts when programming their IoT device apps (using either the or programming language).

Wiring
Arduino