This layer contains the source code for the logic analyzer example.
This example can be executed on the STM32MP157C/F-DK2 Discovery kit boards.
This layer is linked with the logicanalyser project that contains the source code of the STM32MP157 Cortex-M4 firmware for the logic analyzer example.
This version is based on the STM32MPU-ecosystem-v6.0.0 ecosystem release of the STM32MPU Embedded Software distribution.
The "mx machine" is not used: instead, a patch on the Linux device tree is provided.
- Documentation
- HW requirements
- SW requirements
- How to add the meta-st-stm32mpu-app-logicanalyser layer to your build?
- How to use the example?
- Extra explanations
- Limitations - issues
- "How to exchange data buffers with the coprocessor" wiki article
- STM32MP157x-DKx Discovery kit schematics through the STM32MP15 resources wiki article
- STM32MP157x-DKx Discovery kit hardware description wiki article
- STM32MP157C/F-DK2 Discovery kit board.
- No hardware modification is needed for this example.
- This example uses GTK for building the UI.
- Create the working directory to install the baseline:
PC $> cd <working_directory_path>
- Fetch the openstlinux-6.6-yocto-scarthgap-mpu-v24.11.06 OpenSTLinux version delivered with the STM32MPU-ecosystem-v6.0.0 release as explained here.
- Add the meta-st-stm32mpu-app-logicanalyser layer (scarthgap branch):
PC $> cd <working_directory_path>/layers/meta-st
PC $> git clone https://github.com/STMicroelectronics/meta-st-stm32mpu-app-logicanalyser.git -b scarthgap
- Configure the build environment as explained here:
- DISTRO = openstlinux-weston
- MACHINE = stm32mp15-disco
- IMAGE = st-image-weston
PC $> cd <working_directory_path>
PC $> DISTRO=openstlinux-weston MACHINE=stm32mp15-disco source layers/meta-st/scripts/envsetup.sh
- Add the meta-st-stm32mpu-app-logicanalyser layer to the image to build:
PC $> pwd
<working_directory_path>/build-openstlinuxweston-stm32mp1
PC $> bitbake-layers add-layer ../layers/meta-st/meta-st-stm32mpu-app-logicanalyser
- Build the image as explained here:
PC $> bitbake st-image-weston
- Populate the SD card thanks to the STM32CubeProgrammer tool as explained here or to the create_sdcard_from_flashlayout.sh script as explained here.
- Press either the "USER1" button or the "USER2" button to start (resp. to stop) the example
- Select the sampling frequency (4 MHz per default)
- Start the sampling:
- For high data rate (more than 2 MHz sampling), it relies on a SDB Linux driver which provides DDR buffers allocations, and DDR DMA transfers
- For low data rate (less or equal to 2 MHz sampling), it relies on virtual UART over RPMSG
- Data compression algorithm is done on Cortex-M4 side
- Compressed buffers are transfered to DDR by DMA or virtual UART
- In order to insure dynamic input data on PE8..12, these ports are initialized as output. Values are changed every 23 times
- On user interface, refresh is done every new MB of compressed data
For more details, see the "How to exchange data buffers with the coprocessor" wiki article.
Nothing to report.