2024-06-06 01:18 PM - edited 2024-06-06 01:28 PM
Hello friends,
Please, if you can really help me, I'm not an expert in the Linux device tree.
I urgently need to understand the commands to execute on the device tree on the powerful STM32MP157 MINI Linux board alientek ATOMIC (Note: Chinese language, please right click google automatically translate from browser):
https://www.bilibili.com/video/BV15U4y1E7Bh/
https://www.bilibili.com/video/BV1kr4y1c7bv/
https://www.alientek.com/Product_Details_17/31.html
WiKi Compiler YOCTO Linux Image:
https://han-ya.blogspot.com/2024/03/stm32mp157-linux.html
ADC1+ADC2 - Analog Multi channel IO
DEVICE TREE
It is essential to create from device tree :
- 8 ANALOG type GPIO physical pins on the board (AN0,AN1,AN2, AN3,AN4,AN5,AN6,AN7)
- 3 GPIO physical pins of PWM type real time motors on the board (PWM0, PWM1,PWM3)
But manufacturing company says only 2 ADC pins can be read,
I attach STM32MP157 MINI mapping:
STM32MP157DAA1_1G-RAM _ 8GB-eMMC - Datasheet
But the powerful SOM BOARD STM32MP157DAA1_1G-RAM _ 8GB-eMMC clearly specifies 22 multiple IO Analog channels on ADC1 and ADC2 and 32 multiple PWM IO channels:
Please multiple control of 8 analog sensors and 3 PWM sensors (motor control) in Linux is fundamental for my machine control project from Linux CPU, that's why I chose the powerful STM32MP157 MINI board from alintek (STM32MP157DAA1_1G-RAM _ 8GB-eMMC)
Your precious help is essential, thanks
2024-06-16 06:03 AM - edited 2024-06-16 06:37 AM
Hello all friends,
a beautiful day today!
A first uImage KERNEL Linux YOCTO STM32MP157 board image has been generated, it is only a first generation test but the cross compiler did not throw errors:
this guide was fundamental (Chinese, right click automatically translate from Browser please):
https://www.bilibili.com/read/cv11484220/
Now what needs to be done:
1) uImage (local pc):
uImage should be loaded on the File System of the STM32MP157 board in /boot or in which path??
2) DEVICE TREE FILES MODIFIED (local pc)
NOTE: I remember the modified device tree files are the following (see ADC MULTIPLEXING manual EN on page 52:
- stm32mp15-pinctrl.dtsi
- stm32mp157d-atk.dtsi
Which device tree files should be loaded onto the File System of the STM32MP157 motherboard and where should they be loaded in which path??:
- stm32mp157d-atk-hdmi.dtb (???)
- stm32mp157d-atk-hdmi.dts (???)
- stm32mp15-pinctrl.dtsi (???)
3) SOFTWARE TEST READING MULTI ANALOG DEVICE - MULTI PIN Analog GPIO
It is possible to indicate an example of a Python3 script to read 8 analog devices connected to the respective GPIO pins compiled in the files
Device tree modified:
- stm32mp15-pinctrl.dtsi
- stm32mp157d-atk.dtsi
--------------------------------------------------------------------
Note*: PowerFull DFRobot pinPong Library (Prefer):
https://www.unihiker.com/wiki/pinpong_python_lib
https://wiki.dfrobot.com/pinpong_introduction
https://www.unihiker.com/wiki/system-framework
-----------------------------------------------------------------
4) BACKUP FIRMWARE YOCTO STM32MP157 (eMMC)
Is there a method to extract entire Linux YOCTO system image of STM32MP157 board written to eMMC (backup)????
NB. It is important to have an entire backup image of the working firmware on the board, for quick recovery in the event of a crash of the YOCTO Linux operating system, STM32MP157 board unreachable after loading new uImage system files and other device tree dtb files, etc.
Link MEGA MULTIPLEXING Manual STM32MP157 Board (multi-language):
https://mega.nz/file/0iJTjApI#3x6eQ35KSevHkDpJcFvLIR6EgpqzxIrTPmTkU-hLRNM
Thank you for your support, it is now fundamental, alientek does not release information
2024-06-29 06:11 AM
is there anyone here who can help to make ADC multiplexing work, read 5 analog devices on 5 GPIO pins on Linux STM32MPX boards???
2024-07-01 06:54 AM
Hi @bass34
I'm not expert and not knowledgeable on the board you are using, I will try to help you on that topics:
1) please have a look to https://wiki.st.com/stm32mpu/wiki/OpenSTLinux_directory_structure
2) please have a look to https://wiki.st.com/stm32mpu/wiki/STM32_MPU_device_tree
3) those should help:
https://wiki.st.com/stm32mpu/wiki/ADC_OpenSTLinux_drivers#Linux_kernel_driver
4) I did not fully understand your concern, with Yocto and embedded Linux systems, you should (and you must) generate a customized full image of all the eMMC partitions (in order to being able in production to flash blank boards using STM32CubeProg or else), so backup is not a concern as eMMC image is already on your PC.
Regards.