Wilson Mar bio photo

Wilson Mar

Hello. Hire me!

Email me Calendar Skype call 310 320-7878

LinkedIn Twitter Gitter Google+ Youtube

Github Stackoverflow Pinterest

How to enable people to make money and satisfied customers with IoT


Overview

Useful tools, not just toys and games

MORE FEATURES OF LESS STRESS

What train people to build things that help others save time and money, safely.

The unique aspect of our curriculum is that you create complete products consumers buy to plug in and simply work for them.

We provide all that you need. Instructions. Equipment. Quality controls.

Rather than starting by messing with toys and games, we connect to enterprise clouds in a secure way.

Start from examples, not blank stares

Rather than starting by memorizing code from scratch, you run pre-programmed automation scripts that perform the steps, then make changes to see the impact and troubleshoot. This is what happens on real jobs, which is the purpose of this curriculum.

NOTE: Even though all manual steps are specified in training materials, participants experienced with Linux commands and programming experience will have an easier time than those who do not.

Hands-on step-by-step training

Curriculum materials include step-by-step tutorial guidebooks with pro tips, quizzes, and video diagrams.

Among the steps, we instill habits for good safety and vigilent security necessary at today’s enterprises.

Reliable products, not elegant code

Testing for reliability and adequate performance is emphasized here over tricky algorithms not used.

Programming of Python code, shell scripts, and JavaScript with Node is learned by examining examples and discussion about automated code checking rules. This is how professional programmers work.

Quality assurance is an integral part of the curriculum, to ensure that everything just works for the consumer.

Customer training and service

A key differentiator with our school is that students are trained to explain to customers in plain language how to use products constructed.

We also ensure that our graduates apply the latest techniques for excellent customer service and fast turnaround. That includes training in effective use of social media.

Products and Curriculum

In the class, each learner is provided with everything except a laptop: a Raspberry Pi 3 B board with power adapter and two 32 GB class 10 SD chips. A router is available during classes.

PRODUCT 1 - Configured SD cards

MAKE FOR SALE: A SD card to run your Raspberry Pi customized with the utilities and applications you need (and without junk you don’t). Just select what you want on our one-page webite and our automated script builds it for you. In addition to the latest operating system (Raspbian Jessie), available are self-running diagnistics and libraries for running programs using Linux Bash, Python, Node, Mono, and other utilities. Two cards in case one goes bad.

iot sd card compared 650x366-186kb

  1. Obtain the latest Raspbian operating system
  2. Choose an SD card to purchase
  3. Handle electronics with less risk of static electricity damage
  4. Flash the SD card with the latest Raspbian operating system
  5. SSH into a Pi without additional monitor and keyboard
  6. Configure Wi-Fi credentials
  7. Configure bootstrap script to install Ansible and utilities
  8. Install and use Git to obtain files from GitHub online
  9. Configure Ansible yml file to load and configure apps
  10. Transfer files into Pi using Secure FTP clients
  11. Configure USB chip to mount automatically
  12. Backup configuration changes people can buy to avoid the hassle above
  13. Check product operation and package safely for shipment
  14. Train users/customers

PRODUCT 2 - Custom enclosures

MAKE FOR SALE: A custom-made enclosure for a Raspberry Pi with cooling fan, on/off switch, and additional board for long-range communications using cell phone signals, Zigbee, or other advanced board.

iot raspberry-pi-3-overclock-case-400x337

  1. Configure a service to recognize GPIO pin connections
  2. Wire-up and configure an on/off button for orderly shutdown
  3. Create a paper case
  4. Assess tamper-resistent metal enclosure strategies
  5. BONUS: Configure boards for ZigBee (or LoRA) communication
  6. Design a case using 3D CAD software
  7. Print and adjust a case from 3D printer
  8. Measure and analyze speeds and quality at various conditions
  9. Check product operation and package safely for shipment
  10. Train users/customers

PRODUCT 3 - Cloud-connected dashboard TVs

MAKE FOR SALE: Plug a device on a TV to display (on a schedule) dashboards by monitoring software (Elasticsearch Kibana, Grafana, AppDynamics, New Relic, Dynatrace, Nagios, SAP, etc.)

