Bluescreen followed by endless boot loop on Armbian

I’m not too technical when it comes to troubleshooting issues (especially on linux) Spent the last 4 months tweaking my q6a to exactly how I want it (interface, servers, media centre, it had everything exactly how I wanted without issue). However, last night when I was streaming a film I suddenly got a blank blue screen then it went black and the Radxa logo appeared then the following lines: Booting ‘Armbian gnu/linux with linus 6.18.10-edge-qcm6490’ Loading Linux 6.18.10-edge-qca6490. Loading initial ramdisk… Loading device tree blob… /boot/armbian-dtb-6.18.10-edge-qcs6490 and then the screen goes black for about 20 seconds then the radxa logo appears again and this happens over and over.

I put the SD card into a seperate system and was able to access the contents in a linux virtual machine. All my files are there so backed up the home and etc folders. I ran “sudo fsck -f /dev/sdc1 and 2” along with a string of other chatgpt suggested fixes (such as mounting using chroot and updating/upgrading and also repairing grub) but to no avail. The same issue still persists.

Next I will try loading Armbian onto a seperate drive and see if it could be an issue with the hardware/firmware. Will be very disappointed if I have lost my system as it was all configured perfectly to my liking. Please advise if I should try and save my system or if I should start all over again.

You might need to update bootloader - search for it at Radxa download / this forum. Make sure its latest. Then try again …

Correct, came to that conclusion after a second armbian installation failed to boot with the same issue. Will update the bootloader. Just need to get my hands on a USB Male to Male connection - this wasn’t allowed back in the day…

If you don’t have a USB A-to-A cable, you can install Radxa OS (since it includes edl-ng tool and doesn’t require the latest firmware to boot). Then, you can update the firmware directly on the board itself. After that, you’ll be able to install and boot Armbian normally. I did it the same way.

As @starry suggested, I managed to upgrade the firmware using Radxa OS in a USB stick and edl-ng tool. You can follow the steps described in this post. The current release of Radxa OS comes preloaded with edl-ng v1.4.1, but out of precaution I downloaded edl-ng v1.5.0.

You can also use a usb A to C cable (which are much more common!), either with an adapter to A or straight to a computer with a USB C port.

Ah, I tried doing this the other day as my PC has a USBC port but didn’t realise it had to be a specific USB on the dragon before the computer could identify.

I have since flashed the latest firmware (appeared to be successful) however I only get a black screen, not even the Radxa logo this time. (the green light is solid and devices connected to the USB are powered, just no video output). I will try connecting a serial connector to see if any errors then will try the method suggested above to install Radxa OS.

Here was the output after I ran the firmware installation command:

23:12:07.313 [INFO] Searching for Qualcomm EDL device on Windows (Qualcomm Serial Driver or WinUSB)…
23:12:07.318 [INFO] Found device: \?\usb#vid_05c6&pid_9008#7&195ff71d&0&2#{86e0d1e0-8089-11d0-9ce4-08003e301f73}
23:12:07.318 [INFO] Interface: Serial Port
23:12:07.318 [INFO] Mode detected: Sahara/Firehose (9008)
23:12:07.634 [INFO] Detected device mode: Sahara
23:12:07.634 [INFO] Device is in Sahara mode. Uploading loader…
23:12:07.635 [INFO] Serial Number: 73BB0A36
23:12:07.636 [INFO] Product ID: 408 (QCS_KODIAK)
23:12:07.743 [INFO] Uploading loader: C:\Users\BF\Downloads\dragon-q6a_flat_build_wp_260120\flat_build\spinor\dragon-q6a\prog_firehose_ddr.elf
23:12:07.889 [INFO] Loader uploaded and started successfully via Sahara.
23:12:08.403 [INFO] Searching for Qualcomm EDL device on Windows (Qualcomm Serial Driver or WinUSB)…
23:12:08.408 [INFO] Found device: \?\usb#vid_05c6&pid_9008#7&195ff71d&0&2#{86e0d1e0-8089-11d0-9ce4-08003e301f73}
23:12:08.408 [INFO] Interface: Serial Port
23:12:08.409 [INFO] Mode detected: Sahara/Firehose (9008)
23:12:09.482 [INFO] Sending Firehose configure command…
23:12:09.505 [INFO] Firehose configured for Memory: SPINOR, MaxPayload: 1048576

