Wilson Mar bio photo

Wilson Mar

Hello!

Calendar YouTube Github

LinkedIn

Ways to automate your life. We can do this with IoT

US (English)   Norsk (Norwegian)   Español (Spanish)   Français (French)   Deutsch (German)   Italiano   Português   Estonian   اَلْعَرَبِيَّةُ (Egypt Arabic)   Napali   中文 (简体) Chinese (Simplified)   日本語 Japanese   한국어 Korean

Overview

Useful tools people really need

Our objective is to make innovations available to the public by putting together teams that make things for sale.

We want to make things that make a difference, products that help people and organizations save time and money, safely.

The solutions below contain an outline for how we put them together.

  1. Configured SD cards
  2. Custom enclosures
  3. Cloud-connected dashboard TVs
  4. Cloud-connected button
  5. Local redundant data server
  6. Predictive alerts from sensors
  7. Recordings with cameras
  8. Media file processor service
  9. Autonomous outdoor device
  10. Mobile phone remote control
  11. Control Lights
  12. Custom home automation programming
  13. Move things with actuators
  14. Custom drone flights
  15. Satellite File Transfers

SOLUTION 1 - Configured SD cards

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

SOLUTION 2 - Custom enclosures

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

This is needed to both dissipate heat and protect the device from dust, moisture, etc.

  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

SOLUTION 3 - Cloud-connected dashboard TVs

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

SOLUTION 4 - Cloud-connected button

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

SOLUTION 5 - Local redundant data server

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

SOLUTION 6 - Predictive alerts from sensors

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

SOLUTION 7 - Recordings with cameras

Take photos periodically and relay them to a server

  1. Identify options for recording images and video with sound
  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

Movidius Neural Computer Stick

SOLUTION 8 - Media file processor service

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

SOLUTION 9 - Autonomous outdoor device

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

SOLUTION 10 - Mobile phone remote control

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

SOLUTION 11 - Control Lights

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

SOLUTION 12 - Custom home automation programs

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

SOLUTION 13 - Move things with actuators

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

SOLUTION 14 - Custom drone flights

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

SOLUTION 15 - Satellite File Transfers

A device that receives and sends files to the two 98W satellites in outer space over the US and Europe.

This is a hobbyist fascination for nerdy bragging rights.

  1. Evaluate Outernet projects by others and files such already, such as some Wikipedia articles. Bitcoin datacasting.
  2. Order L-band satellite antenna and amplifier hardware from the non-profit Outernet store in Chicago.
  3. Install rxOS software.
  4. Configure Software-defined Radio (SDR) 25MHz-2200MHz http://pu2vlw.dyndns.org:8090
  5. Test (Inmarsat signal level above 15 db?), 10KB at a time.
  6. Perform, track, and schedule predicted maintenace https://www.wikiwand.com/en/Outernet
  7. Check product operation and package safely for shipment
  8. 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 on Quizlet

  2. IoT Home Assistant system

  3. IoT Apprentice school curriculum
  4. IoT use cases
  5. IoT reminders prevent dead mobile battery
  6. IoT barn feeder

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

  12. IoT Clouds
  13. Samsung IoT Cloud

NOTE: Pages about GE’s Predix have been removed.