multi zone application development automotive linux summit
play

Multi-zone application development Automotive Linux Summit Kevron - PowerPoint PPT Presentation

Multi-zone application development Automotive Linux Summit Kevron Rees Fall 2013 Agenda Zone defined Automotive Use-cases that require zones Automotive Message Broker (AMB) AMB Zones API Filling the Use-cases


  1. Multi-zone application development Automotive Linux Summit Kevron Rees Fall 2013

  2. Agenda • Zone defined • Automotive Use-cases that require zones • Automotive Message Broker (AMB) • AMB Zones API • Filling the Use-cases • Security Concerns

  3. Zones Defined Zone is a specific location inside the vehicle.

  4. Zone Defined - ctnd

  5. Use Cases

  6. Use cases The same Seat Position Application running in each zone wants to • set Seat Position. Driver wants to use an Application to activate child lock for his • young child Driver wants to set the temperature for the front of the car in a 3+ • zone vehicle.

  7. Automotive Message Broker Zones API

  8. Automotive Message Broker Zones API AMB provides vehicle data to applications.

  9. AMB Zones API AMB organizes data into logical DBus paths: • /{source_id}/{zone_number}/DataObject AMB provides a “Manager” API to discover the different • DataObjects

  10. AMB - High level

  11. AMB - Manager The manager interface allows applications to: Find sources for a specific vehicle data object (FindObject) • Discover zones for a given vehicle data object • (ZonesForObjectName) Get a vehicle data object from a specific zone (FindObjectForZone) • List all supported vehicle data objects (List) •

  12. AMB - Manager

  13. Zones in AMB 6 Zone “masks” • and a “nozone” •

  14. Common Zone combinations

  15. DataObject example /{source_id}/{zone_number} /DataObject

  16. Where are my zones?

  17. DataObject interface

  18. Use-cases fulfilled!

  19. Use cases The same Seat Position Application running in each zone wants to • set Seat Position. Driver wants to activate child lock for his young child. • Driver wants to set the temperature for the front of the car in a 3+ • zone vehicle.

  20. Use Case: The same Seat Position Application running in each zone wants to set Seat Position. Discover the current application zone {gap}. 1. DBus API: manager.FindObjectForZone(“SeatPosition”, myZone) 2. web api: var seatPosition = tizen.vehicle.get(“SeatPosition”, 3. myZone)

  21. Use Case: Driver wants to activate child lock for his young child DBus API: manager.ZonesForObjectName(“ChildLock”) 1. App Displays the zones to Driver. 2.

  22. Use Case: Driver wants to activate child lock for his young child DBus API: manager.ZonesForObjectName(“ChildLock”) 1. App Displays the zones to Driver. 2. Driver selects a zone 3. obj = manager.FindObjectForZone(“ChildLock”, 10) 4. Driver sets child lock to “true”. 5.

  23. Use Case: Driver wants to set the temperature for the front of the car in a 3+ zone vehicle.

  24. Use Case: Driver wants to set the temperature for the front of the car in a 3+ zone vehicle. var zones = manager.ZonesForObject(“HVAC”) 1. foreach(zone in zones) if(zone & Zone.Front) //set temp 2.

  25. Security We don’t want apps in certain zones to access other zones: • Example: Child zone to set Driver zone’s seat position •

  26. Security Murphy policy manager

  27. Questions Kevron Rees email: kevron.m.rees@intel.com AMB: https://github.com/otcshare/automotive-message-broker AMB Docs: http://otcshare.github.io/automotive-message-broker/html/

Recommend


More recommend