23:12:09.507 [INFO] — Processing LUN 0 using rawprogram0.xml —
Writing cdt (cdt_rs701_wp.bin): 100.0% ( 0.00 / 0.00 MiB) [N/A ]
Writing ddr (zeros_5sectors.bin): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
Writing SYSFW_VERSION (SYSFW_VERSION.bin): 100.0% ( 0.00 / 0.00 MiB) [N/A ]
Writing SMBIOS (smbios.bin): 100.0% ( 0.14 / 0.14 MiB) [N/A ]
Writing PLAT (Fat12.bin): 100.0% ( 1.00 / 1.00 MiB) [N/A ]
Writing XBL (xbl.elf): 100.0% ( 4.58 / 4.58 MiB) [108.49 KiB/s]
Writing XBL_CONFIG (xbl_config.elf): 100.0% ( 0.22 / 0.22 MiB) [N/A ]
Writing AOP (aop.mbn): 100.0% ( 0.20 / 0.20 MiB) [N/A ]
Writing TZ (tz.mbn): 100.0% ( 3.64 / 3.64 MiB) [131.65 KiB/s]
Writing DEVCFG (devcfg_windows_hyp_rfcomm.mbn): 100.0% ( 0.05 / 0.05 MiB) [N/A ]
Writing HYP (hyp.mbn): 100.0% ( 0.42 / 0.42 MiB) [N/A ]
Writing QUP (qupv3fw.elf): 100.0% ( 0.05 / 0.05 MiB) [N/A ]
Writing TZAPPS (tzapps.bin): 100.0% ( 0.75 / 0.75 MiB) [N/A ]
Writing MULTIIMGOEM (multi_image.mbn): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
Writing CPUCP (cpucp.elf): 100.0% ( 0.18 / 0.18 MiB) [N/A ]
Writing SHRM (shrm.elf): 100.0% ( 0.05 / 0.05 MiB) [N/A ]
Writing ImageFv (imagefv.elf): 100.0% ( 1.98 / 1.98 MiB) [N/A ]
Writing PILFv (PILFV.Fv): 100.0% ( 3.19 / 3.19 MiB) [112.87 KiB/s]
Writing PrimaryGPT (gpt_main0.bin): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
Writing BackupGPT (gpt_backup0.bin): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
23:15:58.851 [INFO] — Patching LUN 0 using patch0.xml —

23:15:59.574 [INFO] ‘rawprogram’ command finished in 232.26s.
23:15:59.577 [INFO] ‘rawprogram’ command finished successfully.

I tried booting Radxa OS from a USB and still the device is not giving any video output (no Radxa logo) display shows no signs of any output at all. ‘

Should I try reflashing the firmware again? This is very frustrating. Have never bricked hardware before and this was just under normal use conditions.

Also no luck with the serial connection either. Tabby recognised a device but would not allow any interaction with it.

I am fairly new to working with arm devices so I am way out of my depth here but I don’t see any obvious errors in the output of the firmware flash – could potentially be an issue with booting from USB. You could try flashing the img directly onto an nvme drive, or potentially reflashing the bootloader from linux?

Tried booting from both USB connected NVME and with SD Card and black screen for both. Shouldn’t there be an option to enter the BIOS regardless of there being a boot medium connected? I get nothing.

Would just like to know if it’s bricked before I waste lots of time trying to fix it.

Please provide serial boot log, and the link of the BIOS you updated with, so we can check the version of the BIOS you are using.

Of course. I used the latest firmware (flat_build_260120) from this link:

https://dl.radxa.com/dragon/q6a/images/dragon-q6a_flat_build_wp_260120.zip

