User Tools

Site Tools


agl-roadmap

AGL Roadmap

The official AGL Roadmap is maintained in Jira. This link will show the latest project list in Jira. More information on how AGL uses Jira for project management can be found here.

Roadmap/ Workplan from SAT

Beginning in 2021 Feature Planning by Expert Group will be managed in a Google Sheet.

Updated 01 March 2021

  • Happy Halibut and Itchy Icefish on Yocto 2.6 (thud)
  • Jumping Jellyfish, Kooky Koi, Lucky Lamprey, and Magic Marlin on Yocto 3,1 (dunfell)
  • Candidate Components to move from meta-agl-devel to meta-agl
    • Voice core components
    • PipeWire
    • meta-agl-profile-graphical-html5
  • Video player and in-vehicle video architecture that allow third-party plug-ins, rear view camera, Autonomous vehicles, encrypted data such as widevine (from Google) for Netflix, Hulu, Android, etc.
  • Speech API maturity
  • Instrument Cluster reference device improvements and maturity
  • New reference board for 2020? Switch to RHSA board.
  • Smartphone connectivity - no OS solution that allows integration of proprietary solutions such as CarPlay or Android Auto. We do not have all of the components (video and audio especially) that are required for these integrations. What do we need to add?
  • Long-Term Stable updates, proposal and agreement on a roadmap ot make each UCB components LTS
  • Improve collaboration with other projects to resolve many issues.ELISA, Yocto, OE, CIP
  • Increase production readiness based on OEM and Tier One gap analysis of missing features in UCB.
    • Toyota code drop and other contributions from Tier One and OEM members
  • Increase QA and testing by increasing code coverage of our existing automated and manual tests
  • Apis
    • Define an AGL APIs description format and implement command line tools to generates C/C++ code skeleton and JSON marshaling/un-marshaling and API documentation (SPEC-1903)
  • Signaling
    • Implement a per-signal (or per-class) permission model
    • Define & agree on Key Performance Indicator to ensure QA validation
  • Vehicle to Cloud
    • Propose an identity model to manage local/remote identity to enable smartphone cooperation etc
    • Add MQTT as native transport for AGL
  • Security / Application Framework
    • Finalize and improve token logic in order to support smartphone replication
    • Set-up Firewall (in relation with the App. Framework)
    • Implement Security Manager hosted and maintained by AGL
    • Turn on widget signing and security enforcement
    • App. Framework: allow customers extensions (plugable transport / security / protocol) and make sustainable LTS source code
    • add support for legacy applications (for example support AGL Java client) and add LXC/systemd container to run 3rd party or legacy apps.
    • Implement a secured single port reverse proxy
    • Better handling of reconnections (add connection session persistence, keep alive, …)
    • Move from widget (now deprecated by W3C) to RPM package format for AGL services and applications
    • Add support for Javascript and Python bindings
  • Power resource & boot management
    • Integrate a boot configuration manager to reduce boot time, monitor, select boot mode, …
    • Leverage TPM, trusted apps to secure key AGL services (App Framework, Identity, …)
    • Support sleep on RAM and cryogenics for apps
  • System
    • minimize AGL footprint to support small systems (eg. small ECUs running cluster or telematic AGL profile)
    • Add real time capabilities on APIs (priorities, predictable execution) to guarantee QoS

From Instrument Cluster EG

  • Updated 11 Mar 2021
    • Audio Management (Inter container management)
    • Improvement for DRM lease improvement
      • Maintenance for AGL upstream.
      • Add DRM lease support to AGL compositor
      • V4L2 overlay support
    • Fast Boot Dropped
    • OSS reference implementation for the RTOS combinations.
      • Develop this task with L.F. mentorship in our plan.
      • Implement RTOS with real-time function (ex. CAN communication) and inter OS communication using Bosch iccom.
      • Rename and upstreaming of Bosch iccom.
    • AGL IC integration (Qualified IC profile)
      • Adding board support
        • IC EG members may realize to the qualified ic profile at only one reference board. When we want to add another board, need to another work.
    • OSS assessment
    • New IC components
      • Will be discuss.
    • Non volatile RAM disk development.
      • PRAMFS was stopped maintenance. Need to same solution. In case of IVI PR, that same situations.
      • Non volatile RAM block device?.