Grafana

  1. Measure board temperature and other metrics
  2. Connect a monitor to the Pi via HDMI
  3. Configure monitor sleep timers
  4. Obtain API keys from cloud vendors (understand OAuth2)
  5. Use separate files to keep keys from scripts (for security)
  6. Evaluate different IoT clouds (costs vs advantages of each)
  7. Run Python script on the Pi to send a tweet to Twitter
  8. Compare enterprise IoT devices and their risks
  9. Stress test the board to evaluate temperature within board cases
  10. Check product operation and package safely for shipment
  11. Train users/customers

PRODUCT 4 - Cloud-connected alerting device

MAKE FOR SALE: A button on bathroom exits that when pressed, sends an SMS or email to whoever you pre-configure.

iot cloud laptop cut 237x165

  1. OPTION A: Configure an Amazon IoT button that sends a signal to the AWS cloud.
  2. OPTION B: Configure a Pi to connect to the AWS cloud with a speaker for Text to speech synthesis.
  3. Configure an app to reach SMS, phones, and emails (“bathroom needs attention”)
  4. Configure a water leak detector or temperature sensor
  5. Check product operation and package safely for shipment
  6. Train users/customers

PRODUCT 5 - Local redundant data server

MAKE FOR SALE: A server that never sleeps in your home or office, to house a duplicate of what is on your laptop, without fees for cloud access.

iot clear case with drive jpb 400x300-16kb

  1. Configure the Pi to do work based on a schedule.
  2. Configure the Pi as a Gitlab server that mirrors changes on laptops for complete data recovery
  3. Connect large USB drives to the Pi
  4. Install openmediavault.org server to access shares on a browser
  5. Configure port forwarding to access data remotely
  6. Configure network shares using a NAS server to store files
  7. Connect using clients and mobile devices to obtain files
  8. Check product operation and package safely for shipment
  9. Train users/customers

PRODUCT 6 - Predictive alerts from sensors

MAKE FOR SALE: A buzzer or flashing light to alert you whenever an event of your choosing is detected.

  1. Connect a buzzer to the Pi
  2. Connect indoor ambiant sensors to the Pi
  3. Configure alert conditions (water leak detector)
  4. Predict trends based on statistics gathered
  5. Correlate multiple metrics (indoor and outdoor temperature)
  6. Evaluate limits of various sensors to environmental sensors
  7. Check product operation and package safely for shipment
  8. Train users/customers

PRODUCT 7 - Recordings with cameras

MAKE FOR SALE: Take photos periodically and relay them to a server

  1. Identify options for recording images and video
  2. Consider implications for constant-on webcams
  3. Configure a closed-circuit camera feed
  4. Configure fswebcam to use a 640x480 USB camera
  5. Configure cron job to take pictures periodically
  6. Configure a two-way live presence
  7. Test recording cycles checks before shipment
  8. Check product operation and package safely for shipment
  9. Train users/customers

PRODUCT 8 - Media file processor service

MAKE FOR SALE: Intelligently process photos and movies locally or in the cloud

  1. Process media locally on a Pi
  2. Send media to a public cloud
  3. Process media on public cloud
  4. Use cloud service for facial recognition
  5. Compress media
  6. Obtain facial recognition
  7. Check product operation and package safely for shipment
  8. Train users/customers

PRODUCT 9 - Autonomous outdoor device

MAKE FOR SALE: A device powered by battery and solar panel to move camera on a rail for time-lapse videos

  1. Design for weather-proof configurations
  2. Power the Pi using 12V batteries from automobiles
  3. Select small batteries and solar panels to power the Pi untethered
  4. Predict battery life
  5. Define battery maintenance alert mechanisms
  6. Check product operation and package safely for shipment
  7. Train users/customers

PRODUCT 10 - Mobile phone remote control

MAKE FOR SALE: Control your smart phone remotely, such as make it ring so you can find it.

  1. Design interfaces
  2. Evaluate existing utilities
  3. Configure Twilio to ring a mobile phone
  4. Configure Twilio to send SMS to a mobile phone
  5. Test interface
  6. Check product operation and package safely for shipment
  7. Train users/customers

