yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
RDK X5 Board📖
1.Introduction to RDK X5 board
  • 1.Introduction to RDK X5 board
  • 2.Write system file
  • 3.Hardware interface description
  • 4.Install case and other accessories
  • 5.Use 7-inch display
2.Basic settings course
  • 1.Network configuration
  • 2.Remote login
  • 3.Update system
  • 4.srpi-config user guide
  • 5.config. txt configuration file
  • 6.Self-startup setting
  • 7.RDK exclusive command usage
  • 8.Linux command usage
  • 9.GPIO readwrite operation
  • 10.Image classification algorithm
  • 11.Use USB camera
  • 12.Use MIPI camera
  • 13.Binocular camera depth algorithm
3.Basic development course
C language
  • 1.Camera image display
  • 2.Local save camera images
  • 3.Camera image encoding
  • 4.Video file decoding
  • 5.RTSP streaming decoding
  • 6.VPS scaling example
  • 7.Target detection algorithm-fcos
  • 8.Target detection algorithm-YOLOv5s
  • 9.Using CAN
Python
  • 0.ReadMe
  • 1.Using GPIO
  • 2.Using PWM
  • 3.Using Serial port
  • 4.Using I2C
  • 5.Using SPI
4.ROS expansion board
Python basic control
  • 0.Bind PCB port devices
  • 1.Install the Rosmaster driver library
  • 2.Buzzer whistle
  • 3.Control PWM servo
  • 4.RGB colorful light bar special effects display
  • 5.Control the forward and reverse rotation of the motor
  • 6.Control the movement of the robot
  • 7.Control Serial Servo
  • 8.Update firmware of expansion board
  • 9.Drive OLED
ROS2 robot control
  • 1.Function package usage process
  • 2.Robot information release
  • 3.Robot keyboard control
  • 4.Robot state estimation
  • 5.Robot calibration
  • 6.URDF model
5.T-MINI PLUS Lidar
  • 0.Preparation before use(Must read)
  • 1.Environment setup
  • 2.T-MINI PLUS LiDAR drive
  • 3.Handheld LiDAR mapping
6.AI VIEW Depth camera
AI VIEW Depth camera use
  • 1.AI VIEW Depth camera use
  • 2.Camera internal parameter calibration
  • 3.Color tracking
  • 4.KCF object tracking
Mediapipe functions
  • 1.Hand detection
  • 2.Attitude detection
  • 3.Overall inspection
  • 4.Facial detection
  • 5.Facial recognition
OpenCV series courses
  • 1.ROS+opencv application
  • 2.QR code creation and recognition
  • 3.AR vision
7.Offline AI model course
Offline-LLM-Text-Interaction
  • 0.AI-Large-Model-Image-Description
  • 1.AI-Large-Model-Environment-Deployment
  • 2.LLM-Conversation-Platform-Installation
  • 3.Meta-AI-Llama3.2-Model
  • 4.Alibaba-Cloud-Qwen3-Model
  • 5.Microsoft-Phi-4-mini-Model
  • 6.DeepSeek-DeepSeek-R1-Model
  • 7.Alibaba-Cloud-Qwen2.5vl-Vision-Multimodal-Model
  • 8.Google-Gemma3-Vision-Multimodal-Model
  • 9.Llava-Vision-Multimodal-Model
  • 10.MiniCPM-V-Vision-Multimodal-Model
  • 11.Multimodal-Text-to-Image-Application
  • 12.Multimodal-Video-Analysis-Application
  • 13.Multimodal-Visual-Understanding-Application
  • 14.Multimodal-Visual-Localization-Application
  • 15.Multimodal-Table-Scanning-Application
  • 16.Multimodal-Autonomous-Agent-Application
Offline-LLM-Voice-Interaction
  • 0.Voice-Interaction-Hardware-Connection-Must-Read
  • 1.Offline-Speech-to-Text-ASR
  • 2.Offline-Text-to-Speech-TTS
  • 3.AI-Large-Model-Voice-Interaction
  • 4.Multimodal-Visual-Understanding-Voice-Interaction
  • 5.Multimodal-Text-to-Image-Application
  • 6.Multimodal-Video-Analysis-Application
  • 7.Multimodal-Visual-Localization-Application
  • 8.Multimodal-Table-Scanning-Application
  • 9.Multimodal-Autonomous-Agent-Application
  • 10.AI-Large-Model-Offline-Voice-Assistant
