Leveraging IVI Platform for Realizing V2X Use Cases

Purnendu Sinha Tizen IVI Team Samsung R&D India, Bangalore

Email: [email protected] Outline

 V2X Applications and their Requirements  Use Cases  Introduction to Tizen IVI  Benefits Tizen IVI offers  Realizing V2X Apps on Tizen IVI  Examples  Conclusion

All examples presented here are for illustration purposes only! V2X Applications…

Navigation/LBS/PoI • GPS navigation providing info/content to the driver/ passenger

Maintenance/Optimization • Remote diagnostic application • Telemetry to collect data to fine tune car performance monitoring Commerce Safety/Security • • In-vehicle tracking system system (charging tolls, • Automatic security distance parking fees) maintaining system • Premiums for car insurance correlated to driving patterns Classes of V2X Applications

 Cooperative Road Safety – Primarily refers to ultra- critical safety requirements; ◦ example includes collision avoidance, pre-crash sensing, emergency hard-braking, etc.

 Cooperative traffic efficiency – deals with traffic fluidity; ◦ example includes traffic light optimal speed advisory, congestions alerts and new route suggestions, etc.

 Cooperative local services – provides on-demand information on commercial/non-commercial stuffs; ◦ example includes maps update, e-advertising, media download, etc. ITS Classes and Requirements Collaborative Driving with V2V

Location-based service Road Advisory Situation-aware Alerts

Smart OBU Smart OBU in in Vehicle #1 /LTE Vehicle #2 Wi-Fi Direct • Travel/hazardous situation advisory • Traffic optimization 3G/LTE • Fleet Management Wi-Fi Direct Smart OBU in 3G/LTE Wi-Fi Direct • Emergency/disaster management Vehicle #3

Internet Connectivity Server on the Internet Road Side Unit

Forms an ad-hoc network of vehicles Advanced Driver Assistance Apps

Cloud-based Advisory

Sensors

Motion or, could be Planning connected via 3G/LTE CAN bus

ETH Gateway Smart OBU

Integrated ADAS apps Vehicle Cloud Connectivity

Control

Vehicle Comm. Bus (e.g., CAN) (e.g., Bus Comm. Vehicle -

In Actuators

• Intersection cross traffic collision warning • Traffic congestion warning • Enhanced route/navigation guidance Tizen IVI Architecture

Web Applications Native Applications

Web Framework Native Framework Net/ Telephony/ Media Messaging … W3C/ Device Web RT Graphics/UI HTML5 APIs App Security/ … System Services Location

Core Automotive AMB Graphics App F/W Multimedia Location Messaging Web & UI

Security System Base Connectivity Telephony PIM

Linux Kernel and Device Drivers Hardware Benefits Tizen IVI Offers  Telematics: ◦ Real time vehicle data collected using Automotive Message Broker (AMB) can be sent to a service provider using 3G/ LTE ◦ GPS logs can be updated via 3G/4G LTE using Location and Telephony Services ◦ Security based on SSL and SMACK  Navigation: (+) ◦ Cloud connectivity ◦ Audio policy management using Murphy. ◦ Tethering : USB, and Wi-Fi/Wi-Fi Direct ◦ Web application development using W3C/HTML5 ◦ Native C/C++ application development

Example 1 A Typical Web Application Scenario

Private/ Mapping Public Server Cloud Server

3G/LTE Network

OBU An Emergency Response Web Application

• Detect that a crash has occurred • Determine the location of the crash • Send out an Emergency SMS to the pre-specified emergency numbers about the crash with location information Tizen Vehicle APIs  Provides getting and setting data items  Mechanisms for event based updates to requested data items  Implements a method for a Web application to query for supported data items

 get(eventlist, successCB, errorCB) • Retrieve the specified data values, or all data values if blank  set(eventlist, valuelist, successCB, errorCB) • Set the specified data values  getSupportedEventTypes(type, writeable, successCB, errorCB) • Retrieve the list of events available on the platform  subscribe(eventlist, successCB, errorCB) • Subscribe to update events for the specified data items  unsubscribe(eventlist, successCB, errorCB) • Unsubscribe from update events for the specified data items

Source: W3C Web and Automotive Workshop, Nov 2012 ER Web App – Architecture

Application 1 Application n

Web Framework Device APIs W3C/HTML5 BT

[GeoLocation APIs] Call Msg

websocket connection

Core AMBD Location Messaging

Connectivity OBD Plug-in GPSD ConnMan

OBD

Kernel Two alternative for getting location info, via:  Location services  AMBD GeoLocation APIs are used…

Server Web App AMBD Location manager

document.addEventListener("driving _safety_airbag_status", airbag_deployment_event);

driving_safety_airbag_status=1

navigator.geolocation.getCurr entPosition(successCallback, errorCallback);

Latitude=53.574824 longitude=-2.495377 Report Crash at Latitude=53.574824 longitude=-2.495377

Ref: https://developer.tizen.org/documentation/dev-guide AMB’s APIs are used…

Server Web App AMBD

document.addEventListener("driving_ OBD Plugin for AMBD safety_airbag_status", airbag_deployment_event);

void OBD2Source::getPropertyAsync( driving_safety_airbag_status=1 AsyncPropertyReply *reply);

vehicle.set("running_status_ GPSD Plugin for AMBD position", SuccessCB, Fail CB);

static int Latitude=53.574824 longitude=- updateGpsposition(gpointer data); 2.495377 Report Crash at Latitude=53.574824 longitude=- 2.495377

Ref: https://developer.tizen.org/documentation/dev-guide Example 2 Re-Routing under Crash Notification

 Gets the crash information from the cloud server.  It then calls ◦ the geo location API’s and gets the current location of the vehicle from the location manager. ◦ the mapping API’s to calculate the distance to the crash location and displays it. ◦ the rerouting API’s from the mapping service rerouting by avoiding the crash location.  Note: the MapQuest open data API’s are used. Re-routes the Path

Ref: developer.mapquest.com Demo – Some Screenshots Example 3 V2X via WiFi Direct Leveraging Tizen IVI for WiFi Direct

WiFi Direct Applications WiFi Direct Services

WiFi Direct Manager

App F/W DHCP P2P Supplicant

WiFi Direct Device WiFi Direct APIs Usage…

Car 1 Car 3 Car 2 Hot-Spot

Activate Activate Activate Scan Scan Create_Autonomous_Group Get_Local_Device_Info Get_Group_Owner_info Get_Group_Client_Info_List Get_Operating_Channel Get_Operating_Channel Get_Operating_Channel Connect Connect Connect

Communicate Communicate Communicate

Leave_Group Disconnect Disconnect Disconnect Deactivate Deactivate Deactivate

Illustration only! How You Could Contribute?

 Download the full source code for your Tizen platform and kernel from URL: https://review.tizen.org/git/  Information on source code Management on Tizen releases can be found at Gerrit: https://review.tizen.org/gerrit  Tizen Build setup OBS: https://build.tizen.org/  Tizen Bug Tracking & Reporting system Jira: https://bugs.tizen.org/jira  IVI images available for both IA and ARM based platforms. Pandaboard: https://download.tizen.org/releases/previews/2.0alpha/ivi-panda/

 For the queries related to IVI Write to: [email protected] Conclusions

 Easy access of vehicle-specific data through platform component  Multiple connectivity options: WiFi/WiFi Direct, Bluetooth, NFC, /3G/4G/LTE  Flexibility in application development – HTML5 or Native Framework

 Virtualization-based solutions may be exploited for road-safety applications (e.g., e-call, collision avoidance)