It appeared to install successfully per the output I posted above. When using the serial connector, the device gets recognised in tabby but doesn’t output anything when I power the unit on.

I managed to pull the syslogs off the sdcard that I was running armbian from. I can post these later.

@RadxaYuntian I tried flashing the firmware again, this time from linux with fresh download of firmware 260120. Flashed successfully with this output:

sudo edl-n --memory=spinor rawprogram rawprogram0.xml patch0.xml --loader=prog_firehose_ddr.elf
14:14:12.406 [INFO] Found device using LibUsbDotNet on Linux / MacOS.
14:14:12.500 [INFO] Kernel driver is active on interface 0, attempting manual detach…
14:14:12.501 [INFO] Manual detach successful.
14:14:12.506 [INFO] Detected device mode: Sahara
14:14:12.506 [INFO] Device is in Sahara mode. Uploading loader…
14:14:12.526 [INFO] Serial Number: 73BB0A36
14:14:12.541 [INFO] Product ID: 408 (QCS_KODIAK)
14:14:12.661 [INFO] Uploading loader: /home/demo/Downloads/flat_build/spinor/dragon-q6a/prog_firehose_ddr.elf
14:14:14.585 [INFO] Loader uploaded and started successfully via Sahara.
14:14:15.085 [INFO] Found device using LibUsbDotNet on Linux / MacOS.
14:14:16.166 [INFO] Sending Firehose configure command…
14:14:16.184 [INFO] Firehose configured for Memory: SPINOR, MaxPayload: 1048576

14:14:16.184 [INFO] — Processing LUN 0 using rawprogram0.xml —
Writing cdt (cdt_rs701_wp.bin): 100.0% ( 0.00 / 0.00 MiB) [N/A ]
Writing ddr (zeros_5sectors.bin): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
Writing SYSFW_VERSION (SYSFW_VERSION.bin): 100.0% ( 0.00 / 0.00 MiB) [N/A ]
Writing SMBIOS (smbios.bin): 100.0% ( 0.14 / 0.14 MiB) [N/A ]
Writing PLAT (Fat12.bin): 100.0% ( 1.00 / 1.00 MiB) [N/A ]
Writing XBL (xbl.elf): 100.0% ( 4.58 / 4.58 MiB) [106.79 KiB/s]
Writing XBL_CONFIG (xbl_config.elf): 100.0% ( 0.22 / 0.22 MiB) [N/A ]
Writing AOP (aop.mbn): 100.0% ( 0.20 / 0.20 MiB) [N/A ]
Writing TZ (tz.mbn): 100.0% ( 3.64 / 3.64 MiB) [128.66 KiB/s]
Writing DEVCFG (devcfg_windows_hyp_rfcomm.mbn): 100.0% ( 0.05 / 0.05 MiB) [N/A ]
Writing HYP (hyp.mbn): 100.0% ( 0.42 / 0.42 MiB) [N/A ]
Writing QUP (qupv3fw.elf): 100.0% ( 0.05 / 0.05 MiB) [N/A ]
Writing TZAPPS (tzapps.bin): 100.0% ( 0.75 / 0.75 MiB) [N/A ]
Writing MULTIIMGOEM (multi_image.mbn): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
Writing CPUCP (cpucp.elf): 100.0% ( 0.18 / 0.18 MiB) [N/A ]
Writing SHRM (shrm.elf): 100.0% ( 0.05 / 0.05 MiB) [N/A ]
Writing ImageFv (imagefv.elf): 100.0% ( 1.98 / 1.98 MiB) [N/A ]
Writing PILFv (PILFV.Fv): 100.0% ( 3.19 / 3.19 MiB) [110.40 KiB/s]
Writing PrimaryGPT (gpt_main0.bin): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
Writing BackupGPT (gpt_backup0.bin): 100.0% ( 0.02 / 0.02 MiB) [N/A ]
14:18:10.408 [INFO] — Patching LUN 0 using patch0.xml —