PRODUCT 11 - Control Lights

MAKE FOR SALE: Control the lights in your home remotely the way you want. such as turn lights off or on with different colors. We configure it for you to just plug in and it works.

  1. Install Java Virtual Machine (JVM) on Pi
  2. Install OpenHab.org software for home automation
  3. Turn lights on and off based on conditions
  4. Configure automation rules
  5. Change color of lights
  6. Analyze time series data
  7. Explore use cases, costs vs. advantages for home automation
  8. Check product operation and package safely for shipment
  9. Train users/customers

PRODUCT 12 - Custom home automation programs

MAKE FOR SALE: Control your home remotely the way you want. We configure it for you to just plug in and it works.

  1. Configure the Pi as a Media server to serve music, movies, and pictures
  2. Install home automation control products (using OpenHab)
  3. Download OpenHAB mobile app
  4. Program small LCD screens with buttons
  5. Perform usability studies with beta consumers
  6. Check product operation and package safely for shipment
  7. Train users/customers

PRODUCT 13 - Move things with actuators

MAKE FOR SALE: Make things that move on a schedule or event of your choosing.

  1. Compare Pi vs. Arduino and others
  2. Calculate physics formulas for space, weight, and volume
  3. Conduct repetitive tests for safety
  4. Check product operation and package safely for shipment
  5. Train users/customers

PRODUCT 14 - Custom drone flights

MAKE FOR SALE: A device that can move on its own, custom configured to your needs.

  1. Evaluate various drones (costs vs. advantages)
  2. Add to board sensors such as gas detector
  3. Install board with appropriate power
  4. Drone operation checkout
  5. Configure flight path
  6. Test flights
  7. Perform, track, and schedule predicted maintenace
  8. Check product operation and package safely for shipment
  9. Train users/customers

PRODUCT 15 - Satellite File Transfers

MAKE FOR SALE: A device that sends and receive files to a satellite.

  1. Order satellite hardware and cables
  2. Configure
  3. Test
  4. Perform, track, and schedule predicted maintenace
  5. Check product operation and package safely for shipment
  6. Train users/customers

Topics covered

Here is a summary of the various technologies covered in this curriculum, from the low-level bottom-up:

  1. Enclosures for whole systems in the field

    See my tutorial on IoT Hardware

  2. Board Hardware

    See my tutorial on IoT Hardware.

    Volts vs. Amps

    Install an shutdown signal button (which uses GPIO pins)

  3. Add-on components (drives, sensors, and actuators)

    See my tutorial on IoT Hardware:

    Convert Centigrade to Ferenheit

  4. Operating Systems - Linux

    Debian, Ubuntu, CentOS, SUSE, etc.

  5. Hypervisors and Virtualization -

    Virtualbox, Docker

  6. Low-level utilities to manage disks and files and networks

    Java Virtual Machine, Microsoft’s Mono .NET for Linux

  7. Compilers of programming code

    JDK, SDK

  8. Back-end application coding - API access to clouds

    Shell scripts and PowerShell scripts, Python, C# batch

    Data engineering

  9. Front-end application coding - API access to clouds

    Node JavaScript, C#

  10. Application Programming Interfaces

    Twillio, Twitter, IFTTT

  11. Application UI by end-users - to play movies, etc.

One can spend a whole career at just one level.

The field of IoT is so diverse and so fast-changing that it is difficult for one person to know it all and do everything.

More on IoT

This is one of a series on IoT:

  1. IoT Acronymns and Abbreviations

  2. IoT Apprentice school curriculum
  3. IoT use cases
  4. IoT reminders prevent dead mobile battery
  5. IoT ceiling dumper

  6. IoT text to speech synthesis
  7. IoT AWS button
  8. Intel IoT
  9. IoT Raspberry hardware
  10. IoT Raspberry installation

  11. IoT Clouds
  12. Samsung IoT Cloud

  13. Predix basics
  14. Predix installation
  15. Predix services
  16. Predix programming