From App FW and Security EG

  • Updated 24 Feb 2021
    • Open questions for IVI PR effort
      • Continued use of systemd
      • Linux Security Module for AGL (SMACK, SELinux, AppArmor, or none). None implies leaving the LSM to the product developer. Choosing one effectively locks in the Product developer to a solution.
      • API mechanism. Continue to use OpenAPI or change to a different mechanism for platform services. Ideally we have an IDL that autogenerates the API code. (grpc, OpenAPI, or another)
      • Long-term use of Qt
      • IPC should be defined and selected.
  • Security workflow. Now that we have the building blocks in place, turn on security and put in place a mechanism for developers to sign applications, load them.
  • Changes necessary at binder level for V2C (SSL transport)
  • App Signing and Installation Mechanism
    • Developer workflow is needed for managing keys
    • Development mode and Production mode for app management
  • Secure applications running on a remote device such as mobile phone or tablet that are rendered on the IVI system.
  • App Launcher for web apps and strategy for managing code that can be downloaded on the fly by HTML5
  • App Framework API and strategy to stop non-privilege apps that are currently in the background (e.g., SIGTERM). Do those apps save their state so they can restart quickly?
  • App Framework binder communications shall be able to manage return from sleep mode.
  • App Life Cycle
    • Complete application lifecycle definition to prepare for all apps moving to new app lifecycle in HH
      • Background app awareness on the home screen - (e.g. Current song on media player, phone call in progress, # messages unread)
      • Kill apps individually from life cycle manager
      • Need to define state diagram for app life cycle
  • API for abstraction of hardware mechanism for signing apps, packages, etc.
  • Modularization of application-framework-main to improve key management, maintainability and building across multiple platforms.
    • Split off the keys from the App FW. Currently are here
    • Allow keys to be changed by the device developers - git repo and recipe for keys
    • Library (or binding) to plug in key management to the app FW.
    • Reference implementation will use the file system as the key store. Can be swapped for a trusted environment by a device creator at a later time.
    • Sign at build time in AGL CI system with a check at run time
  • Web Apps/ HTML 5
    • Upstream Chromium Webview the API required by Web Application Manager
    • Simplify the communication between Chromium and WAM
    • Make WAM upstream independent of WebOSE Chromium (use baseline Chromium for easier maintence)
    • Integration between WAM and the new Window Manager
    • Web apps - Complete the integration with the new security model
    • Web Apps - Improve application life cycle
    • Web Apps - Support for containerization of the HMTL5 demo platform
    • Web Apps - Improvements on the demo-webapp libraries for theming and websockets integration
    • Additional demo apps

From Graphics EG

Updated 29 Jul 2020

Our responsibilities have been almost completed in 2019. Our individual activities are not planned for next year. The remaining activities will be addressed in IC-EG.

  • Graphic
    • Finish Window Manager and Homescreen work
      • Home Screen API / service -Complete for JJ
        • UI for Qt - Complete for JJ
        • UI for HTML5 - in-flight for JJ
      • High level API for virtual keyboard in english and Japanese
      • Pop-up support
        • Virtual keyboard placement and removal
        • Alerts
      • Focus management for out of focus apps
      • Multi-resolution display support.
        • Fix scaling issues across different display sizes
        • Landscape vs. portrait
  • Add new apps to home screen (not hardcoded) - SPEC-1734
  • Management of apps that overflow the screen - slider or multiple pages or folders
  • Improved secondary display support
  • Transition Animation
    • Need to define use cases and requirements
    • Handled by Qt Compositor if we continue to use it for demos.
    • Will need to rethink if we switch compositors
  • Hardware plane management; Rear view camera, smart phone connection,,,
  • User interactive response; vibration of screen, beep,,,
  • Upstream to Wayland/Weston
  • xdg protocol
  • Waltham protocol for internode display
  • Investigate replacement for Qt; HTML5, GTK+,,,,
  • Audio
  • FF-READY High Level audio API
  • FF-READY AGL Advanced Audio Agent (4A)
  • FF-PARTIAL Make PulseAudio optional
  • Switch to Bluez / Alsa for Bluetooth audio
  • Speech and Text to Speech Services collaboration
  • Policy management between mic input and Media player output

From Connectivity EG

Updated 06 Feb 2020

  • Vehicle Signaling
    • Factory programming of CAN message set based on final vehicle configuration. Requires multiple vehicle message dictionaries to be present in the code.
    • Content encryption within vehicle for streaming services or Blue Ray content.
    • Better support for translation from CANoe to AGL message sets.
    • Any other standard message set tools that we should support?
  • Bluetooth improvements
    • Add support for proprietary chip stacks based on work done on other projects in support of AGL. Supports production readiness.
    • Bluetooth Low Energy (BLE) support
  • Tuner
    • Update tuner API based on Denso-Ten gap analysis.
  • WiFi improvements
    • AP Mode
  • Telephony app improvements
    • Need to do more extensive testing of the Telephony app now that audio is working better.
  • Network management binding
    • Conman is probably not appropriate for production use cases, but we need requirements from Tier Ones and OEMS. Do we switch to network manager or wait for someone to push code to us that already works in a production environment?
    • Hardwired connection to telephone for Telematics use cases
    • Multiple simultaneous telephone support (wired + BT) for telematics use cases
    • User profiles to allow authorized users to configure interfacing

From V2X EG

  • Kickoff EG

From Virtualization EG

  • VirtIO Porting
    • Add VirtIO frontend (OASIS v1.1) to AGL
    • Create documents to illustrate how to enable VirtIO
    • Add VirtIO support and provide reference implementation on AGL reference hardware.
    • EG Demo in ALS
  • AGL virtualization support (HOST)
    • Add support for open-source hypervisors in meta-egvirt for both ARM and Intel AGL platforms. In this way, at compilation time it will be possible to select the hypervisor to use
      • Finalize KVM support (today available on Renesas RCar-M3 only)
      • Add support for other solutions such as XEN and Jailhouse
    • Write documentation and guides to use AGL as a host system
  • AGL virtualization support (GUEST)
    • Add official support for AGL to be run as a guest on ARM and Intel CPU architectures
    • Add support for XEN, KVM, Jailhouse
      • Add support to automatically build pre-built binaries for each solution, in a way that users can directly download the latest stable version
    • Write documentation and guides to use AGL as a guest system
  • Build a a graphical virtual machine manager application for AGL
    • Create (or extend) a tool to handle guest operating systems from the AGL Graphic User Interface
    • Add support to start and stop guests, or to attach USB device to a guest OS
  • VMs/AGL profiles communication
    • define, design and develop a common API to enable communication/interaction between different VMs/AGL profiles

From CIAT EG

Updated 06 February 2020

  • Improved publishing of test results
    • Email Reports
      • improve format and feedback to gerrit
  • Additional tests
    • Applications
      • build and test different wgt types (normal, debug, test, coverage)
  • Fuego integration
    • Support to run tests as lava jobs (from within Fuego)
  • Images in build matrix
    • more variants! (plan is to use qemux86-64 for this)
      • e.g. sota enabled
      • agl-demo-platform-html5 (html5-only UI)
      • cluster profile/image
      • telematic profile/image
  • move from jenkins-job-builder to a .jenkinsci or yaml based job description

From Navi EG

  • AGL Navigation API
    • Complete OSS implementation of Navi API 1.0 by ALS2018(FF release).
    • Complete documentation of Navi API 1.0 by ALS2018(FF release).
  • Ref. Apps
    • Navigation app divide to Navi service and Navi Apps.
    • Text to Speech Services collaboration
      • Guide voice (TTS function using) migrate to AGL standard.

——–

Methodology

  • Original project list was started in 2014 maintained here. The projects were rated by the steering committee at that time from 1 - 5 stars.
  • Project list was updated in 2015 - still on wiki.
  • Feb 2016
    • Reviewed list with Expert Groups, System Architecture Team, and Advisory Board prior to All Member Meeting
    • Rated projects from 1 to 5 Stars
    • Roadmap is based on moving ahead with 4 and 5 Star Projects
    • Roadmap moved to AGL Jira.

5 Star Projects

Current Five-Star projects as listed in Jira

4 Star Projects

Current Four-Star projects as listed in Jira

3 Star Projects

Current Three-Star projects as listed in Jira

Unrated/Low Rated Projects

Current Unrated or Low Rated projects as listed in Jira

agl-roadmap.txt · Last modified: 2021/03/11 12:21 by YAMAGUCHINaoto