14:18:11.317 [INFO] ‘rawprogram’ command finished in 238.91s.
14:18:11.317 [INFO] ‘rawprogram’ command finished successfully.

But still get the same result. Solid green light with no HDMI output. I tried two different monitors with two different HDMI cables and still nothing. Tried serial connection again and it says “Serial Port Open” but will not doing anything from here.

Would you be able to provide an older firmware so I can rule out any hardware compatibility issues? This unit was purchased in China in February:

Model: RS701-D12J0R44S32Y13W28

Rev: V1.216

SN: 26020388-KCNQNF

.

If you have no serial output then your device is having quite an issue. Make sure you are using 115200 baud without any flow control in your console.

If you are still having no output, then your device might have hardware failure. You can contact the original seller for warranty option.

I will try connecting with serial again but followed exactly the instructions on the docs.

Very disappointing that the device can brick like this at any point under normal use. Beware to others relying on the system.

I can try the warranty process but as it was purchased in China and I am now back in Europe where there are stock issues, I don’t hold much hope. If I pay for shipping would you be willing to trade the unit for a new one? You could assess the unit directly for learning purposes.

@RadxaYuntian Please forgive me, I had the TXD pin connected to the TXD UART and RXD connected to RXD UART :sweat_smile: . I do not have IT/electrical background so please be patient with me. I have now got the serial output. Here it is:

 Serial  Port opened                                                                                     

Format: Log Type - Time(microsec) - Message - Optional Info

Log Type: B - Since Boot(Power On Reset), D - Delta, S - Statistic

S - QC_IMAGE_VERSION_STRING=BOOT.MXF.1.0.c1-00364-KODIAKLA-1

S - IMAGE_VARIANT_STRING=SocKodiakLAA

S - OEM_IMAGE_VERSION_STRING=wa-lxc

S - Boot Interface: SPI

S - Secure Boot: Off

S - Boot Config @ 0x00786070 = 0x000000c9

S - JTAG ID @ 0x00786130 = 0x001980e1

S - OEM ID @ 0x00786138 = 0x00000000

S - Serial Number @ 0x00786134 = 0x73bb0a36

S - OEM Config Row 0 @ 0x007841c0 = 0x0000000000000000

S - OEM Config Row 1 @ 0x007841c8 = 0x0000000000000000

S - Feature Config Row 0 @ 0x00784148 = 0x0000000000000000

S - Feature Config Row 1 @ 0x00784150 = 0x0000000000000000

S - Core 0 Frequency, 1516 MHz

S - PBL Patch Ver: 1

D - 6633 - pbl_apps_init_timestamp

D - 3408 - bootable_media_detect_timestamp

D - 704 - bl_elf_metadata_loading_timestamp

D - 703 - bl_hash_seg_auth_timestamp

D - 27926 - bl_elf_loadable_segment_loading_timestamp

D - 4842 - bl_elf_segs_hash_verify_timestamp

D - 17438 - bl_sec_hash_seg_auth_timestamp

D - 811 - bl_sec_segs_hash_verify_timestamp

D - 31 - pbl_populate_shared_data_and_exit_timestamp

S - 62496 - PBL, End

B - 72590 - SBL1, Start

B - 195139 - SBL1 BUILD @ 16:52:49 on Oct 13 2025

B - 199287 - usb: HS: device tree Not available , 0x3

B - 202703 - usb: eud_serial_upd , 0x73bb0a36

D - 207979 - sbl1_hw_init

D - 10919 - media_init:1

D - 0 - smss_load_cancel

D - 0 - boot_sail_pbl_edl_check

D - 0 - sail_execute_bist_sequence

B - 233020 - SMSS - Image Load, Start

D - 3995 - SMSS - Image Loaded, Delta - (0 Bytes)

D - 1037 - Auth Metadata

D - 6009 - sbl1_xblconfig_init

B - 248910 - XBL Config - Image Load, Start

B - 253455 - DTB Found: [pre-ddr][7601f201000000][0]

D - 4453 - boot_pre_ddr_dtb_load

