Ways to automate your life. We can do this with IoT
Overview
- Useful tools people really need
- SOLUTION 1 - Configured SD cards
- SOLUTION 2 - Custom enclosures
- SOLUTION 3 - Cloud-connected dashboard TVs
- SOLUTION 4 - Cloud-connected button
- SOLUTION 5 - Local redundant data server
- SOLUTION 6 - Predictive alerts from sensors
- SOLUTION 7 - Recordings with cameras
- SOLUTION 8 - Media file processor service
- SOLUTION 9 - Autonomous outdoor device
- SOLUTION 10 - Mobile phone remote control
- SOLUTION 11 - Control Lights
- SOLUTION 12 - Custom home automation programs
- SOLUTION 13 - Move things with actuators
- SOLUTION 14 - Custom drone flights
- SOLUTION 15 - Satellite File Transfers
- Topics covered
- More on IoT
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.
- Configured SD cards
- Custom enclosures
- Cloud-connected dashboard TVs
- Cloud-connected button
- Local redundant data server
- Predictive alerts from sensors
- Recordings with cameras
- Media file processor service
- Autonomous outdoor device
- Mobile phone remote control
- Control Lights
- Custom home automation programming
- Move things with actuators
- Custom drone flights
- 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.
- Obtain the latest Raspbian operating system
- Choose an SD card to purchase
- Handle electronics with less risk of static electricity damage
- Flash the SD card with the latest Raspbian operating system
- SSH into a Pi without additional monitor and keyboard
- Configure Wi-Fi credentials
- Configure bootstrap script to install Ansible and utilities
- Install and use Git to obtain files from GitHub online
- Configure Ansible yml file to load and configure apps
- Transfer files into Pi using Secure FTP clients
- Configure USB chip to mount automatically
- Backup configuration changes people can buy to avoid the hassle above
- Check product operation and package safely for shipment
- 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.
This is needed to both dissipate heat and protect the device from dust, moisture, etc.
- Configure a service to recognize GPIO pin connections
- Wire-up and configure an on/off button for orderly shutdown
- Create a paper case
- Assess tamper-resistent metal enclosure strategies
- BONUS: Configure boards for ZigBee (or LoRA) communication
- Design a case using 3D CAD software
- Print and adjust a case from 3D printer
- Measure and analyze speeds and quality at various conditions
- Check product operation and package safely for shipment
- 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.)
- Measure board temperature and other metrics
- Connect a monitor to the Pi via HDMI
- Configure monitor sleep timers
- Obtain API keys from cloud vendors (understand OAuth2)
- Use separate files to keep keys from scripts (for security)
- Evaluate different IoT clouds (costs vs advantages of each)
- Run Python script on the Pi to send a tweet to Twitter
- Compare enterprise IoT devices and their risks
- Stress test the board to evaluate temperature within board cases
- Check product operation and package safely for shipment
- 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.
- OPTION A: Configure an Amazon IoT button that sends a signal to the AWS cloud.
- OPTION B: Configure a Pi to connect to the AWS cloud with a speaker for Text to speech synthesis.
- Configure an app to reach SMS, phones, and emails (“bathroom needs attention”)
- Configure a water leak detector or temperature sensor
- Check product operation and package safely for shipment
- 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.
- Configure the Pi to do work based on a schedule.
- Configure the Pi as a Gitlab server that mirrors changes on laptops for complete data recovery
- Connect large USB drives to the Pi
- Install openmediavault.org server to access shares on a browser
- Configure port forwarding to access data remotely
- Configure network shares using a NAS server to store files
- Connect using clients and mobile devices to obtain files
- Check product operation and package safely for shipment
- 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.
- Connect a buzzer to the Pi
- Connect indoor ambiant sensors to the Pi
- Configure alert conditions (water leak detector)
- Predict trends based on statistics gathered
- Correlate multiple metrics (indoor and outdoor temperature)
- Evaluate limits of various sensors to environmental sensors
- Check product operation and package safely for shipment
- Train users/customers
SOLUTION 7 - Recordings with cameras
Take photos periodically and relay them to a server
- Identify options for recording images and video with sound
- Consider implications for constant-on webcams
- Configure a closed-circuit camera feed
- Configure fswebcam to use a 640x480 USB camera
- Configure cron job to take pictures periodically
- Configure a two-way live presence
- Test recording cycles checks before shipment
- Check product operation and package safely for shipment
- Train users/customers
Movidius Neural Computer Stick
SOLUTION 8 - Media file processor service
Intelligently process photos and movies locally or in the cloud
- Process media locally on a Pi
- Send media to a public cloud
- Process media on public cloud
- Use cloud service for facial recognition
- Compress media
- Obtain facial recognition
- Check product operation and package safely for shipment
- 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
- Design for weather-proof configurations
- Power the Pi using 12V batteries from automobiles
- Select small batteries and solar panels to power the Pi untethered
- Predict battery life
- Define battery maintenance alert mechanisms
- Check product operation and package safely for shipment
- Train users/customers
SOLUTION 10 - Mobile phone remote control
Control your smart phone remotely, such as make it ring so you can find it.
- Design interfaces
- Evaluate existing utilities
- Configure Twilio to ring a mobile phone
- Configure Twilio to send SMS to a mobile phone
- Test interface
- Check product operation and package safely for shipment
- 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.
- Install Java Virtual Machine (JVM) on Pi
- Install OpenHab.org software for home automation
- Turn lights on and off based on conditions
- Configure automation rules
- Change color of lights
- Analyze time series data
- Explore use cases, costs vs. advantages for home automation
- Check product operation and package safely for shipment
- 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.
- Configure the Pi as a Media server to serve music, movies, and pictures
- Install home automation control products (using OpenHab)
- Download OpenHAB mobile app
- Program small LCD screens with buttons
- Perform usability studies with beta consumers
- Check product operation and package safely for shipment
- Train users/customers
SOLUTION 13 - Move things with actuators
Make things that move on a schedule or event of your choosing.
- Compare Pi vs. Arduino and others
- Calculate physics formulas for space, weight, and volume
- Conduct repetitive tests for safety
- Check product operation and package safely for shipment
- Train users/customers
SOLUTION 14 - Custom drone flights
A device that can move on its own, custom configured to your needs.
- Evaluate various drones (costs vs. advantages)
- Add to board sensors such as gas detector
- Install board with appropriate power
- Drone operation checkout
- Configure flight path
- Test flights
- Perform, track, and schedule predicted maintenace
- Check product operation and package safely for shipment
- 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.
- Evaluate Outernet projects by others and files such already, such as some Wikipedia articles. Bitcoin datacasting.
- Order L-band satellite antenna and amplifier hardware from the non-profit Outernet store in Chicago.
- Install rxOS software.
- Configure Software-defined Radio (SDR) 25MHz-2200MHz http://pu2vlw.dyndns.org:8090
- Test (Inmarsat signal level above 15 db?), 10KB at a time.
- Perform, track, and schedule predicted maintenace https://www.wikiwand.com/en/Outernet
- Check product operation and package safely for shipment
- Train users/customers
Topics covered
Here is a summary of the various technologies covered in this curriculum, from the low-level bottom-up:
-
Enclosures for whole systems in the field
See my tutorial on IoT Hardware
-
Board Hardware
See my tutorial on IoT Hardware.
Volts vs. Amps
Install an shutdown signal button (which uses GPIO pins)
-
Add-on components (drives, sensors, and actuators)
See my tutorial on IoT Hardware:
Convert Centigrade to Ferenheit
-
Operating Systems - Linux
Debian, Ubuntu, CentOS, SUSE, etc.
-
Hypervisors and Virtualization -
Virtualbox, Docker
-
Low-level utilities to manage disks and files and networks
Java Virtual Machine, Microsoft’s Mono .NET for Linux
-
Compilers of programming code
JDK, SDK
-
Back-end application coding - API access to clouds
Shell scripts and PowerShell scripts, Python, C# batch
Data engineering
-
Front-end application coding - API access to clouds
Node JavaScript, C#
-
Application Programming Interfaces
Twillio, Twitter, IFTTT
-
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:
-
IoT Acronymns and Abbreviations on Quizlet
- IoT Apprentice school curriculum
- IoT use cases
- IoT reminders prevent dead mobile battery
- IoT text to speech synthesis
- IoT AWS button
- Intel IoT
- IoT Raspberry hardware
- IoT Clouds
- Samsung IoT Cloud
NOTE: Pages about GE’s Predix have been removed.