(Kevin's workshop was given at WebVisions Portland on May 18, 2016)
Cross a WebVisions workshop with Bill Nye the Science Guy (or Mr. Wizard depending on your generation), and you will get IBM's Kevin Hoyt, leading you through an interactive, hands-on, exploration of the increasingly connected world of cities, farms, and you.
On this three-hour tour, the weather may just get rough, but smart cities with vast arrays of connected sensors will keep us on course and on time. Leaving the city behind, we will discover that data is the new fertilizer for the green acres of smart agriculture. The next stop on this fantastic voyage is inner space as we seek to leverage smart healthcare to unlock the secrets of heart disease and asthma.
This workshop is packed with live demonstrations of a large number of scientific sensors in action. The PH of your drinking water. The air quality of the conference center. The galvanic skin response (sweating) of the presenter. And many more. Having established the possibilities, you will have the option to spend an hour with your very own Internet-connected hardware. Solving the world's problems is hard work, but together we can achieve genius.
What You'll Learn:
How crowdsourcing social change and overcoming human bias in decision making, is leading to the rise of the machines;
How cities like Amsterdam and London are using the Internet of Things to protect personal property and save lives;
How companies like Harman and John Deere discovered the best user experience to keep up with population growth;
How the science of you may just be able to eradicate the world biggest health problems - if you let it;
Basic electronics, and how to connect a device of your own to an Internet of Things platform using Arduino.
Who Should Attend
If you think products like the Google Nest are cool, but are not sure what value they play in society, this workshop is for you. If you look at the emergence of self-driving cars, and wonder about the economic impact, this workshop is for you. If you enjoy gardening or farm-to-table food, and want to find out how to make that scale to a societal level, this workshop is for you. If you fear Skynet, this workshop is for you. If you picked up on any of the 60s, 70s, and 80s references in the overview, this workshop is for you. Or, if you just want to geek out with Internet-connected hardware, this workshop is for you.
. . . . . . . . . . . . . .
Kevin Hoyt is a Developer Advocate at IBM where he has been actively involved in furthering web technologies. He focuses on mobile application development, cloud services, and the Internet of Things.
33. ● Pioneered at IBM (1999)
● ISO standard
● OASIS specification
● Publish-subscribe pattern
● On top of TCP/IP
● Broad adoption
○ Facebook Messenger
○ Amazon Web Services
○ Microsoft Azure
○ IBM Bluemix (Waton IoT)
Publisher Publisher Publisher
Broker
Subscriber Subscriber Subscriber
34. // Node libraries
var jsonfile = require( 'jsonfile' );
var mqtt = require( 'mqtt' );
var serialport = require( 'serialport' );
var SerialPort = serialport.SerialPort;
36. // Connect to Arduino
var arduino = new SerialPort( '/dev/cu.usbserial-DA01L7G3', {
baudrate: 9600,
parser: serialport.parsers.readline( 'n' )
} );
37. // Listen for data from the Arduino
// Send JSON-formatted data to Watson IoT
arduino.on( 'data', function( data ) {
console.log( 'Count: ' + data );
client.publish( config.topic, JSON.stringify( {
count: parseInt( data )
} ) );
} );
41. // Subscribe for data once connected
function doClientConnect( context ) {
console.log( 'Connected.' );
client.subscribe( IOT_TOPIC );
}
// Unable to connect
function doClientFailure( context, code, message ) {
console.log( 'Connection fail.' );
}
42. // Message arrived
function doCountArrived( message ) {
var data = null;
var element = null;
// Parse JSON-formatted string
data = JSON.parse( message.payloadString );
console.log( data );
// Place on screen
element = document.querySelector( '.count' );
element.innerHTML = data.count;
}
45. ● Fix taken at 12:35:19 UTC
● Latitude 48 deg 07.038' N
● Longitude 11 deg 31.000' E
● Fix quality: 1 = GPS fix
● 8 satellites being tracked
● 0.9 horizontal dilution of position
● 545.4,M altitude in meters above mean sea level
● 46.9,M height of mean sea level
● (empty field) time in seconds since last update
● (empty field) station ID number
● *47 checksum data
$GPGGA,123519,4807.038,N,01131.000,E,1,08,0.9,545.4,M,46.9,M,,*47
46. ● OBD-II version 2.1
● Bluetooth connection (serial)
● No batteries required
● 5-10m range
47. atz // OBD protocol
> ELM327 v1.3a
atrv // Vehicle voltage
> 12.5V
atsp0 // Protocol level
> OK
0100 // Current data
> 41 00 BF 9F A8 93
010c // Engine RPM
> 41 0C 0E 96
62. ● Particulate matter level (PM)
● Low Pulse Occupancy time (LPO)
● 1um or larger
● 5V input voltage
● Grove compatible interface
● Pulse Width Modulation (PWM)
● 10k Ohm resistor for sensitivity
63. ● Based on DB18B20
● 3.3-5V input voltage
● -55C to 125C range
● +/-0.5C from -10C to 85C
● 1 Wire interface
● Waterproof
● Requires 4.7k Ohm pull-down
64.
65. ● 0-14 pH range
● 1 second response time
● Laboratory grade
68. SELF DIAGNOSIS WITH WEBMD.COM
Ailments before signing on Ailments after signing on
Slight cough and fever
Meningitis
Inflamed gallbladder
Oh no - Multiple myeloma
Aids - maybe?
Helicobacter pylori - I think