SlideShare a Scribd company logo
1 of 40
Download to read offline
Application Development using
            Sensors
        Intel® Corporation
Legal Disclaimer
• INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. EXCEPT AS PROVIDED IN INTEL’S TERMS AND CONDITIONS OF SALE FOR SUCH
      PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL IS CLAIMS ANY EXPRESS OR IMPLIED WARRANTY RELATING TO SALE AND/OR USE OF INTEL
      PRODUCTS, INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT,
      COPYRIGHT, OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in medical, life-saving, life sustaining, critical control or safety systems,
      or in nuclear facility applications.

• Intel products may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are
       available on request.

• Intel may make changes to dates, specifications, product descriptions, and plans referenced in this document at any time, without notice.

• This document may contain information on products in the design phase of development. The information here is subject to change without notice. Do not finalize a
       design with this information.

• Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and
      shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them.

• Intel Corporation may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights that relate to the presented subject
       matter. The furnishing of documents and other materials and information does not provide any license, express or implied, by estoppel or otherwise, to any such
       patents, trademarks, copyrights, or other intellectual property rights.

• Wireless connectivity and some features may require you to purchase additional software, services or external hardware.

• Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance of Intel products as measured
      by those tests. Any difference in system hardware or software design or configuration may affect actual performance. Buyers should consult other sources of
      information to evaluate the performance of systems or components they are considering purchasing. For more information on performance tests and on the
      performance of Intel products, visit Intel Performance Benchmark Limitations

• Intel, the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.



Copyright © 2011 Intel Corporation. All rights reserved.

Intel Confidential - Customer NDA Use Only
                                                           Copyright© 2012, Intel Corporation. All rights reserved. *Other
* Other Names and Brands maybe claimed as the property of others.names are the property features are preliminary and subject to change without notice.
                                                      brands and All dates, plans and of their respective owners                                                               2
Agenda
• Overview of available sensors
• Using sensors in a Windows 8* application
  - In C++ desktop applications, using COM interface
  - In C++ or C#/.NET Windows 8* store and desktop
    applications, using WinRT APIs
• Considerations on Efficiency



                 Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                3
Who am I ?




Xavier Hallade (@ph0b)
Technical Marketing Engineer at Intel
                  Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                 4
Sensors
OVERVIEW OF AVAILABLE SENSORS


                 Copyright(C) 2012 Intel Corporation. All rights reserved.
            *Other brands and names are properties of their respective owners.   5
Available Sensors

    Compass   Accelerometer   Gyroscope   GPS   Ambient Light   NFC

+ with Sensor Fusion: Inclinometer, Orientation, SimpleOrientation

• Sensor Fusion : virtual sensors created by combining data
  from compass, accelerometer and gyroscope
• Ambient Light, GPS, 3D Motion and orientation sensors are
  all mandatory on Windows 8* Tablets and Convertibles
• Applications can subscribe to sensor events, set callbacks or
  directly poll their current state.
Orientation and Motion detection
• Gyrometer returns yaw, pitch and roll velocities
• Accelerometer returns acceleration along x, y and z,
  and optionally a Shake event
• Simple Orientation : returns device orientation into
  one of four quadrants, face-up, or face-down
• Orientation Sensor and inclinometer both returns
  the complete device orientation
   – Inclinometer returns yaw, pitch, and roll angles
   – Orientation Sensor returns a quaternion as well as a 3x3
     orientation matrix
Orientation and Motion detection
                 same convention as on Android
                 and in the HTML5 specification




                   0.0° ≤ Yaw < 360.0°
                   -180.0° ≤ Pitch < 180.0°
                   -90.0° ≤ Roll < 90.0°
Ambient Light
• Can be used to adapt application interface
  depending on light conditions : contrast,
  font size
• Screen brightness control should be handled
  by the operating system.
               Lighting condition   Illuminance (lux)
               Pitch black                           1
               Very dark                            10
               Dark indoors                         50
               Dim indoors                         100
               Normal indoors                      300
               Bright indoors                    1,000
               Dim outdoors                      5,000
               Cloudy outdoors                  30,000
               Direct sunlight                 100,000
Location
Returns latitude, longitude:
- using Wi-Fi if available
- using IP Address otherwise
- using GPS if available and desired accuracy is set
  on High
   - then it can also return Altitude, Speed and Heading

Depending on user’s choice, its use can be denied.
A Windows 8* store app has to declare the
“location” capability in its manifest.
Near Field Communication

• Short range (<4cm)
• Contactless
• Used between active and/or passive devices
  – Active: Smartphone, Tablet, Ultrabook™…
  – Passive: Tags, Smart cards…
• Small amount of data, low data transfer rate
• Easy to use, feels instantaneous (<1/10s)
     -> Great user experience !
Near Field Communication
• Pairing
  – with Bluetooth* peripherals, at the OS level
  – with another running application, by establishing
    a BT or Wi-Fi direct socket, at the application level
• Short data read/write on NFC tags
• Short data exchange with active devices
  – Sharing URIs, contacts, positions
  – Secure transactions
NFC messages
Protocol           Pub. Sub. Message contents
Windows             X X binary data.
WindowsUri          X X UTF-16LE encoded string that is a URI.
                             use PublishUriMessage
WindowsMime         X X message data of a specific mime type.
                             For example, "WindowsMime.image/jpeg".
                             You can subscribe to "WindowsMime" message
                             without specifying the mime type. If so, the first 256
                             bytes received is the ASCII mime type string.
Windows:WriteTag    X        Windows message to be written to a static tag.
WindowsUri:WriteTag X        WindowsUri message to be written to a static tag.
WindowsMime:Write X          WindowsMime message to be written to a static tag.
Tag                          Example, “WindowsMime:WriteTag.image/jpeg”
LaunchApp:WriteTag X         Write a tag that can be used to launch a specific app.
                             more information on msdn.
WriteableTag             X if a writeable tag is brought in to proximity, a
                             proximity message is received that contains an
                             int32 indicating the maximum writeable size.
NFC messages
 Windows messages are fully compatible with NDEF messages,
 but you can also directly manipulate them :
Protocol      Pub. Sub. Message contents
NDEF           X    X properly formatted NDEF records.
NDEF:ext            X application defined NDEF records (TNF field value of 0x04).
NDEF:MIME           X properly formatted NDEF mime message (TNF field value
                        of 0x02). For example, "NDEF:MIME.image/jpeg".
NDEF:URI            X properly formatted NDEF message of a type defined by a
                        URI namespace (TNF field value of 0x03). For example,
                        "NDEF:URI.http://contoso.com/sometype".
NDEF:wkt            X properly formatted NDEF message of a type defined by the
                        NFC forum (TNF field value of 0x01).An example of this
                        type is "NDEF:wkt.U" for the well known type of URI.
NDEF:WriteTag X         message data that should be written to an NFC forum
                        standard static tag.
NDEF:Unknown        X untyped NDEF message (TNF field value of 0x05).
Sensors
LET’S DIVE INTO SOME CODE !


                  Copyright(C) 2012 Intel Corporation. All rights reserved.
             *Other brands and names are properties of their respective owners.   15
