Building MCUBoot for ESP32-C3 Under Zephyr

Building MCUBoot for ESP32-C3 Under Zephyr

The article on building the ESP Bootloader under Zephyr for ESP32-C3 mentions that Zephyr also supports booting from MCUBoot: ROM-> MCUboot -> Zephyr.bin ( App ) As previously explained about the ROM, this article focuses on analyzing the booting part of MCUboot. Building Using west -v build -b esp32c3_zgp –sysbuild zephyr_sample/ — -DBOARD_ROOT=/mnt/g/project/v3.4.0/zephyr_sample/ -Dmcuboot_BOARD_ROOT=/mnt/g/project/v3.4.0/zephyr_sample/ to … Read more

Building ESP Bootloader for ESP32C3 in Zephyr

Building ESP Bootloader for ESP32C3 in Zephyr

In Zephyr, there are two boot processes for the ESP32 series SOC: No MCUboot: ROM-> ESP Bootloader-> Zephyr.bin (App) With MCUboot: ROM-> MCUboot -> Zephyr.bin (App) This article focuses on the no MCUboot part. ROM In ESP32C3, the ROM is referred to as the “First stage bootloader”. The ROM is hard-coded into the ESP32C3 and … Read more

Design Intent and Implementation of 100ask_imx6ull Flashing Tool

Design Intent and Implementation of 100ask_imx6ull Flashing Tool

Before the open-source flashing tool, there is something that must be kindly reminded: 1. Thanks to the support of many students, all 100ASK_IMX6ULL development boards produced before the New Year have been sold out. Stock is expected around March 15. The quality of the 100ASK_IMX6ULL development board is excellent, with no hardware bugs. Production has … Read more

Essential Books for Embedded Driver Engineers

Essential Books for Embedded Driver Engineers

Linux driver development requires not only mastery of the Linux operating system kernel and driver framework knowledge but also an understanding of low-level ARM processors and interface technology, bootloader Uboot, Linux system porting, and file system deployment. Only by systematically mastering these foundational knowledge areas can one integrate and truly master Linux device driver skills. … Read more

Understanding MCUBoot: A Universal Bootloader for MCU Systems

Understanding MCUBoot: A Universal Bootloader for MCU Systems

Explanation: 1. The Bootloader handles the initial boot sequence on hardware before the operating system takes over. For example, U-boot is often used as the boot loader in embedded systems before starting embedded operating systems like Linux or FreeBSD. MCUBoot is also a bootloader, but it targets IoT, referring here to systems with limited memory … Read more

Trimming Methods and Differences of Embedded Linux Kernel and Uboot

Trimming Methods and Differences of Embedded Linux Kernel and Uboot

This section only records the general trimming method without introducing specific file modifications. Linux Kernel Trimming Steps 1 Modify the ARCH and CROSS_COMPILE environment variables in the makefile ARCH ?= arm CROSS_COMPILE ?= XXX (your cross compiler) 2 Find the configuration file xxxdeconfig in the arch/arm/configs folder, and modify it appropriately. Run the following in … Read more