diff --git a/source/images/ti-lvgl-demo-arm-analytics1.png b/source/images/ti-lvgl-demo-arm-analytics1.png new file mode 100644 index 000000000..0cac94e01 Binary files /dev/null and b/source/images/ti-lvgl-demo-arm-analytics1.png differ diff --git a/source/images/ti-lvgl-demo-arm-analytics2.png b/source/images/ti-lvgl-demo-arm-analytics2.png new file mode 100644 index 000000000..59e6732a1 Binary files /dev/null and b/source/images/ti-lvgl-demo-arm-analytics2.png differ diff --git a/source/images/ti-lvgl-demo-arm-analytics3.png b/source/images/ti-lvgl-demo-arm-analytics3.png new file mode 100644 index 000000000..0244fa329 Binary files /dev/null and b/source/images/ti-lvgl-demo-arm-analytics3.png differ diff --git a/source/images/ti-lvgl-demo-legacy-home.png b/source/images/ti-lvgl-demo-legacy-home.png new file mode 100644 index 000000000..570e1f0a1 Binary files /dev/null and b/source/images/ti-lvgl-demo-legacy-home.png differ diff --git a/source/linux/Demo_User_Guides/TI_LVGL_Demo_User_Guide.rst b/source/linux/Demo_User_Guides/TI_LVGL_Demo_User_Guide.rst index b436155ab..bb7b21680 100644 --- a/source/linux/Demo_User_Guides/TI_LVGL_Demo_User_Guide.rst +++ b/source/linux/Demo_User_Guides/TI_LVGL_Demo_User_Guide.rst @@ -13,6 +13,8 @@ It includes various demo applications, such as: - EV Charging +- Arm analytics + - Smart Home - Smart Meter @@ -21,6 +23,64 @@ It includes various demo applications, such as: - Security +.. note:: + + Platform compatibility varies for different demo applications. Please see the platform compatibility table below: + + .. list-table:: Demo Compatibility by Platform + :header-rows: 1 + :widths: 20 16 16 16 16 16 16 + + * - Platform + - EV Charging + - Arm analytics + - Smart Home + - Smart Meter + - Thermostat + - Security + * - AM62L + - ✓ + - ✗ + - ✓ + - ✓ + - ✓ + - ✓ + * - AM62x + - ✓ + - ✗ + - ✓ + - ✓ + - ✓ + - ✓ + * - AM62P + - ✓ + - ✗ + - ✓ + - ✓ + - ✓ + - ✓ + * - AM335X + - ✗ + - ✓ + - ✓ + - ✓ + - ✓ + - ✗ + * - AM437X + - ✗ + - ✓ + - ✓ + - ✓ + - ✓ + - ✗ + * - AM65X + - ✗ + - ✓ + - ✓ + - ✓ + - ✓ + - ✗ + All necessary equipment and step by step instructions are provided below: .. note:: @@ -34,15 +94,28 @@ Hardware Prerequisites .. ifconfig:: CONFIG_part_variant in ('AM62LX') - - AM62L Evaluation Module: TMDS62LEVM + - AM62L Evaluation Module: `TMDS62LEVM `__ .. ifconfig:: CONFIG_part_variant in ('AM62X') - - TI AM62x SK / TI AM62x-LP SK / TI AM62xSIP SK / BeaglePlay + - TI AM62x SK / TI AM62x-LP SK / TI AM62xSIP SK / BeaglePlay `SK-AM62 `__ .. ifconfig:: CONFIG_part_variant in ('AM62PX') - - TI |__PART_FAMILY_DEVICE_NAMES__| SK + - TI SK-AM62P-LP `TMDS62LEVM `__ + +.. ifconfig:: CONFIG_part_variant in ('AM335X') + + - AM335x Evaluation Module: AM335x EVM or `BEAGL-BONE-GRN-ECO `__ + - BeagleBone Black + +.. ifconfig:: CONFIG_part_variant in ('AM437X') + + - AM437x Evaluation Module: AM437x GP EVM `TMDSEVM437X `__ + +.. ifconfig:: CONFIG_part_variant in ('AM65X') + + - AM65x Evaluation Module: AM654x GP EVM `TMDX654IDKEVM `__ - PC (Windows or Linux, to use serial terminal console) @@ -100,10 +173,16 @@ Using the TI LVGL Demo The landing/home page of the LVGL demo looks like the following: - .. Image:: /images/ti-lvgl-demo-home-page.gif - :height: 500 + .. ifconfig:: CONFIG_part_variant in ('AM335X' 'AM437X' 'AM65X') + + .. Image:: /images/ti-lvgl-demo-legacy-home.png + :height: 500 + + .. ifconfig:: CONFIG_part_variant in ('AM62LX' 'AM62PX' 'AM62X') + + .. Image:: /images/ti-lvgl-demo-home-page.gif + :height: 500 - | - In the demo, scroll through the various widgets to launch different apps. - The date/time panel shows the UTC timezone provided the EVM is connected to the internet. @@ -127,6 +206,34 @@ Launching the EV Charging HMI .. Image:: /images/ti-lvgl-demo-ev-charging2.png :height: 300 + +Launching the Arm analytics +============================= + +1. Launch the Arm Analytics demo by clicking the **Arm Analytics** widget in the apps scroll menu. +2. Connect the microphone and click the **Play** button to start audio recognition. + + .. Image:: /images/ti-lvgl-demo-arm-analytics1.png + :height: 300 +3. Expose multiple audio sources to the microphone to view the output results. Click the **Stop** button to stop audio recognition. + + .. Image:: /images/ti-lvgl-demo-arm-analytics2.png + :height: 300 + .. Image:: /images/ti-lvgl-demo-arm-analytics3.png + :height: 300 + +**Technical Details:** + +The Arm Analytics demo leverages machine learning for real-time audio recognition: + +- **ML Framework**: The demo uses :ref:`TensorFlow Lite (LiteRT) ` as the deep learning runtime for efficient on-device inference on Arm Cortex-A cores +- **Pipeline Management**: :ref:`NNStreamer ` is used to manage the neural network pipeline, providing seamless integration between audio capture and ML inference through GStreamer plugins + +For more information on the underlying technologies: + +- :ref:`TensorFlow Lite (LiteRT) ` - Deep learning inference framework +- :ref:`NNStreamer ` - Neural network pipeline management + Launching the Smart Home HMI ============================ @@ -345,27 +452,44 @@ assets here while making any modifications. The source code is available at `TI LVGL Demo `__ and can be re-compiled with the following steps: -1. First clone the git repository and its submodules using: - .. code-block:: console +1. First clone the appropriate git repository and its submodules using: + + .. ifconfig:: CONFIG_part_variant in ('AM62LX', 'AM62X', 'AM62PX') + + .. code-block:: console + + $ git clone --recurse-submodules https://github.com/TexasInstruments/ti-lvgl-demo.git + + .. ifconfig:: CONFIG_part_variant in ('AM335X', 'AM437X', 'AM65X') - $ git clone --recurse-submodules https://github.com/TexasInstruments/ti-lvgl-demo.git + .. code-block:: console + + $ git clone -b legacy --recurse-submodules https://github.com/TexasInstruments/ti-lvgl-demo.git 2. Create the docker environment and build the application: - .. code-block:: console - $ cd ti-lvgl-demo - $ sudo ./scripts/docker_setup.sh --create-image - $ sudo ./scripts/docker_setup.sh --build-app + .. code-block:: console + + $ cd ti-lvgl-demo + $ sudo ./scripts/docker_setup.sh --create-image + $ sudo ./scripts/docker_setup.sh --build-app 3. Copy the compiled binary to :file:`/usr/bin` directory of the device - .. code-block:: console + .. ifconfig:: CONFIG_part_variant in ('AM62LX', 'AM62X', 'AM62PX') + + .. code-block:: console + + $ scp lv_port_linux/bin/lvglsim root@:/usr/bin/ + $ scp -r lv_port_linux/demos/high_res/assets/* root@:/usr/share/ti-lvgl-demo/assets/ #make sure assets directory is there on target + $ scp -r lv_port_linux/demos/high_res/slides/* root@:/usr/share/ti-lvgl-demo/slides/ #make sure slides directory is there on target + $ scp lv_port_linux/certs/ root@:/usr/share/ti-lvgl-demo/cert/ #make sure cert directory is there on target - $ scp lv_port_linux/bin/lvglsim root@:/usr/bin/ - $ scp -r lv_port_linux/demos/high_res/assets/* root@:/usr/share/ti-lvgl-demo/assets/ #make sure assets directory is there on target - $ scp -r lv_port_linux/demos/high_res/slides/* root@:/usr/share/ti-lvgl-demo/slides/ #make sure slides directory is there on target - $ scp lv_port_linux/certs/ root@:/usr/share/ti-lvgl-demo/cert/ #make sure cert directory is there on target + .. ifconfig:: CONFIG_part_variant in ('AM335X', 'AM437X', 'AM65X') + .. code-block:: console + $ scp lv_port_linux/build-arm64/bin/lvglsim root@:/usr/bin/ + $ scp -r lv_port_linux/build-arm64/_deps/lv_demos_ext-src/src/high_res/assets/* root@:/usr/share/ti-lvgl-demo/assets/ #make sure assets directory is there on target