Mobile Development for Devices and IoT

Preview:

Citation preview

Mobile Development for Devices and IoT

I am going to curse

Notorious LiarMost famous song is about lying

Diving In- (void)peripheral:(CBPeripheral *)peripheral didDiscoverCharacteristicsForService:(CBService *)service error:(NSError *)error{ if ([service.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_HEART_RATE_SERVICE_UUID]]) { // 1 for (CBCharacteristic *aChar in service.characteristics) { // Request heart rate notifications if ([aChar.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_MEASUREMENT_CHARACTERISTIC_UUID]]) { // 2 [self.polarH7HRMPeripheral setNotifyValue:YES forCharacteristic:aChar]; NSLog(@"Found heart rate measurement characteristic"); } // Request body sensor location else if ([aChar.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_BODY_LOCATION_CHARACTERISTIC_UUID]]) { // 3 [self.polarH7HRMPeripheral readValueForCharacteristic:aChar]; NSLog(@"Found body sensor location characteristic"); } } } // Retrieve Device Information Services for the Manufacturer Name if ([service.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_DEVICE_INFO_SERVICE_UUID]]) { // 4 for (CBCharacteristic *aChar in service.characteristics) { if ([aChar.UUID isEqual:[CBUUID UUIDWithString:POLARH7_HRM_MANUFACTURER_NAME_CHARACTERISTIC_UUID]]) { [self.polarH7HRMPeripheral readValueForCharacteristic:aChar]; NSLog(@"Found a device manufacturer name characteristic"); } } }}

Inter·net of things noun noun: Internet of things 1) a proposed development of the Internet in which everyday objects have network

connectivity, allowing them to send and receive data.

Numbers25% of the apps are games

I was going to say more but everyone else has already put up everything

What is Sproutling?

A wearable band for your baby, a smart charger and a mobile app work together to not only monitor more effectively but learn and predict your baby's sleep habits and optimal sleep conditions

Ecosystem

BLE

WiFiBLE

Sproutling

WiFi or Cellular

Home Router

CloudInternet Telemetry

Identity

Device Mgmt

ExperienceDoes the user trust your app?How does your app provide feedback?Is your app easy to use with the devices?

UtilitarianSetup / Data EntryOnboardingTroubleshootingCustomer Support

Get ReadyIt is all your fault even if it is the device that messing you up

I18N/L10NMake sure that your app has a great experience across languages and cultures

Constantly BetterThere have been 4 updates since I purchased my Tesla and it now drives me to work and I can use my phone to pull my car of the garage

Brand SupportWhat do you do when your brand has multiple connected devices?How does your app compare and work into the Out of Box Experience (OBE)?

AndroidTreat android as a first class citizen on par with your iOS app

UV-curing solder mask to home-fabbed boards

Date

“Well you have true pub/sub with MQTT thats the biggest thing. MQTT was built around the notion of message queuing. Websockets were built from a need for unidirectional http communication thats at the highest level”

Chris Hein

UV-curing solder mask to home-fabbed boards

Date

Battery Life Analysis / Alignment

SecurityAre you thinking about it?How do you connect the backend?How do you connect to the device?When you interview, make sure you fake it!

LoggingLog all interactions with everything

TestingIntegration testing is hard to automate, take a lot of time and costly to changeMake sure you have great manual tests and scripts, seriouslyMake sure you performance and usability test!

TeamsHardware and software need to work together in perfect harmonySmall team communication is easyLarger teams need protocols and documentation to avoid running off the rails

Connection FatigueI wanna disconnect myself, do it I wanna disconnect myself, get it I wanna pull my brain stem out, do it I wanna disconnect myself right now

SummaryHopefully you learned a few things and are excited to start working in IoT because the robots are coming

Thank Youhttp://www.sproutling.comwes@sproutling.com@baywes

Recommended