Sensors and Location Platform
using COM interface
FROM C++


                 Copyright(C) 2012 Intel Corporation. All rights reserved.
            *Other brands and names are properties of their respective owners.   16
Sensors and Location Platform
• Same interface as on Windows 7
   – Sensor fusion available through new GUIDs
• Sensor manager controls sensors
   – Use sensor manager to get to sensors
   – Notifies when a sensor connects
• Sensors report data, changes in state and disconnection
• Access both via COM interfaces
   – Use API to communicate to sensors
   – Sensor events handled using callbacks
   – API reference at msdn.microsoft.com/en-
     us/library/windows/desktop/dd318953%28v=vs.85%29.aspx



                      Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                     17
COM: Connect to sensor manager
                                                                                           // Create the sensor manager
• Access to sensors is through the
  sensor manager                                                                           ISensorManager pSensorManager;


                                                                                           hr = CoCreateInstance(CLSID_SensorManager,
• Group policy settings may deny                                                                NULL, CLSCTX_INPROC_SERVER,
                                                                                                IID_PPV_ARGS(&pSensorManager));
  access to the system sensors
                                                                                           if(hr == HRESULT_FROM_WIN32
                                                                                                    (ERROR_ACCESS_DISABLED_BY_POLICY))
                                                                                           {
                                                                                                    // Unable to retrieve sensor manager due
                                                                                                    // to group policy settings.
                                                                                                    // Alert the user.
                                                                                           }



                                                                                                                                                        (Source: Microsoft)


                         Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                                       18
COM: Retrieve a sensor object
                                                                                       // Get the sensor collection
