Forums › Devices › OSD32MP15x › OSD32MP1-RED UART communication
hello,
We want to get the UART working when the board boots up.
But so far, the board gets unresponsive or doesn’t loads Linux.
Our setup is as follows:
• We give power to the OSD32MP1-RED board by using a power adapter connected to the USB-C port on the board.
• Our PC runs Linux and Windows 10.
• We used STLab’s USB-to-Serial adapter to connect to the OSF32MP1-RED board
==> We got the heartbeat LED blinking on the board, but we only see garbage on the UART. We tried different speeds but got the same results.
• Next we used a Raspberry Pi 3B+ instead of the PC, and connected straight cables from the UART pins on the raspberry to the UART pins on the OSD32MP1-RED, as explained in https://octavosystems.com/app_notes/osd32mp1-red-getting-started/
==> In this case we get UART output, but the boot stops on u-boot (heartbeat LED not blinking).
Also, we got no keyboard response (see below).
CPU: STM32MP157C?? Rev.?
Model: Octavo OSD32MP1-RED board
Board: stm32mp1 in trusted mode (octavo,osd32mp1-red)
DRAM: 512 MiB
Clocks:
– MPU : 650 MHz
– MCU : 187.500 MHz
– AXI : 266.500 MHz
– PER : 24 MHz
– DDR : 533 MHz
board_check_usb_power: Can’t get adc device(-19)
NAND: 0 MiB
MMC: STM32 SDMMC2: 0, STM32 SDMMC2: 1
Loading Environment from EXT4… OK
In: serial
Out: serial
Err: serial
invalid MAC address in OTP 00:00:00:00:00:00Net:
Error: ethernet@5800a000 address not set.
eth-1: ethernet@5800a000
Hit any key to stop autoboot: 0
STM32MP> ??J%NOTICE: CPU: STM32MP157C?? Rev.?
NOTICE: Model: Octavo OSD32MP1-RED board
INFO: Reset reason (0x15):
INFO: Power-on Reset (rst_por)
INFO: Using SDMMC
INFO: Instance 1
INFO: Boot used partition fsbl1
WARNING: VDD unknownNOTICE: BL2: v2.0-r1.5(debug):v2.0-stm32mp-r1.5
NOTICE: BL2: Built : 03:23:08, Feb 16 2021
INFO: BL2: Doing platform setup
INFO: PMIC version = 0x21
INFO: RAM: DDR3-DDR3L 16bits 533000Khz
INFO: Memory size = 0x20000000 (512 MB)
INFO: BL2 runs SP_MIN setup
INFO: BL2: Loading image id 4
INFO: Loading image id=4 at address 0x2fff0000
INFO: Image id=4 loaded: 0x2fff0000 – 0x30000000
INFO: BL2: Loading image id 5
INFO: Loading image id=5 at address 0xc0100000
INFO: STM32 Image size : 807412
WARNING: Skip signature check (header option)
INFO: Image id=5 loaded: 0xc0100000 – 0xc01c51f4
INFO: read version 0 current version 0
NOTICE: BL2: Booting BL32
INFO: Entry point address = 0x2fff0000
INFO: SPSR = 0x1d3
INFO: PMIC version = 0x21
NOTICE: SP_MIN: v2.0-r1.5(debug):v2.0-stm32mp-r1.5
NOTICE: SP_MIN: Built : 03:23:08, Feb 16 2021
INFO: ARM GICv2 driver initialized
INFO: stm32mp HSI (18): Secure only
INFO: stm32mp HSE (20): Secure only
INFO: stm32mp PLL2 (27): Secure only
INFO: stm32mp PLL2_R (30): Secure only
INFO: SP_MIN: Initializing runtime services
INFO: SP_MIN: Preparing exit to normal world
U-Boot 2018.11-stm32mp-r3-dirty (Feb 16 2021 – 04:28:39 +0000)
Thank you
Gil
Gil,
Can you double check from https://octavosystems.com/app_notes/osd32mp1-red-getting-started/#UART%20Connection:
1. hardware connections
2. UART speeds(115200 8N1)
Are you using the default image from OSD32MP1-RED page?
Best,
Neeraj
Hi Neeraj,
We did use this, https://octavosystems.com/app_notes/osd32mp1-red-getting-started/#UART%20Connection, as a guide.
We followed the guidelines regarding HW connections and UART speeds.
We used the two images that were mentioned in the above guide:
Octavo Systems Debian Linux Distribution | Version: 1.2 | February 22, 2021
OpenSTLinux Starter Image Distribution | Version: 1.2 | February 19, 2021
Same results with both.
thanks
Gil
Gil,
Since you are clearly seeing output in case of using the Raspberry Pi, I think the issue is the UART-USB adapter. Please try to independently verify the UART adapter or try a new one.
You can also verify boot of the board 1 or 2 additional ways to verify that the board has nothing wrong going on(Power the board without a UART connection):
1. LED D8 will turn ON as part of kernel initialization of the WiFi module. This indicates good kernel load and boot.
2. If you connect a USB-C Cable from the board’s USB-C port to a host computer, you should see it show up as an ethernet connection. You can use this connection to ssh into the board(see https://octavosystems.com/app_notes/osd32mp1-red-getting-started/#USB%20Connection). Can you try to do this?
Best,
Neeraj
Hi Neeraj,
We see output on the RPi; but we only see u-boot prints. There isn’t a single print from the Linux kernel, i.e., the Linux kernel doesn’t load. Also, there is no keyboard input.
We did use two different UART-USB adapters. Both of them work when connecting them from the PC to the RPi’s UART.
We are using a USB-C cable currently and it seems to work fine so far.
But we only get output when the Linux starts loading.
We would like to see u-boot as well. And enter to the u-boot CLI.
thanks
Gil
Gil,
To summarize, does the following describe the board behavior you are observing?
1. You can see bootloader(tf-a/u-boot) console logs when you connect UART4 to RPi
2. You can see kernel logs when you use a USB-C cable presumably through ssh?
Can you post a picture of the ‘garbage’ output on UART?
Best,
Neeraj
Hi Neeraj,
Q1:
YES!!!, The output is as follows:
CPU: STM32MP157C?? Rev.?
Model: Octavo OSD32MP1-RED board
Board: stm32mp1 in trusted mode (octavo,osd32mp1-red)
DRAM: 512 MiB
Clocks:
– MPU : 650 MHz
– MCU : 187.500 MHz
– AXI : 266.500 MHz
– PER : 24 MHz
– DDR : 533 MHz
board_check_usb_power: Can’t get adc device(-19)
NAND: 0 MiB
MMC: STM32 SDMMC2: 0, STM32 SDMMC2: 1
Loading Environment from EXT4… OK
In: serial
Out: serial
Err: serial
invalid MAC address in OTP 00:00:00:00:00:00Net:
Error: ethernet@5800a000 address not set.
eth-1: ethernet@5800a000
Hit any key to stop autoboot: 0
STM32MP> ??J%NOTICE: CPU: STM32MP157C?? Rev.?
NOTICE: Model: Octavo OSD32MP1-RED board
INFO: Reset reason (0x15):
INFO: Power-on Reset (rst_por)
INFO: Using SDMMC
INFO: Instance 1
INFO: Boot used partition fsbl1
WARNING: VDD unknownNOTICE: BL2: v2.0-r1.5(debug):v2.0-stm32mp-r1.5
NOTICE: BL2: Built : 03:23:08, Feb 16 2021
INFO: BL2: Doing platform setup
INFO: PMIC version = 0x21
INFO: RAM: DDR3-DDR3L 16bits 533000Khz
INFO: Memory size = 0x20000000 (512 MB)
INFO: BL2 runs SP_MIN setup
INFO: BL2: Loading image id 4
INFO: Loading image id=4 at address 0x2fff0000
INFO: Image id=4 loaded: 0x2fff0000 – 0x30000000
INFO: BL2: Loading image id 5
INFO: Loading image id=5 at address 0xc0100000
INFO: STM32 Image size : 807412
WARNING: Skip signature check (header option)
INFO: Image id=5 loaded: 0xc0100000 – 0xc01c51f4
INFO: read version 0 current version 0
NOTICE: BL2: Booting BL32
INFO: Entry point address = 0x2fff0000
INFO: SPSR = 0x1d3
INFO: PMIC version = 0x21
NOTICE: SP_MIN: v2.0-r1.5(debug):v2.0-stm32mp-r1.5
NOTICE: SP_MIN: Built : 03:23:08, Feb 16 2021
INFO: ARM GICv2 driver initialized
INFO: stm32mp HSI (18): Secure only
INFO: stm32mp HSE (20): Secure only
INFO: stm32mp PLL2 (27): Secure only
INFO: stm32mp PLL2_R (30): Secure only
INFO: SP_MIN: Initializing runtime services
INFO: SP_MIN: Preparing exit to normal world
U-Boot 2018.11-stm32mp-r3-dirty (Feb 16 2021 – 04:28:39 +0000)
CPU: STM32MP157C?? Rev.?
Model: Octavo OSD32MP1-RED board
Board: stm32mp1 in trusted mode (octavo,osd32mp1-red)
DRAM: 512 MiB
Clocks:
– MPU : 650 MHz
– MCU : 187.500 MHz
– AXI : 266.500 MHz
– PER : 24 MHz
– DDR : 533 MHz
board_check_usb_power: Can’t get adc device(-19)
NAND: 0 MiB
MMC: STM32 SDMMC2: 0, STM32 SDMMC2: 1
Loading Environment from EXT4… OK
In: serial
Out: serial
Err: serial
invalid MAC address in OTP 00:00:00:00:00:00Net:
Error: ethernet@5800a000 address not set.
eth-1: ethernet@5800a000
Hit any key to stop autoboot: 0
STM32MP>
Q2:
Yes !!!
Regarding the ‘garbage’ output on UART:
We are unable to reproduce it.
As soon as I have it, I will send you.
thanks
Gil
That last line (“STM32MP>”) at the end is the U-Boot interactive prompt. It has stopped just before loading the kernel, presumably because it thinks it was interrupted by a keypress (“Hit any key to stop autoboot”). Since you see this when connected to UART, yet when not connected it progresses past here and you see the kernel heartbeat, something might be wrong with the TX side (PC/RPi to OSD32MP1) of your UART that is causing some character to be accidentally/continuously sent. This would also explain why your keyboard input is not working properly.
Try using only the RX side of the UART (OSD32MP1 to PC/RPi) and leaving TX unconnected.
Gil,
Agree with aedan here. Try disconnecting RX from RPi and see if the boot goes past u-boot command prompt.
It is perplexing that connecting the UART to RPi gives you good logs, but not with a UART-USB adapter.
Can you scope the RX and TX pins and compare the activity when you connect to RPi and get good log output vs when you get the garbage output?
Best,
Neeraj
Hi Neeraj, aedancullen,
Good call with the TX.
When we disconnect the TX from the OSD32MP1-RED, the software loads all the way including Linux (the heartbeat is there).
This happens when using both setups, i.e PC/RPi-RED.
It seems something is electrically wrong with the RED evb.
When connecting another RPi to the RED (including the TX) the software load completed fully.
Another issue is with the data received in the terminal from the RED UART.
It is garbage. No matter which UART setup we use (different parity bits setup, speeds, etc.).
Attached a screen shot of that.
Gil
Gil,
Can you explain a little bit more?
When you disconnect TX of PC/RPi to RED, you are able to see good UART output along with good boot to kernel?
What does the UART output look like when you connected RPi to RED fully?
Best,
Neeraj
Hi Neeraj,
When I disconnect the TX of PC/RPi to RED, the boot process proceeds fully until Linux is up and I see the heartbeat led blinking.
However, the terminal shows RX data as garbage (I sent a picture in the previous message).
when the PC/RPi are connected fully to the RED, the boot process stops.
RX data is still garbage.
We tried different UART setup combinations. Garbage remains.
thanks
Gil
Gil,
Our team will contact you offline to resolve this issue.
Best,
Neeraj
Hi Neeraj,
I haven’t been contacted by anyone from Octavo.
Can you update on the issue?
thanks
Gil
Gil,
Apparently Sales contacted you, but did not hear back. They will follow-up with you again.
Best,
Neeraj
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields