CES2024 Development

1. Demo Set

NoNamenumWhow ship
1AGL Ref HW1

J.S.

2Touch Display (Full HD)1J.S.
3Cluster Display (1920x720 or Full HD)1J.S.
4HDMI Cable (Need to check how to connect this cable to Touch/Cluster Display, that depend to display side connector)2J.S.
5Tablet1Buy by Walt.
6Speaker1Buy by Walt.
7Optional: Special Keyboard1J.S.
8Display arm - Touch Display1Walt
9Display stand - Cluster Display1Kurokawa


2. Demo feature

2.1. Update latest AGL IVI

Development itemStatus
Work by




ImagestatusUse or not use
master: cluster demoRunUse
pike: momi ivi demoRunNot use, use at master
pike: fluter ivi demoRunNot use, use at master
pike: html5 ivi demoRunNot use, use at master
pike: qt vi demoRunNot use, use at master
master: momi ivi demoRunUse
master: flutter ivi demo (New design)RunUse
master: html5(cef) ivi demoRunUse
master: qt ivi demoRunUse
master: flutter ivi demo (old)RunUse

Current issue:

  • Don't understand evolution for html5 update from cef to html5.
  • New flutter demo is loss many feature. Need to frequently update until the CES deadline.

Demo design:

Five containers exchange. Momi, Qt, HTML5, Old Flutter, ICS Flutter.

Container exchange by Keyboard. (Momi Key)

Keyboard configurator

https://github.com/watatuki/usb-12key-kbd-prog

key-setup-momikey.sh

Container exchange by Tablet control. (Momi Web)

2.2. Virt IO loopback audio based audio control


Development itemStatus
Work by
1Integrate VirtIO driver and vhost-adoptor to host.Drop at CES2024

Michele demonstrated sound feature in ALS2023. But it's not upstreamed.  Now available for kernel-module-virtio-loopback only.

This week Michele will send detailed instructions to manually compile the components used in the demo presented at OSS summit. Upstream activity is ongoing.

-

1-1Backport virtio-sound on kernel v5.10

Build successful.  Not tested.


1-1virtio-loopback driver

Build successful.  Not tested.


1-3virtio-loopback adapter

Build successful.  Not tested.


1-4Vhost-user-sound

Did not success building using AGL crosssdk / AGL yocto environment.  How to build???

Ask to Michele now.


1-5Integrate to host



2-1

Guest side sound support Cluster:

Divide cluster-service from cluster-refgui.

Done

Need to improve cluster-service and cluster-refgui.
Cluster-service(not support CAN input, demo only), Cluster-refgui was merged.

Dr. Y

2-2

Guest side sound support Cluster:

Add alarm sound support to cluster-service by alsa.
Start/stop alarm by trigger from outside.

Done

Cluster service play alarm sound triggered by keyboard.Dr. Y
3-1Guest side sound support Momi IVIDoneDirectory use ALSA device.Dr. Y
3-2Guest side sound support Qt IVIDone

Guidance sound is available.  But media player is not work.  That is issue for udisks mount. (It cause error  in guest).


Dr. Y
3-3Guest side sound support Flutter IVI(ICS)DoneCherry-pick patch. Media Player is now working.Dr. Y
3-4Guest side sound support HTML5/CEFDoneSuccess to play on YouTube.Dr. Y
3-5Guest side sound support Flutter IVI(Old)Done
Dr. Y
4ALSA loop based audio shearingDone
Dr. Y
4-1Integrate alsa loopback deviceDone
Dr. Y
4-2Configure for guest - ClusterDoneaplay playingDr. Y
4-3Configure for guest - Momi IVIDoneMedia Player playingDr. Y
4-4Configure for guest - each agl-ivi-demoDoneNeed to change wireplumber config in guest.Dr. Y
4-5Audio mixing by host PulseAudioDoneNow available to mix cluster (aplay) and Momiplayer sound.Dr. Y
4-6Audio ControlDoneMute IVI audio in case of alarm sound playing.Dr. Y

Audio control design



2.3. Enable some resource isolation feature

Development itemStatus
Work by
Update container managerDone

Dr. Y

Update container manager configurationDone

Dr. Y

Visualize

Done


Dr. Y

CPU isolation demo by Tablet control. (Momi Web)

2.4. RTOS Island

Drop at CES2024.


3. How to build

New version


Old version:

Basically, use this procedure.

Build Procedure for AGL IC with Container Integration

clone this layer.

https://github.com/agl-ic-eg/meta-agl-demo-ces2024

Add to ic side bblayers.conf

BBLAYERS =+ "\

  ${METADIR}/meta-agl-devel/meta-egvirt \

  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024 \

  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024-ic \

  "
AGL_META_CLANG = " ${METADIR}/external/meta-clang "


Add to demo ivi side bblayers.conf

BBLAYERS =+ "\

  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024-demoivi \

  ${METADIR}/meta-agl-demo-ces2024/meta-agl-demo-ces2024 \

  "

Shall use 3b procedure.

4. Key Config

Refer and use this.

https://github.com/watatuki/usb-12key-kbd-prog/blob/dev/key-setup-momikey.sh