• Request sensors by category, type                                                    hr = pSensorManager->GetSensorsByCategory(
                                                                                             SENSOR_CATEGORY_ALL,
  or ID                                                                                      &pSensorColl);
                                                                                       if(SUCCEEDED(hr))
                                                                                       {
                                                                                         ULONG ulCount = 0;
                                                                                         // Verify that the collection contains at
                                                                                         // least one sensor
                                                                                         hr = pSensorColl->GetCount(&ulCount);
                                                                                         if(SUCCEEDED(hr))
                                                                                         {
                                                                                           if(ulCount < 1)
                                                                                           {
• Request permission to use the                                                               wprintf_s(L"nNo sensors of the
                                                                                                requested category.n");
                                                                                              hr = E_UNEXPECTED;
  sensor(s)                                                                                } else
                                                                                           {
   • Windows 8 will open a dialog                                                            // Request permissions for all sensors
                                                                                             // in the collection
      box to ask the user                                                                    hr = pSensorManager->
                                                                                               RequestPermissions(0, pSensorColl,
   • Granting permission triggers                                                          }
                                                                                                 FALSE);
                                                                                         …
      the OnStateChanged event
                                                                                                                                                        (Source: Microsoft)


                         Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                                       19
COM: Sensor event callback
                                                                                        class CMyEvents : public ISensorEvents
• Receive event notifications by
                                                                                        {
  implementing required COM                                                             public:
  interfaces
                                                                                                       STDMETHODIMP QueryInterface(…) {…}
                                                                                                       STDMETHODIMP_(ULONG) AddRef() {…}
• Sensor events require                                                                                STDMETHODIMP_(ULONG) Release() {…}

  ISensorEvents
                                                                                                       // ISensorEvents methods. //
                                                                                                       STDMETHODIMP OnEvent(…) {…}
• Sensor Manager events require                                                                        STDMETHODIMP OnDataUpdated(…) {…}
                                                                                                       STDMETHODIMP OnLeave(…) {…}
  ISensorManagerEvents                                                                                 STDMETHODIMP OnStateChanged(…) {…}
                                                                                        …




                                                                                                                                                         (Source: Microsoft)


                          Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                                        20
COM: Start receiving events
                                                                                       // Create an instance of the event
• To start receiving events provide                                                    // class
  the sensor with a pointer to your                                                    pEventClass = new(std::nothrow)
                                                                                         CMyEvents();
  callback
                                                                                       if(SUCCEEDED(hr))
• To stop receiving events call                                                        {
                                                                                         // Retrieve the pointer to the
  SetEventSink with a parameter of                                                       // callback interface
  NULL                                                                                   hr = pEventClass->QueryInterface(
                                                                                           IID_PPV_ARGS(&pMyEvents));
                                                                                       }
                                                                                       if(SUCCEEDED(hr))
                                                                                       {
                                                                                         // Start receiving events
                                                                                         hr = pSensor->
                                                                                              SetEventSink(pMyEvents);
                                                                                       }


                                                                                                                                                        (Source: Microsoft)


                         Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                                       21
Ambient Light Sensor
DEMO




           Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                          22
Using WinRT Sensors and
Location API
FROM C# AND C++/CX


                Copyright(C) 2012 Intel Corporation. All rights reserved.
           *Other brands and names are properties of their respective owners.   23
WinRT API
• Windows.Sensors.
      •   Accelerometer
      •   Gyrometer
      •   Inclinometer
      •   OrientationSensor
      •   SimpleOrientationSensor
      •   Compass
      •   LightSensor
• Windows.Networking.Proximity.ProximityDevice (NFC)
• Windows.Device.Geolocation (GPS)

                      Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
Using the WinRT API
WinRT Sensors and Location APIs are available to
Windows 8* Desktop applications

You need to use WinRT Windows MetaData files :
• Platform.winmd:
  C:Program Files (x86)Microsoft SDKsWindowsv8.0ExtensionSDKsMicrosoft.VCLi
  bs11.0ReferencesCommonConfigurationneutral

• Windows.winmd:
  C:Program Files (x86)Windows Kits8.0ReferencesCommonConfigurationNeutral

                                                                                                                             How ?
                           Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
WinRT From Desktop (C#)
Unload your C# Project
Manually edit the .csproj file to add :
<PropertyGroup>
   <TargetPlatformVersion>8.0</TargetPlatformVersion>
 </PropertyGroup>
Reload the project
Add Windows.winmd and Platform.winmd as references
from their respective locations



                  Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
WinRT From Desktop (C++)
In your project properties, in C/C++->General:
• Set “Consume Windows Runtime Extension” on Yes
   (/ZW)
• Add Windows.winmd and Platform.winmd paths to
   “Additional #using Directories”
In your source code, add :
       #using <Windows.winmd>
       #using <Platform.winmd>


                 Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
WinRT Sensor API
No need for a sensor manager:

1 – Retrieve the default sensor/device using GetDefault()
2 – Set the ReportInterval
3 – Add a delegate to ReadingChanged event




                   Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
WinRT Sensor API
_accelero = Accelerometer.GetDefault();
if (_accelero != null)
{
         _accelero.ReportInterval = 50 <= _accelero.MinimumReportInterval ?
_accelerometer.MinimumReportInterval : 50;
    //Register for reading changed events
    _accelero.ReadingChanged += (Accelerometer s, AccelerometerReadingChangedEventArgs
args) =>
                    {
                       //use e.Data.AccelerationX/Y/Z
                    };
}
                                                                                    C#

Accelerometer ^accelero = Accelerometer::GetDefault();
if(accelero!=nullptr)
{
    accelero->ReportInterval = 50 <= accelero->MinimumReportInterval ? accelero-
>MinimumReportInterval : 50;
    accelero->ReadingChanged += ref new TypedEventHandler<Accelerometer^,
AccelerometerReadingChangedEventArgs^>(
        [](Object^ sender, AccelerometerReadingChangedEventArgs^ e)
        {
          //read e->Data->AccelerationX/Y/Z
        });
}
                              Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
                                                                                                                                                             C++
C#/WPF Accelerometer Demo
• Ellipse (ball) drawn on a canvas
• Accelerometer data is used to update X/Y/Z
  display and location of ball
• Data is read using
  accelerometer events in
  conjunction with a
  timer to move the ball


                Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                               30
C#/WPF NFC DEMO
• Subscribe to incoming WindowsURI messages
• Publish a WindowsURI message to any active
  device
• Write that
  message to any
  writable tag



               Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                              31
USING SENSORS EFFICIENTLY


                 Copyright(C) 2012 Intel Corporation. All rights reserved.
            *Other brands and names are properties of their respective owners.   32
General Considerations
• The effects of applications on power use
• Both idle workloads and active workloads
• The rules of power management
  –   Computational efficiency
  –   Maximize idle
  –   Data efficiency
  –   Power-aware behavior
• Align, coalesce or batch activity whenever
  possible

                    Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                   33
Regarding Sensors
• Do not set a small ReportInterval if your application doesn’t
  need it
• Avoid periodic registry or disk accesses in order to let the
  hard disk spin down
• Avoid status polling, statistics & background bookkeeping
• Avoid using sensors when application is not active
• Consider using accelerometer or gyroscope alone if full
  orientation is not needed.

                             Sensors objects in Sensors API: At least one client connected
   Hardware:      Accelerometer          Gyroscope                                      Inclinometer Compass                                                     Device Orientation
  Accelerometer        On                             Off                                                On                                            On               On
          Gyro         Off                             On                                                On                                            On               On
  Magnetometer         Off                            Off                                                On                                            On               On

                                  Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                                                      34
Advanced : Context/power-aware
               behavior
• Handling sleep transitions seamlessly
   – Saving an restoring state
   – Stopping ongoing activity prior to sleeping
   – Closing open resources & disconnecting communications
• Respond/adapt to system power events
   – Switching from AC to battery; low battery status
• Scale behavior based on power state
• Context awareness toolkits
   – software.intel.com/en-us/mobility
   – softwarecommunity.intel.com/articles/eng/1070.htm
   – softwarecommunity.intel.com/articles/eng/1026.htm

                     Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                    35
Intel Software Development Products
              Intel Power Tools
• Intel® Power Checker
  – Reveals how much power your application is using
  – software.intel.com/partner/app/software-
    assessment/?cid=sw:ubpower004
• Energy-Efficient Software Checklist
  – software.intel.com/en-us/articles/energy-
    efficient-software-checklist/



                 Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                36
References
•   Intel® Software Network
     – software.intel.com
•   COM Sensor API
     – msdn.microsoft.com/en-us/library/windows/desktop/dd318953(v=vs.85).aspx
•   COM Location API
     – msdn.microsoft.com/en-us/library/dd464636(v=VS.85).aspx
•   WinRT Sensors API
     – msdn.microsoft.com/en-us/library/windows/apps/br206408.aspx
•   WinRT Geolocation API
     – msdn.microsoft.com/en-us/library/windows/apps/windows.devices.geolocation.aspx
•   WinRT ProximityAPI
     – msdn.microsoft.com/en-us/library/windows/apps/windows.networking.proximity.aspx
•   Detecting Ultrabook Sensors
     – software.intel.com/en-us/blogs/2012/07/26/detecting-ultrabook-sensors
•   Ultrabook and Tablet Windows 8* Sensors Development Guide
     – software.intel.com/en-us/articles/ultrabook-and-tablet-windows-8-sensors-development-guide/
•   Intel® Energy Efficient Software Guidelines
     – software.intel.com/partner/assets/pdf/misc/Energy_Efficient_Software_Guidelines_v3_4_10_11.pdf



                                    Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                                                   37
Summary
– sensors are a natural way to interact with end
  users
– Desktop apps can utilize them as well as Windows
  8* Store Apps
– Utilize efficient designs and coding practices to
  save battery life




               Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                              38
Q&A




Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                               39
END
• START OF NEXT SESSION IN 15 MINS.
• Ultrabook Developer Resources




              Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners.
                                                                                                                                             40

More Related Content

What's hot

NFC & RFID on Android
NFC & RFID on AndroidNFC & RFID on Android
NFC & RFID on Androidtodbotdotcom
 
Near field communication new
Near field communication newNear field communication new
Near field communication newSanu Varghese
 
NFC (Near Field Communication) by sandip murari
NFC (Near Field Communication) by sandip murariNFC (Near Field Communication) by sandip murari
NFC (Near Field Communication) by sandip murariSandip Murari
 
Near field communication
Near field communicationNear field communication
Near field communicationNagesh Mishra
 
Near Field Communication (NFC Architecture and Operating Modes)
Near Field Communication (NFC Architecture and Operating Modes)Near Field Communication (NFC Architecture and Operating Modes)
Near Field Communication (NFC Architecture and Operating Modes)Deepak Kl
 
Track 4 session 5 - st dev con 2016 - simplifying the setup and use of iot ...
Track 4   session 5 - st dev con 2016 - simplifying the setup and use of iot ...Track 4   session 5 - st dev con 2016 - simplifying the setup and use of iot ...
Track 4 session 5 - st dev con 2016 - simplifying the setup and use of iot ...ST_World
 
An Electronic Ticketing System based on Near Field Communication for Concerts...
An Electronic Ticketing System based on Near Field Communication for Concerts...An Electronic Ticketing System based on Near Field Communication for Concerts...
An Electronic Ticketing System based on Near Field Communication for Concerts...Hussain Shah
 
NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside
NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside
NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside NXP MIFARE Team
 
Ask Contactless Terminals
Ask Contactless TerminalsAsk Contactless Terminals
Ask Contactless Terminalsclaren65
 
AUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPS
AUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPSAUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPS
AUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPSJournal For Research
 
Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?
Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?
Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?Andreas Jakl
 
NFC (Windows 8/ Windows Phone 8 )
NFC (Windows 8/ Windows Phone 8 )NFC (Windows 8/ Windows Phone 8 )
NFC (Windows 8/ Windows Phone 8 )Bill Chung
 
Near field communication
Near field communication Near field communication
Near field communication Siddharth Dc
 

What's hot (20)

NFC & RFID on Android
NFC & RFID on AndroidNFC & RFID on Android
NFC & RFID on Android
 
Near field communication new
Near field communication newNear field communication new
Near field communication new
 
NFC Basic Concepts
NFC Basic ConceptsNFC Basic Concepts
NFC Basic Concepts
 
NFC (Near Field Communication) by sandip murari
NFC (Near Field Communication) by sandip murariNFC (Near Field Communication) by sandip murari
NFC (Near Field Communication) by sandip murari
 
Near field communication
Near field communicationNear field communication
Near field communication
 
NFC Security Guard Systems
NFC Security Guard SystemsNFC Security Guard Systems
NFC Security Guard Systems
 
Near Field Communication (NFC Architecture and Operating Modes)
Near Field Communication (NFC Architecture and Operating Modes)Near Field Communication (NFC Architecture and Operating Modes)
Near Field Communication (NFC Architecture and Operating Modes)
 
Electronic Access Control Security
Electronic Access Control SecurityElectronic Access Control Security
Electronic Access Control Security
 
NFC TECHNOLOGY
NFC TECHNOLOGYNFC TECHNOLOGY
NFC TECHNOLOGY
 
Nfc presentation
Nfc presentationNfc presentation
Nfc presentation
 
shirsha
shirshashirsha
shirsha
 
Sensor id overview_ppt
Sensor id overview_pptSensor id overview_ppt
Sensor id overview_ppt
 
Track 4 session 5 - st dev con 2016 - simplifying the setup and use of iot ...
Track 4   session 5 - st dev con 2016 - simplifying the setup and use of iot ...Track 4   session 5 - st dev con 2016 - simplifying the setup and use of iot ...
Track 4 session 5 - st dev con 2016 - simplifying the setup and use of iot ...
 
An Electronic Ticketing System based on Near Field Communication for Concerts...
An Electronic Ticketing System based on Near Field Communication for Concerts...An Electronic Ticketing System based on Near Field Communication for Concerts...
An Electronic Ticketing System based on Near Field Communication for Concerts...
 
NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside
NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside
NXP MIFARE Webinar: Innovation Road Map: Present Improved- Future Inside
 
Ask Contactless Terminals
Ask Contactless TerminalsAsk Contactless Terminals
Ask Contactless Terminals
 
AUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPS
AUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPSAUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPS
AUTOMATING VEHICLE FINE COLLECTION SYSTEM USING NFC AND GPS
 
Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?
Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?
Which new scenarios are enabled by Windows 10 for NFC, Bluetooth LE & Beacons?
 
NFC (Windows 8/ Windows Phone 8 )
NFC (Windows 8/ Windows Phone 8 )NFC (Windows 8/ Windows Phone 8 )
NFC (Windows 8/ Windows Phone 8 )
 
Near field communication
Near field communication Near field communication
Near field communication
 

Viewers also liked

NFC technical presentation
NFC technical presentationNFC technical presentation
NFC technical presentationAkshat Rohatgi
 
Wireless sensor networks using android virtual devices and near field
Wireless sensor networks using android virtual devices and near fieldWireless sensor networks using android virtual devices and near field
Wireless sensor networks using android virtual devices and near fieldNicolas Kockel
 
The Eclipse M2M IWG and Standards for the Internet of Things
The Eclipse M2M IWG and Standards for the Internet of ThingsThe Eclipse M2M IWG and Standards for the Internet of Things
The Eclipse M2M IWG and Standards for the Internet of ThingsWerner Keil
 
NFC Technology
NFC TechnologyNFC Technology
NFC TechnologyNeha Singh
 
Near field communication (nfc) technology
Near field communication (nfc) technologyNear field communication (nfc) technology
Near field communication (nfc) technologyAnkur Sharma
 
Near Field Communication (NFC)
Near Field Communication (NFC)Near Field Communication (NFC)
Near Field Communication (NFC)deepak171991
 
geecon 2013 - Standards for the Future of Java Embedded
geecon 2013 - Standards for the Future of Java Embeddedgeecon 2013 - Standards for the Future of Java Embedded
geecon 2013 - Standards for the Future of Java EmbeddedWerner Keil
 
DevBy. Apple Watch Kit 1.0 (RU) & NFC
DevBy. Apple Watch Kit 1.0 (RU) & NFCDevBy. Apple Watch Kit 1.0 (RU) & NFC
DevBy. Apple Watch Kit 1.0 (RU) & NFCVladimir Hudnitsky
 
Latest wireless technology
Latest wireless technologyLatest wireless technology
Latest wireless technologynurmeen1
 
RFID2015_NFC-WISP_public(delete Disney research)
RFID2015_NFC-WISP_public(delete Disney research)RFID2015_NFC-WISP_public(delete Disney research)
RFID2015_NFC-WISP_public(delete Disney research)Yi (Eve) Zhao
 
CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...
CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...
CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...Pierre Metivier
 
NFC(Near Field Communication)
NFC(Near Field Communication)NFC(Near Field Communication)
NFC(Near Field Communication)ADARSH KUMAR
 
Near field Technology
Near field TechnologyNear field Technology
Near field Technologyshrien_sahi
 
RFID: a condensed overview
RFID: a condensed overviewRFID: a condensed overview
RFID: a condensed overviewMaarten Weyn
 
NFC and the Growth of Connected Consumer Devices
NFC and the Growth of Connected Consumer DevicesNFC and the Growth of Connected Consumer Devices
NFC and the Growth of Connected Consumer DevicesNFC Forum
 
Near field communication(NFC)
Near field communication(NFC)Near field communication(NFC)
Near field communication(NFC)ronak1207
 
Near field communication and RFID - opening for new business
Near field communication and RFID - opening for new businessNear field communication and RFID - opening for new business
Near field communication and RFID - opening for new businessJosef Noll
 

Viewers also liked (20)

NFC technical presentation
NFC technical presentationNFC technical presentation
NFC technical presentation
 
Wireless sensor networks using android virtual devices and near field
Wireless sensor networks using android virtual devices and near fieldWireless sensor networks using android virtual devices and near field
Wireless sensor networks using android virtual devices and near field
 
The Eclipse M2M IWG and Standards for the Internet of Things
The Eclipse M2M IWG and Standards for the Internet of ThingsThe Eclipse M2M IWG and Standards for the Internet of Things
The Eclipse M2M IWG and Standards for the Internet of Things
 
NFC Technology
NFC TechnologyNFC Technology
NFC Technology
 
Near field communication (nfc) technology
Near field communication (nfc) technologyNear field communication (nfc) technology
Near field communication (nfc) technology
 
Near Field Communication (NFC)
Near Field Communication (NFC)Near Field Communication (NFC)
Near Field Communication (NFC)
 
geecon 2013 - Standards for the Future of Java Embedded
geecon 2013 - Standards for the Future of Java Embeddedgeecon 2013 - Standards for the Future of Java Embedded
geecon 2013 - Standards for the Future of Java Embedded
 
DevBy. Apple Watch Kit 1.0 (RU) & NFC
DevBy. Apple Watch Kit 1.0 (RU) & NFCDevBy. Apple Watch Kit 1.0 (RU) & NFC
DevBy. Apple Watch Kit 1.0 (RU) & NFC
 
Latest wireless technology
Latest wireless technologyLatest wireless technology
Latest wireless technology
 
NFC and Android applications
NFC and Android applicationsNFC and Android applications
NFC and Android applications
 
RFID2015_NFC-WISP_public(delete Disney research)
RFID2015_NFC-WISP_public(delete Disney research)RFID2015_NFC-WISP_public(delete Disney research)
RFID2015_NFC-WISP_public(delete Disney research)
 
CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...
CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...
CONNECTED OBJECTS - how NFC technology enables a more environmentally-friendl...
 
NFC(Near Field Communication)
NFC(Near Field Communication)NFC(Near Field Communication)
NFC(Near Field Communication)
 
Near field Technology
Near field TechnologyNear field Technology
Near field Technology
 
RFID: a condensed overview
RFID: a condensed overviewRFID: a condensed overview
RFID: a condensed overview
 
NFC and the Growth of Connected Consumer Devices
NFC and the Growth of Connected Consumer DevicesNFC and the Growth of Connected Consumer Devices
NFC and the Growth of Connected Consumer Devices
 
Nfc
NfcNfc
Nfc
 
Near field communication(NFC)
Near field communication(NFC)Near field communication(NFC)
Near field communication(NFC)
 
Near field communication and RFID - opening for new business
Near field communication and RFID - opening for new businessNear field communication and RFID - opening for new business
Near field communication and RFID - opening for new business
 
Nfc ppt
Nfc pptNfc ppt
Nfc ppt
 

Similar to Ultrabook Development Using Sensors - Intel AppLab Berlin

Intel SoC as a Platform to Connect Sensor Data to AWS
Intel SoC as a Platform to Connect Sensor Data to AWSIntel SoC as a Platform to Connect Sensor Data to AWS
Intel SoC as a Platform to Connect Sensor Data to AWSAmazon Web Services
 
Introduction ciot workshop premeetup
Introduction ciot workshop premeetupIntroduction ciot workshop premeetup
Introduction ciot workshop premeetupBeMyApp
 
Machine Learning and Analytics in the Cloud on IoT Data
Machine Learning and Analytics in the Cloud on IoT DataMachine Learning and Analytics in the Cloud on IoT Data
Machine Learning and Analytics in the Cloud on IoT DataIntel® Software
 
Preparing the Data Center for the Internet of Things
Preparing the Data Center for the Internet of ThingsPreparing the Data Center for the Internet of Things
Preparing the Data Center for the Internet of ThingsIntel IoT
 
Utilisation des capteurs dans les applications windows 8
Utilisation des capteurs dans les applications windows 8Utilisation des capteurs dans les applications windows 8
Utilisation des capteurs dans les applications windows 8Intel Developer Zone Community
 
Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...
Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...
Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...Intel IT Center
 
Industrial IoT with Intel IoT Gateway & Octoblu
Industrial IoT with Intel IoT Gateway & OctobluIndustrial IoT with Intel IoT Gateway & Octoblu
Industrial IoT with Intel IoT Gateway & OctobluIntel® Software
 
The MRAA and UPM Middleware Libraries
The MRAA and UPM Middleware LibrariesThe MRAA and UPM Middleware Libraries
The MRAA and UPM Middleware LibrariesIntel® Software
 
In The Trenches Optimizing UE4 for Intel
In The Trenches Optimizing UE4 for IntelIn The Trenches Optimizing UE4 for Intel
In The Trenches Optimizing UE4 for IntelIntel® Software
 
Gary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year Horizon
Gary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year HorizonGary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year Horizon
Gary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year HorizonAugmentedWorldExpo
 
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Software
 
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013Intel Software Brasil
 
Droidcon2013 x86phones weggerle_taubert_intel
Droidcon2013 x86phones weggerle_taubert_intelDroidcon2013 x86phones weggerle_taubert_intel
Droidcon2013 x86phones weggerle_taubert_intelDroidcon Berlin
 
Алексей Слепцов_"Интернет вещей. Что это и для чего"
Алексей Слепцов_"Интернет вещей. Что это и для чего"Алексей Слепцов_"Интернет вещей. Что это и для чего"
Алексей Слепцов_"Интернет вещей. Что это и для чего"GeeksLab Odessa
 
Make your unity game faster, faster
Make your unity game faster, fasterMake your unity game faster, faster
Make your unity game faster, fasterIntel® Software
 
“Federated Edge Computing System Architectures,” a Presentation from Intel
“Federated Edge Computing System Architectures,” a Presentation from Intel“Federated Edge Computing System Architectures,” a Presentation from Intel
“Federated Edge Computing System Architectures,” a Presentation from IntelEdge AI and Vision Alliance
 
Intel_Solid State Discs and Wireless Solutions in Embedded Devices
Intel_Solid State Discs and Wireless Solutions in Embedded DevicesIntel_Solid State Discs and Wireless Solutions in Embedded Devices
Intel_Solid State Discs and Wireless Solutions in Embedded DevicesIşınsu Akçetin
 

Similar to Ultrabook Development Using Sensors - Intel AppLab Berlin (20)

Intel SoC as a Platform to Connect Sensor Data to AWS
Intel SoC as a Platform to Connect Sensor Data to AWSIntel SoC as a Platform to Connect Sensor Data to AWS
Intel SoC as a Platform to Connect Sensor Data to AWS
 
Introduction ciot workshop premeetup
Introduction ciot workshop premeetupIntroduction ciot workshop premeetup
Introduction ciot workshop premeetup
 
Machine Learning and Analytics in the Cloud on IoT Data
Machine Learning and Analytics in the Cloud on IoT DataMachine Learning and Analytics in the Cloud on IoT Data
Machine Learning and Analytics in the Cloud on IoT Data
 
Preparing the Data Center for the Internet of Things
Preparing the Data Center for the Internet of ThingsPreparing the Data Center for the Internet of Things
Preparing the Data Center for the Internet of Things
 
Utilisation des capteurs dans les applications windows 8
Utilisation des capteurs dans les applications windows 8Utilisation des capteurs dans les applications windows 8
Utilisation des capteurs dans les applications windows 8
 
Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...
Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...
Unveiling the Early Universe with Intel Xeon Processors and Intel Xeon Phi at...
 
Industrial IoT with Intel IoT Gateway & Octoblu
Industrial IoT with Intel IoT Gateway & OctobluIndustrial IoT with Intel IoT Gateway & Octoblu
Industrial IoT with Intel IoT Gateway & Octoblu
 
The MRAA and UPM Middleware Libraries
The MRAA and UPM Middleware LibrariesThe MRAA and UPM Middleware Libraries
The MRAA and UPM Middleware Libraries
 
Overview Intel AppUp developer program
Overview Intel AppUp developer programOverview Intel AppUp developer program
Overview Intel AppUp developer program
 
Ultrabook Sensoren Beispiele
Ultrabook Sensoren BeispieleUltrabook Sensoren Beispiele
Ultrabook Sensoren Beispiele
 
In The Trenches Optimizing UE4 for Intel
In The Trenches Optimizing UE4 for IntelIn The Trenches Optimizing UE4 for Intel
In The Trenches Optimizing UE4 for Intel
 
Gary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year Horizon
Gary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year HorizonGary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year Horizon
Gary Brown (Movidius, Intel): Deep Learning in AR: the 3 Year Horizon
 
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
Intel® Open Image Denoise: Optimized CPU Denoising | SIGGRAPH 2019 Technical ...
 
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
Intel® Trace Analyzer e Collector (ITAC) - Intel Software Conference 2013
 
Droidcon2013 x86phones weggerle_taubert_intel
Droidcon2013 x86phones weggerle_taubert_intelDroidcon2013 x86phones weggerle_taubert_intel
Droidcon2013 x86phones weggerle_taubert_intel
 
Алексей Слепцов_"Интернет вещей. Что это и для чего"
Алексей Слепцов_"Интернет вещей. Что это и для чего"Алексей Слепцов_"Интернет вещей. Что это и для чего"
Алексей Слепцов_"Интернет вещей. Что это и для чего"
 
Make your unity game faster, faster
Make your unity game faster, fasterMake your unity game faster, faster
Make your unity game faster, faster
 
“Federated Edge Computing System Architectures,” a Presentation from Intel
“Federated Edge Computing System Architectures,” a Presentation from Intel“Federated Edge Computing System Architectures,” a Presentation from Intel
“Federated Edge Computing System Architectures,” a Presentation from Intel
 
Intel_Solid State Discs and Wireless Solutions in Embedded Devices
Intel_Solid State Discs and Wireless Solutions in Embedded DevicesIntel_Solid State Discs and Wireless Solutions in Embedded Devices
Intel_Solid State Discs and Wireless Solutions in Embedded Devices
 
MeeGo Overview DeveloperDay Munich
MeeGo Overview DeveloperDay MunichMeeGo Overview DeveloperDay Munich
MeeGo Overview DeveloperDay Munich
 

More from Intel Developer Zone Community

Intro into Developing Ultrabook Applications - Intel AppLab Berlin
Intro into Developing Ultrabook Applications - Intel AppLab BerlinIntro into Developing Ultrabook Applications - Intel AppLab Berlin
Intro into Developing Ultrabook Applications - Intel AppLab BerlinIntel Developer Zone Community
 
Ultrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab BerlinUltrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab BerlinIntel Developer Zone Community
 
Intel Ultrabook Software Development Tools - Intel AppLab Berlin
Intel Ultrabook Software Development Tools - Intel AppLab BerlinIntel Ultrabook Software Development Tools - Intel AppLab Berlin
Intel Ultrabook Software Development Tools - Intel AppLab BerlinIntel Developer Zone Community
 
MeeGo AppLab Desktop Summit 2011 - Submission and Validation
MeeGo AppLab Desktop Summit 2011 - Submission and ValidationMeeGo AppLab Desktop Summit 2011 - Submission and Validation
MeeGo AppLab Desktop Summit 2011 - Submission and ValidationIntel Developer Zone Community
 

More from Intel Developer Zone Community (18)

Intel Developer Zone MeetUp Intro
Intel Developer Zone MeetUp IntroIntel Developer Zone MeetUp Intro
Intel Developer Zone MeetUp Intro
 
Perceptual Computing
Perceptual ComputingPerceptual Computing
Perceptual Computing
 
Intel® Developer Zone
Intel® Developer ZoneIntel® Developer Zone
Intel® Developer Zone
 
Gestion du tactile sous windows 8
Gestion du tactile sous windows 8Gestion du tactile sous windows 8
Gestion du tactile sous windows 8
 
Android and Intel Inside
Android and Intel InsideAndroid and Intel Inside
Android and Intel Inside
 
Intel Ultrabook AppLab - ALL Slides
Intel Ultrabook AppLab - ALL SlidesIntel Ultrabook AppLab - ALL Slides
Intel Ultrabook AppLab - ALL Slides
 
Intro into Developing Ultrabook Applications - Intel AppLab Berlin
Intro into Developing Ultrabook Applications - Intel AppLab BerlinIntro into Developing Ultrabook Applications - Intel AppLab Berlin
Intro into Developing Ultrabook Applications - Intel AppLab Berlin
 
Ultrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab BerlinUltrabook Development Using Touch - Intel Ultrabook AppLab Berlin
Ultrabook Development Using Touch - Intel Ultrabook AppLab Berlin
 
Intel Ultrabook Software Development Tools - Intel AppLab Berlin
Intel Ultrabook Software Development Tools - Intel AppLab BerlinIntel Ultrabook Software Development Tools - Intel AppLab Berlin
Intel Ultrabook Software Development Tools - Intel AppLab Berlin
 
Ultrabook Developer Resources - Intel AppLab Berlin
Ultrabook Developer Resources - Intel AppLab BerlinUltrabook Developer Resources - Intel AppLab Berlin
Ultrabook Developer Resources - Intel AppLab Berlin
 
The New Windows UI - Intel Ultrabook AppLab Berlin
The New Windows UI - Intel Ultrabook AppLab BerlinThe New Windows UI - Intel Ultrabook AppLab Berlin
The New Windows UI - Intel Ultrabook AppLab Berlin
 
Intel AppUp Webinar Italiano General Information
Intel AppUp Webinar Italiano General InformationIntel AppUp Webinar Italiano General Information
Intel AppUp Webinar Italiano General Information
 
Intel AppUp Webinar Italiano html5
Intel AppUp Webinar Italiano html5Intel AppUp Webinar Italiano html5
Intel AppUp Webinar Italiano html5
 
MeeGo AppLab Desktop Summit 2011 - Submission and Validation
MeeGo AppLab Desktop Summit 2011 - Submission and ValidationMeeGo AppLab Desktop Summit 2011 - Submission and Validation
MeeGo AppLab Desktop Summit 2011 - Submission and Validation
 
MeeGo AppLab Desktop Summit 2011 - AppUp
MeeGo AppLab Desktop Summit 2011 - AppUpMeeGo AppLab Desktop Summit 2011 - AppUp
MeeGo AppLab Desktop Summit 2011 - AppUp
 
Intel AppUp™ SDK Suite 1.2 for MeeGo
Intel AppUp™ SDK Suite 1.2 for MeeGoIntel AppUp™ SDK Suite 1.2 for MeeGo
Intel AppUp™ SDK Suite 1.2 for MeeGo
 
Getting Your Windows and MeeGo Apps into AppUp
Getting Your Windows and MeeGo Apps into AppUpGetting Your Windows and MeeGo Apps into AppUp
Getting Your Windows and MeeGo Apps into AppUp
 
Writing applications for multiple stores on the WeTab
Writing applications for multiple stores on the WeTabWriting applications for multiple stores on the WeTab
Writing applications for multiple stores on the WeTab
 

Recently uploaded

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 

Recently uploaded (20)

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 

Ultrabook Development Using Sensors - Intel AppLab Berlin

  • 1. Application Development using Sensors Intel® Corporation
  • 2. Legal Disclaimer • INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. EXCEPT AS PROVIDED IN INTEL’S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL IS CLAIMS ANY EXPRESS OR IMPLIED WARRANTY RELATING TO SALE AND/OR USE OF INTEL PRODUCTS, INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT, OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in medical, life-saving, life sustaining, critical control or safety systems, or in nuclear facility applications. • Intel products may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request. • Intel may make changes to dates, specifications, product descriptions, and plans referenced in this document at any time, without notice. • This document may contain information on products in the design phase of development. The information here is subject to change without notice. Do not finalize a design with this information. • Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them. • Intel Corporation may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights that relate to the presented subject matter. The furnishing of documents and other materials and information does not provide any license, express or implied, by estoppel or otherwise, to any such patents, trademarks, copyrights, or other intellectual property rights. • Wireless connectivity and some features may require you to purchase additional software, services or external hardware. • Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance of Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect actual performance. Buyers should consult other sources of information to evaluate the performance of systems or components they are considering purchasing. For more information on performance tests and on the performance of Intel products, visit Intel Performance Benchmark Limitations • Intel, the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Copyright © 2011 Intel Corporation. All rights reserved. Intel Confidential - Customer NDA Use Only Copyright© 2012, Intel Corporation. All rights reserved. *Other * Other Names and Brands maybe claimed as the property of others.names are the property features are preliminary and subject to change without notice. brands and All dates, plans and of their respective owners 2
  • 3. Agenda • Overview of available sensors • Using sensors in a Windows 8* application - In C++ desktop applications, using COM interface - In C++ or C#/.NET Windows 8* store and desktop applications, using WinRT APIs • Considerations on Efficiency Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 3
  • 4. Who am I ? Xavier Hallade (@ph0b) Technical Marketing Engineer at Intel Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 4
  • 5. Sensors OVERVIEW OF AVAILABLE SENSORS Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 5
  • 6. Available Sensors Compass Accelerometer Gyroscope GPS Ambient Light NFC + with Sensor Fusion: Inclinometer, Orientation, SimpleOrientation • Sensor Fusion : virtual sensors created by combining data from compass, accelerometer and gyroscope • Ambient Light, GPS, 3D Motion and orientation sensors are all mandatory on Windows 8* Tablets and Convertibles • Applications can subscribe to sensor events, set callbacks or directly poll their current state.
  • 7. Orientation and Motion detection • Gyrometer returns yaw, pitch and roll velocities • Accelerometer returns acceleration along x, y and z, and optionally a Shake event • Simple Orientation : returns device orientation into one of four quadrants, face-up, or face-down • Orientation Sensor and inclinometer both returns the complete device orientation – Inclinometer returns yaw, pitch, and roll angles – Orientation Sensor returns a quaternion as well as a 3x3 orientation matrix
  • 8. Orientation and Motion detection same convention as on Android and in the HTML5 specification 0.0° ≤ Yaw < 360.0° -180.0° ≤ Pitch < 180.0° -90.0° ≤ Roll < 90.0°
  • 9. Ambient Light • Can be used to adapt application interface depending on light conditions : contrast, font size • Screen brightness control should be handled by the operating system. Lighting condition Illuminance (lux) Pitch black 1 Very dark 10 Dark indoors 50 Dim indoors 100 Normal indoors 300 Bright indoors 1,000 Dim outdoors 5,000 Cloudy outdoors 30,000 Direct sunlight 100,000
  • 10. Location Returns latitude, longitude: - using Wi-Fi if available - using IP Address otherwise - using GPS if available and desired accuracy is set on High - then it can also return Altitude, Speed and Heading Depending on user’s choice, its use can be denied. A Windows 8* store app has to declare the “location” capability in its manifest.
  • 11. Near Field Communication • Short range (<4cm) • Contactless • Used between active and/or passive devices – Active: Smartphone, Tablet, Ultrabook™… – Passive: Tags, Smart cards… • Small amount of data, low data transfer rate • Easy to use, feels instantaneous (<1/10s) -> Great user experience !
  • 12. Near Field Communication • Pairing – with Bluetooth* peripherals, at the OS level – with another running application, by establishing a BT or Wi-Fi direct socket, at the application level • Short data read/write on NFC tags • Short data exchange with active devices – Sharing URIs, contacts, positions – Secure transactions
  • 13. NFC messages Protocol Pub. Sub. Message contents Windows X X binary data. WindowsUri X X UTF-16LE encoded string that is a URI. use PublishUriMessage WindowsMime X X message data of a specific mime type. For example, "WindowsMime.image/jpeg". You can subscribe to "WindowsMime" message without specifying the mime type. If so, the first 256 bytes received is the ASCII mime type string. Windows:WriteTag X Windows message to be written to a static tag. WindowsUri:WriteTag X WindowsUri message to be written to a static tag. WindowsMime:Write X WindowsMime message to be written to a static tag. Tag Example, “WindowsMime:WriteTag.image/jpeg” LaunchApp:WriteTag X Write a tag that can be used to launch a specific app. more information on msdn. WriteableTag X if a writeable tag is brought in to proximity, a proximity message is received that contains an int32 indicating the maximum writeable size.
  • 14. NFC messages Windows messages are fully compatible with NDEF messages, but you can also directly manipulate them : Protocol Pub. Sub. Message contents NDEF X X properly formatted NDEF records. NDEF:ext X application defined NDEF records (TNF field value of 0x04). NDEF:MIME X properly formatted NDEF mime message (TNF field value of 0x02). For example, "NDEF:MIME.image/jpeg". NDEF:URI X properly formatted NDEF message of a type defined by a URI namespace (TNF field value of 0x03). For example, "NDEF:URI.http://contoso.com/sometype". NDEF:wkt X properly formatted NDEF message of a type defined by the NFC forum (TNF field value of 0x01).An example of this type is "NDEF:wkt.U" for the well known type of URI. NDEF:WriteTag X message data that should be written to an NFC forum standard static tag. NDEF:Unknown X untyped NDEF message (TNF field value of 0x05).
  • 15. Sensors LET’S DIVE INTO SOME CODE ! Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 15
  • 16. Sensors and Location Platform using COM interface FROM C++ Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 16
  • 17. Sensors and Location Platform • Same interface as on Windows 7 – Sensor fusion available through new GUIDs • Sensor manager controls sensors – Use sensor manager to get to sensors – Notifies when a sensor connects • Sensors report data, changes in state and disconnection • Access both via COM interfaces – Use API to communicate to sensors – Sensor events handled using callbacks – API reference at msdn.microsoft.com/en- us/library/windows/desktop/dd318953%28v=vs.85%29.aspx Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 17
  • 18. COM: Connect to sensor manager // Create the sensor manager • Access to sensors is through the sensor manager ISensorManager pSensorManager; hr = CoCreateInstance(CLSID_SensorManager, • Group policy settings may deny NULL, CLSCTX_INPROC_SERVER, IID_PPV_ARGS(&pSensorManager)); access to the system sensors if(hr == HRESULT_FROM_WIN32 (ERROR_ACCESS_DISABLED_BY_POLICY)) { // Unable to retrieve sensor manager due // to group policy settings. // Alert the user. } (Source: Microsoft) Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 18
  • 19. COM: Retrieve a sensor object // Get the sensor collection • Request sensors by category, type hr = pSensorManager->GetSensorsByCategory( SENSOR_CATEGORY_ALL, or ID &pSensorColl); if(SUCCEEDED(hr)) { ULONG ulCount = 0; // Verify that the collection contains at // least one sensor hr = pSensorColl->GetCount(&ulCount); if(SUCCEEDED(hr)) { if(ulCount < 1) { • Request permission to use the wprintf_s(L"nNo sensors of the requested category.n"); hr = E_UNEXPECTED; sensor(s) } else { • Windows 8 will open a dialog // Request permissions for all sensors // in the collection box to ask the user hr = pSensorManager-> RequestPermissions(0, pSensorColl, • Granting permission triggers } FALSE); … the OnStateChanged event (Source: Microsoft) Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 19
  • 20. COM: Sensor event callback class CMyEvents : public ISensorEvents • Receive event notifications by { implementing required COM public: interfaces STDMETHODIMP QueryInterface(…) {…} STDMETHODIMP_(ULONG) AddRef() {…} • Sensor events require STDMETHODIMP_(ULONG) Release() {…} ISensorEvents // ISensorEvents methods. // STDMETHODIMP OnEvent(…) {…} • Sensor Manager events require STDMETHODIMP OnDataUpdated(…) {…} STDMETHODIMP OnLeave(…) {…} ISensorManagerEvents STDMETHODIMP OnStateChanged(…) {…} … (Source: Microsoft) Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 20
  • 21. COM: Start receiving events // Create an instance of the event • To start receiving events provide // class the sensor with a pointer to your pEventClass = new(std::nothrow) CMyEvents(); callback if(SUCCEEDED(hr)) • To stop receiving events call { // Retrieve the pointer to the SetEventSink with a parameter of // callback interface NULL hr = pEventClass->QueryInterface( IID_PPV_ARGS(&pMyEvents)); } if(SUCCEEDED(hr)) { // Start receiving events hr = pSensor-> SetEventSink(pMyEvents); } (Source: Microsoft) Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 21
  • 22. Ambient Light Sensor DEMO Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 22
  • 23. Using WinRT Sensors and Location API FROM C# AND C++/CX Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 23
  • 24. WinRT API • Windows.Sensors. • Accelerometer • Gyrometer • Inclinometer • OrientationSensor • SimpleOrientationSensor • Compass • LightSensor • Windows.Networking.Proximity.ProximityDevice (NFC) • Windows.Device.Geolocation (GPS) Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
  • 25. Using the WinRT API WinRT Sensors and Location APIs are available to Windows 8* Desktop applications You need to use WinRT Windows MetaData files : • Platform.winmd: C:Program Files (x86)Microsoft SDKsWindowsv8.0ExtensionSDKsMicrosoft.VCLi bs11.0ReferencesCommonConfigurationneutral • Windows.winmd: C:Program Files (x86)Windows Kits8.0ReferencesCommonConfigurationNeutral How ? Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
  • 26. WinRT From Desktop (C#) Unload your C# Project Manually edit the .csproj file to add : <PropertyGroup> <TargetPlatformVersion>8.0</TargetPlatformVersion> </PropertyGroup> Reload the project Add Windows.winmd and Platform.winmd as references from their respective locations Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
  • 27. WinRT From Desktop (C++) In your project properties, in C/C++->General: • Set “Consume Windows Runtime Extension” on Yes (/ZW) • Add Windows.winmd and Platform.winmd paths to “Additional #using Directories” In your source code, add : #using <Windows.winmd> #using <Platform.winmd> Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
  • 28. WinRT Sensor API No need for a sensor manager: 1 – Retrieve the default sensor/device using GetDefault() 2 – Set the ReportInterval 3 – Add a delegate to ReadingChanged event Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners
  • 29. WinRT Sensor API _accelero = Accelerometer.GetDefault(); if (_accelero != null) { _accelero.ReportInterval = 50 <= _accelero.MinimumReportInterval ? _accelerometer.MinimumReportInterval : 50; //Register for reading changed events _accelero.ReadingChanged += (Accelerometer s, AccelerometerReadingChangedEventArgs args) => { //use e.Data.AccelerationX/Y/Z }; } C# Accelerometer ^accelero = Accelerometer::GetDefault(); if(accelero!=nullptr) { accelero->ReportInterval = 50 <= accelero->MinimumReportInterval ? accelero- >MinimumReportInterval : 50; accelero->ReadingChanged += ref new TypedEventHandler<Accelerometer^, AccelerometerReadingChangedEventArgs^>( [](Object^ sender, AccelerometerReadingChangedEventArgs^ e) { //read e->Data->AccelerationX/Y/Z }); } Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners C++
  • 30. C#/WPF Accelerometer Demo • Ellipse (ball) drawn on a canvas • Accelerometer data is used to update X/Y/Z display and location of ball • Data is read using accelerometer events in conjunction with a timer to move the ball Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 30
  • 31. C#/WPF NFC DEMO • Subscribe to incoming WindowsURI messages • Publish a WindowsURI message to any active device • Write that message to any writable tag Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 31
  • 32. USING SENSORS EFFICIENTLY Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 32
  • 33. General Considerations • The effects of applications on power use • Both idle workloads and active workloads • The rules of power management – Computational efficiency – Maximize idle – Data efficiency – Power-aware behavior • Align, coalesce or batch activity whenever possible Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 33
  • 34. Regarding Sensors • Do not set a small ReportInterval if your application doesn’t need it • Avoid periodic registry or disk accesses in order to let the hard disk spin down • Avoid status polling, statistics & background bookkeeping • Avoid using sensors when application is not active • Consider using accelerometer or gyroscope alone if full orientation is not needed. Sensors objects in Sensors API: At least one client connected Hardware: Accelerometer Gyroscope Inclinometer Compass Device Orientation Accelerometer On Off On On On Gyro Off On On On On Magnetometer Off Off On On On Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 34
  • 35. Advanced : Context/power-aware behavior • Handling sleep transitions seamlessly – Saving an restoring state – Stopping ongoing activity prior to sleeping – Closing open resources & disconnecting communications • Respond/adapt to system power events – Switching from AC to battery; low battery status • Scale behavior based on power state • Context awareness toolkits – software.intel.com/en-us/mobility – softwarecommunity.intel.com/articles/eng/1070.htm – softwarecommunity.intel.com/articles/eng/1026.htm Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 35
  • 36. Intel Software Development Products Intel Power Tools • Intel® Power Checker – Reveals how much power your application is using – software.intel.com/partner/app/software- assessment/?cid=sw:ubpower004 • Energy-Efficient Software Checklist – software.intel.com/en-us/articles/energy- efficient-software-checklist/ Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 36
  • 37. References • Intel® Software Network – software.intel.com • COM Sensor API – msdn.microsoft.com/en-us/library/windows/desktop/dd318953(v=vs.85).aspx • COM Location API – msdn.microsoft.com/en-us/library/dd464636(v=VS.85).aspx • WinRT Sensors API – msdn.microsoft.com/en-us/library/windows/apps/br206408.aspx • WinRT Geolocation API – msdn.microsoft.com/en-us/library/windows/apps/windows.devices.geolocation.aspx • WinRT ProximityAPI – msdn.microsoft.com/en-us/library/windows/apps/windows.networking.proximity.aspx • Detecting Ultrabook Sensors – software.intel.com/en-us/blogs/2012/07/26/detecting-ultrabook-sensors • Ultrabook and Tablet Windows 8* Sensors Development Guide – software.intel.com/en-us/articles/ultrabook-and-tablet-windows-8-sensors-development-guide/ • Intel® Energy Efficient Software Guidelines – software.intel.com/partner/assets/pdf/misc/Energy_Efficient_Software_Guidelines_v3_4_10_11.pdf Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 37
  • 38. Summary – sensors are a natural way to interact with end users – Desktop apps can utilize them as well as Windows 8* Store Apps – Utilize efficient designs and coding practices to save battery life Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 38
  • 39. Q&A Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 39
  • 40. END • START OF NEXT SESSION IN 15 MINS. • Ultrabook Developer Resources Copyright(C) 2012 Intel Corporation. All rights reserved. *Other brands and names are properties of their respective owners. 40