8.Online AI model course
Online-LLM-Text-Interaction
  • 1.OpenRouter-Large-Model-API-Aggregation-Platform
  • 2.Multimodal-Visual-Understanding-Application
  • 3.Multimodal-Visual-Localization-Application
  • 4.Multimodal-Table-Scanning-Application
  • 5.Multimodal-Autonomous-Agent-Application
Online-LLM-Voice-Interaction
  • 0.Voice-Interaction-Hardware-Connection-Must-Read
  • 1.Online-Speech-to-Text-ASR
  • 2.Online-Text-to-Speech-TTS
  • 3.AI-Large-Model-Voice-Interaction
  • 4.Multimodal-Visual-Voice-Interaction
  • 5.Multimodal-Visual-Localization-Application
  • 6.Multimodal-Table-Scanning-Application
  • 7.Multimodal-Autonomous-Agent-Application
  • 8.AI-Large-Model-Online-Voice-Assistant
9.YOLO26 tutorials
  • 01.YOLO environment construction
  • 02.CLI use
  • 03.Object detection
  • 04.Instance segmentation
  • 05.Pose estimation
  • 06.Image classification
  • 07.Oriented bounding box object detection
  • 08.Model conversion
  • 09.Dataset annotation
  • 10.Model training conversion
  • 11.Model prediction
10.OpenClaw Deployment and Basic Usagenew
  • 01.OpenClaw Quick Start
  • 02.OpenClaw Deployment
  • 03.OpenClaw WhatsApp Plugin Application
  • 04.OpenClaw WebChat Interaction
  • 05.OpenClaw TUI Interaction
  • 06.OpenClaw Tools Introduction
  • 07.OpenClawGate Gateway User Manual
  • 08.OpenClaw Features Overview
  • 09.OpenClawClawHub Introduction (Skill Installation)
  • 10.OpenClaw Application - File Management
  • 11.OpenClaw Application - Camera
  • 12.OpenClaw Application - Browser Control
  • 13.OpenClaw Application - Script Execution
  • 14.OpenClaw Application - AI Programming (Peripheral & GPIO Control)
  • 15.OpenClaw Application - Dedicated AI Assistant
  • 16.OpenClaw Web Search Capability Configuration
11.OpenClaw Advanced Developmentnew
1.Preparation Before Use
  • 01. Peripheral Hardware Configuration
  • 02. OpenClaw API-KEY Configuration
  • 03. OpenClaw Model Switching
  • 04. OpenClaw Prompts
  • 05. AI Voice Interaction Configuration
  • 06. Three Dialogue Configuration Tests
2.OpenClaw AI Programming Peripheral Control
  • 1. Servo Control
  • 2. RGB Strip
  • 3. OLED Display
  • 4. Temperature and Humidity Sensor
  • 5. Camera Application
  • 6. AI Script Peripheral Control
3.OpenClaw Peripheral Integration Applications
  • 1. Plant Care Assistant
  • 2. AI Calorie Estimation
  • 3. AI Rock Paper Scissors Game
  • 4. AI Pet
  • 5. AI Weather Station
  • 6. Temperature and Humidity Dashboard
  • 7. Scheduled Tasks
12.ROS2 basic course
  • 1.Introduction to ROS2
  • 2.ROS2 install Humble
  • 3.ROS2 development environment
  • 4.ROS2 workspace
  • 5.ROS2 function package
  • 6.ROS2 node
  • 7.ROS2 topic communication
  • 8.ROS2 service communication
  • 9.ROS2 action communication
  • 10.ROS2 custom interface message
  • 11.ROS2 parameter service case
  • 12.ROS2 meta-function package
  • 13.ROS2 distributed communication
  • 14.ROS2 DDS
  • 15.ROS2 time related API
  • 16.ROS2 common command tools
  • 17.ROS2 rviz2 use
  • 18.ROS2 rqt toolbox
  • 19.ROS2 Launch startup file configuration
  • 20.ROS2 recording and playback tool
  • 21.ROS2 URDF model
  • 22.ROS2 Gazebo simulation platform
  • 23.ROS2 TF2 coordinate transformation