D - 0 - media_init:2

D - 30 - media_init:3

D - 0 - boot_proc_bootset

D - 0 - shrm_load_cancel

B - 274195 - SHRM - Image Load, Start

D - 671 - Auth Metadata

D - 1312 - Segments hash check

D - 12596 - SHRM - Image Loaded, Delta - (35752 Bytes)

D - 0 - boot_default_cdt_init

D - 366 - boot_cdt_init

B - 299235 - CDT - Image Load, Start

B - 302072 - CDT Version:3,Platform ID:32,Major ID:1,Minor ID:0,Subtype:2

D - 16836 - sbl1_hw_platform_pre_ddr

D - 0 - devcfg init

B - 328515 - PMIC A:2.0 B:1.0 C:2.2 I:1.0

B - 331138 - PM: PM8 0x4

B - 332877 - PM: xVdd reset

B - 335347 - PM: PON by PWR key DEB

B - 591639 - PM: SET_VAL:Skip

B - 591669 - PM: Verifying PON-Trigger specific configurations & current PON-Trigger

B - 600423 - PM: All PON-Trigger specific configs verified. Proceeding to BOOT

B - 610213 - PM: PSI: b0x06_v0x3f

B - 612897 - PM: OEM_PSI Start

B - 613812 - PM: OEM_PSI Done

B - 616771 - PM: Device Init # SPMI Transn: 15440

D - 300882 - pm_device_init, Delta

B - 624609 - pm_driver_init, Start

B - 636077 - PM: Driver Init # SPMI Transn: 520

D - 7991 - pm_driver_init, Delta

B - 641720 - PM: Battery ID: 10022Ohm

B - 644251 - PM: debug board connected

B - 648003 - vsense_init, Start

D - 0 - vsense_init, Delta

D - 345596 - sbl1_hw_pre_ddr_init

D - 0 - boot_dload_handle_forced_dload_timeout

D - 2959 - sbl1_load_ddr_training_data

B - 672891 - Pre_DDR_clock_init, Start

D - 91 - Pre_DDR_clock_init, Delta

D - 12932 - sbl1_ddr_set_params

B - 684603 - sbl1_ddr_init, Start

B - 688019 - LP5 DDR detected

D - 15799 - sbl1_ddr_init, Delta

B - 703787 - DSF version = 262.0.47

B - 707142 - Manufacturer ID = 13, Device Type = 8

B - 710741 - MR_5 = 0x1313 (LPDDR5 Manufacturer ID)

B - 715652 - MR_8 = 0x5454, Type = 0x0, Density = 0x5, Width = 0x1

B - 726357 - Rank 0 size = 6144 MB, Rank 1 size = 6144 MB

D - 42608 - sbl1_ddr_init

D - 31 - boot_pre_ddi_entry

B - 735294 - do_ddr_training, Start

B - 779244 - DDR: Start of DDR Training Init

Hopefully all is not lost!! :crossed_fingers:

I put the above into chatgpt and it mentioned that there is likely a hardware/firmware mismatching situation than a hardware failure. Any chance you could send me the original firmware that was installed on the specific board I have:

This unit was purchased from the official Radxa website in China in February:

Model: RS701-D12J0R44S32Y13W28

Rev: V1.216

SN: 26020388-KCNQNF

:crossed_fingers: hopefully there is now a path to recovery!

All the things I have tried so far that did not work:

  1. Tried a different power source. Still get the same hang at DDR training
  2. Pulled firmware from archive.org from Oct 2025. Still hanged at DDR training.
  3. Erased the SPI according to the docs and reflashed 260120 firmware. Still hanged at DDR training.

The only thing left according to Chatgpt is to get the original firmware that came on the board when purchased as it believes there is a mismatch in hardware/firmware and the RAM is incompatible with the training data of the latest firmware.

@strongtz can you take a look at this issue?

Hi MarkusAntonius,

Does the board get stuck after printing this line on the UART? If so, does the 260120 BIOS version also get stuck at the same point?