Download
  • System_File
  • Code
  • Tools
Download ZIP

Welcome to RDK X5 Board repository

5.config. txt configuration file

config.txt Configuration File

config.txt Configuration FileNotesDevice Tree Configurationdtdebugdtoverlay[Only X5 supports]iondtparamCPU Frequencyarm_boostgovernorfrequencyX5 CPU Frequencyarm_boostIO InitializationgpioExampleTemperature Controlthrottling_tempshutdown_tempOption Filtering

RDK uses the configuration file config.txt to set system configurations during startup. config.txt is read during the uboot stage and supports modifications to device tree configurations, IO pin states, ION memory, CPU frequency, etc. This file is usually accessible from Linux at /boot/config.txt and must be edited as the root user. If the config.txt file does not exist but there are configuration settings, simply create it as a new text file.

Notes

Note

  1. The config.txt configuration file is only applicable to the RDK X3 and RDK X3 Module development boards and not for the RDK Ultra development board.
  2. The system version must be at least 2.1.0.
  3. The miniboot version cannot be earlier than the version dated 20231126. Refer to [rdk-miniboot-update] for updating the miniboot on the board.
  4. If you add filtering items to this configuration file, please note whether the configuration items will be filtered out when using the srpi-config tool.

Device Tree Configuration

dtdebug

If dtdebug is non-zero, it will output configuration logs during the device tree configuration process in the uboot stage.

xxxxxxxxxx
dtdebug=1

 

dtoverlay

Supports device tree overlays, providing a more flexible way to adjust the device tree.

[X5 not supported] For example, to adjust the size of ION memory using ion_resize, the following configuration will modify the ION memory size to 1GB.

xxxxxxxxxx
dtoverlay=ion_resize,size=0x40000000

 

[Only X5 supports] Use dtoverlay_spi5_spidev to add /dev/spidev5.0(Note: The CAN device has also received SPI5, so Spidev and CAN can only choose one from the other)

xxxxxxxxxx
dtoverlay=dtoverlay_spi5_spidev

 

[Only X5 supports]ion

use ion_reserved_size ion_carveout_size ion_cma_size to modify the ION partition size

boot namedts namedts compatiblesize
ion_reserved_sizeion_reservedion-pool320M
ion_carveout_sizeion_carveoution-carveout320M
ion_cma_sizeion_cmaion-cma128M
xxxxxxxxxx
ion=ion_reserved_size=0x14000000
ion=ion_carveout_size=0x14000000
ion=ion_cma_size=0x08000000

 

dtparam

Supports enabling and disabling buses such as uart, i2c, spi, i2s, etc.

Currently supported options: uart3, spi0, spi1, spi2, i2c0, i2c1, i2c2, i2c3, i2c4, i2c5, i2s0, i2s1

[X5] uart0, uart1, uart5, spi1, spi5, i2c0, i2c2, i2c3, i2c4, i2c5, i2c6, i2c7, dw_i2s0, dw_i2s1

For example, to disable uart3:

xxxxxxxxxx
dtparam=uart3=off

 

For example, to enable i2c5:

xxxxxxxxxx
dtparam=i2c5=on

 

CPU Frequency

arm_boost

When set to 1, enables overclocking. For RDK v1.x, the maximum frequency is increased to 1.5GHz. For RDK V2.0 and RDK Module, the maximum frequency is increased to 1.8GHz. Use cat /sys/devices/system/cpu/cpufreq/scaling_boost_frequencies to retrieve the higher CPU frequencies enabled by boost.

By default, overclocking is disabled. Set arm_boost to 1 to enable, for example:

xxxxxxxxxx
arm_boost=1

 

governor

The scheduling method for CPU frequency. Various options like conservative, ondemand, userspace, powersave, performance, and schedutil are available. Use cat /sys/devices/system/cpu/cpufreq/scaling_available_governors to get the available modes.

For example, setting the CPU to run in performance mode:

xxxxxxxxxx
governor=performance

 

Refer to [CPU Frequency Management] for more information on CPU scheduling methods.

frequency

When governor is set to userspace, this option allows the CPU to run at a fixed frequency. Currently, common frequencies like 240000, 500000, 800000, 1000000, 1200000, 1500000, 1800000 can be set. Use cat /sys/devices/system/cpu/cpufreq/scaling_available_frequencies to get the list of available frequencies.

For example, setting the CPU to run at 1GHz:

xxxxxxxxxx
governor=userspace
frequency=1000000

 

X5 CPU Frequency

For details about CPU scheduling methods, please refer to X5 CPU Frequency Management. This section focuses on configuring config.txt.


arm_boost

When set to 1, overclocking is enabled, increasing the maximum frequency of the RDK X5 to 1.8GHz. You can check which higher CPU frequencies are enabled after boosting by running:

xxxxxxxxxx
cat /sys/devices/system/cpu/cpufreq/policy0/scaling_boost_frequencies

 

IO Initialization

gpio

Supports configuring IO functionality, including multiplexing, input/output modes, high/low output levels, and pull-up/pull-down modes.

xxxxxxxxxx
gpio:
ip - Input                             Set as input mode
op - Output                            Set as output mode
f0-f3 - Func0-Func3                    Set function multiplexing (f3 sets to IO mode, refer to the register manual for other functions)
dh - Driving high (for outputs)        Output high level
dl - Driving low (for outputs)         Output low level
pu - Pull up                           Enable pull-up
pd - Pull down                         Enable pull-down
pn/np - No pull                        No pull-up or pull-down

 

Example

Configure GPIO5 and GPIO6 on 40Pin as IO mode:

xxxxxxxxxx
gpio=5=f3
gpio=6=f3
# For consecutive pins, you can also configure them in the following way
gpio=5-6=f3

 

Configure GPIO5 on 40Pin as input mode:

xxxxxxxxxx
gpio=5=f3
gpio=5=ip

 

Configure GPIO6 on 40Pin as output mode and drive low level:

xxxxxxxxxx
gpio=6=f3
gpio=6=op,dl

 

Configure GPIO6 on 40Pin as output mode, drive high level and set pull up:

xxxxxxxxxx
gpio=6=f3
gpio=6=op,dl,pu

 

Temperature Control

throttling_temp

The temperature point at which the system CPU and BPU will throttle. When the temperature exceeds this point, the CPU and BPU will reduce their operating frequency to reduce power consumption. The CPU can go as low as 240MHz, while the BPU can go as low as 400MHz.

shutdown_temp

Shutdown temperature point of the system. If the temperature exceeds this point, the system will automatically shut down to protect the chip and hardware. It is recommended to perform heat dissipation treatment on the device to avoid system shutdown, as the device will not restart automatically after shutdown.

Option Filtering

Supports the use of [] to set filtering items. The filtering items need to be added at the end of the configuration file, because the part before the filtering item is considered 'all'. Once a filtering setting is added, the subsequent configurations belong to that filtering attribute until the end of the configuration file or another filtering item is set.

The supported filtering items are differentiated by hardware model, and the following filtering items are supported:

Filtering ItemCompatible Models
[all]All hardware, default
[rdkv1]RDK x3 v1.0, RDK x3 v1.1
[rdkv1.2]RDK x3 v1.2
[rdkv2]RDK x3 v2.1
[rdkmd]RDK x3 Module
[x5-rdk]RDK X5 V0.1

 

srpi-config user guide
Self-startup setting

COMPANY

  • About us
  • Team Style
  • Blog

LEARNING & EXPLORATION

  • Tutorials
  • Edge AI hardware
  • Educational robots
  • Embedded intelligent hardware

WHERE TO BUY

  • Yahboom Online Store
  • Amazon
  • Alibaba
  • AliExpress
  • Mercado

TECHNOLOGY SUPPORT

  • Email: support@yahboom.com

BE A DISTRIBUTOR

  • Email: sales@yahboom.com
QR Code

Copyright © 2017-2026 Yahboom. All Rights Reserved.

EN/中文