-
Notifications
You must be signed in to change notification settings - Fork 1
Home
Welcome to the zephyr wiki!
-
Project Overview
Zephyr project for Renesas RA MCU devices. It requires hal_renesas module: https://github.com/renesas/hal_renesas for operation.
To get started with Zephyr, visit website at https://www.zephyrproject.org/ and explore the documentation and tutorials.
-
Support RA MCU Devices & Drivers
Devices | IOPORT (GPIO) | UART | I2C (Master) | SPI | Flash | ULPT (timer) | LPM (system power management) | CGC (clock control) | DTC | RSIP (TRNG - Entropy) | CAN | QSPI | ADC | GPT (pwm) | AGT (counter) | USB-FS | USB-HS | MIPI-DSI | Ethernet |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EK_RA8M1 | Support | Support | Support | Support | Support | Support | Support | Support | Support | Support | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Support |
EK_RA8D1 | Support | Support | Support | Support | Support | Support | Support | Support | Support | Support | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning |
MCK_RA8T1 | Support | Support | Support | Support | Support | Support | Support | Support | Support | Support | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning |
RA6 devices | Support | Support | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning |
RA4 devices | Support | Support | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning |
RA2 devices | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning | Planning |
- Repository branches information
Branch name | Information |
---|---|
ra8-support-PR1.3-ethernet | Same feature as ra8-support-PR1.3-integrated with addtional ethernet driver support |
ra8-support-PR1.3-integrated | Support RA8 devices and drivers described in Support RA MCU Devices & Drivers Jul 31: - Restructure with ra8-support-1.2 after it merged into zephyrproject-rtos - Add support for I2C driver (master) - Fix SPI bitbang's issue in EK_RA8D1 and MCK_RA8T1 |
ra8-support-PR1.3 | Zephyr RTOS upstream branch Jul 31: - Add basic support for EK-RA8D1 and MCK-RA8T1 boards |
ra8-support-1.2 | Support EK_RA8M1 and UART only - Merged with zephyrproject-rtos/zephyr |
- Getting Started:
This getting started guide for Ubuntu environment (20.04 LTS).
For Windows environment, please refer to Getting started guide for Windows environment
For other environments, please visit Zephyr Getting Started
-
Install dependencies
wget https://apt.kitware.com/kitware-archive.sh
sudo bash kitware-archive.sh
sudo apt install --no-install-recommends git cmake ninja-build gperf ccache dfu-util device-tree-compiler wget python3-dev python3-pip python3-setuptools python3-tk python3-wheel xz-utils file make gcc gcc-multilib g++-multilib libsdl2-dev libmagic1
Verify the versions of the main dependencies installed on your system
cmake --version
python3 --version
dtc --version
Tools Min. Version CMake 3.20.5 Python 3.10 Devicetree compiler 1.4.6 -
Get Zephyr and install Python dependencies
-
Install west, and make sure ~/.local/bin is on your PATH environment variable:
pip3 install --user -U west
echo 'export PATH=~/.local/bin:"$PATH"' >> ~/.bashrc
source ~/.bashrc
-
Get the Zephyr source code
west init -m https://github.com/renesas/zephyr.git --mr ra8-support-PR1.3 ~/zephyrproject
cd ~/zephyrproject
west update
-
Export a Zephyr CMake package. This allows CMake to automatically load boilerplate code required for building Zephyr applications
west zephyr-export
-
Install additional Python dependencies
pip3 install --user -r ~/zephyrproject/zephyr/scripts/requirements.txt
-
-
Install the Zephyr SDK
-
Download and verify the Zephyr SDK bundle
Note: Support SDKv0.16.8 or above
cd ~
wget https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.8/zephyr-sdk-0.16.8_linux-x86_64.tar.xz
wget -O - https://github.com/zephyrproject-rtos/sdk-ng/releases/download/v0.16.8/sha256.sum | shasum --check --ignore-missing
-
Extract the Zephyr SDK bundle archive:
tar xvf zephyr-sdk-0.16.8_linux-x86_64.tar.xz
-
Run the Zephyr SDK bundle setup script:
cd zephyr-sdk-0.16.8
./setup.sh
-
Install udev rules, which allow you to flash most Zephyr boards as a regular user
sudo cp ~/zephyr-sdk-0.16.8/sysroots/x86_64-pokysdk-linux/usr/share/openocd/contrib/60-openocd.rules /etc/udev/rules.d
sudo udevadm control --reload
-
-
Build the Blinky Sample
-
For EK_RA8M1
cd ~/zephyrproject/zephyr
west build -p always -b ek_ra8m1 samples/basic/blinky
-
For EK_RA8D1
cd ~/zephyrproject/zephyr
west build -p always -b ek_ra8d1 samples/basic/blinky
-
For MCK_RA8T1
cd ~/zephyrproject/zephyr
west build -p always -b mck_ra8t1 samples/basic/blinky
-
-
Flash the Sample
CAUTION: Please use linker which provided with RA MCU. If use with a modified linker, please ensure that OFS region is reserved, or it can damage MCU.
west flash
-
Note: It is required to install SEGGER JLink (https://www.segger.com/) for west flash. And make sure installed folder is on your PATH environment variable:
For example,
wget --post-data 'accept_license_agreement=accepted&non_emb_ctr=confirmed&submit=Download+software' --no-check-certificate https://www.segger.com/downloads/jlink/JLink_Linux_V796f_x86_64.tgz
tar -xzf JLink_Linux_V796f_x86_64.tgz -C ~/
export PATH=~/JLink_Linux_V796f_x86_64/:$PATH
-
Refer Hardware connection before flash image.
-
-
Other applications
-
UART (echo_bot)
https://docs.zephyrproject.org/latest/samples/drivers/uart/echo_bot/README.html
cd ~/zephyrproject/zephyr
west build -p always -b ek_ra8m1 samples/drivers/uart/echo_bot
west flash
-
SPI (SPI bitbang)
https://docs.zephyrproject.org/latest/samples/drivers/spi_bitbang/README.html
cd ~/zephyrproject/zephyr
west build -p always -b ek_ra8m1 samples/drivers/spi_bitbang
west flash
-
DHCPv4 client
https://docs.zephyrproject.org/latest/samples/net/dhcpv4_client/README.html
Before flashing application to board, start dhcp server on host PC according to sample guideline
cd ~/zephyrproject/zephyr
west build -p always -b ek_ra8m1 samples/net/dhcpv4_client
west flash
-
-
Hardware connection
-
Limitations
-
ULPT (timer) is supported as timer in system low power management. To get its feature, must enable PM (CONFIG_PM=y) in application.
-
CGC (Clock control) has just supported 3 basic API:
- clock_control_on()
- clock_control_off()
- clock_control_get_rate()
-
RSIP (TRNG - Entropy) only supports API: entropy_get_entropy()
-
Drivers are verified limitedly with zTest only.
-
"SPI bitbang" sample application hasn't worked in EK_RA8D1 and MCK_RA8T1
-
-
Related Links & Contact Information
Zephyr: https://docs.zephyrproject.org/
RA Product Information: www.renesas.com/ra
RA Product Support Forum: www.renesas.com/ra/forum
Support: www.renesas.com/support
-
History
Date | Description |
---|---|
April 30, 2024 | Add "ra8-support-1.2" branch which minimal support for EK_RA8M1 (GPIO, UART) |
May 10, 2024 | - Add "ra8-support-PR1.3" branch which support for EK_RA8D1, MCK_RA8T1, SPI, Flash, ULPT (timer), LPM (system power managment), CGC, DTC, RSIP - Add wiki page which guide for setup environment and samples' execution in RA8 boards with ra8-support-PR1.3 branch |
June 28, 2024 | - Update "ra8-support-PR1.3" branch: + Re-structure with ra8-support-1.2 after it merged to zephyrproject-rtos + Add I2C driver (master) + Fix issue of SPI bitbang - Wiki: + [Home] Add updated information of ra8-support-PR1.3 - [Home] Update SDK version to v0.16.8 - [Home] Remove SPI bitbang limitation in EK_RA8D1 and MCK_RA8T1 + [EK_RA8D1 Hardware connection] [EK_RA8M1 Hardware connection] [MCK_RA8T1 Hardware connection] Add hardware connection for I2C sample + [Getting started guide for Windows environment] Update SDK version to v0.16.8 |
July 8, 2024 | - Update "ra8-support-PR1.3-ethernet" branch + Add ethernet driver support for RA8 board Wiki: - [Home] Update dhcpv4 client sample - [EK_RA8M1 Hardware connection] Update hardware setup for Ethernet dhcpv4 client sample verification |
July 31, 2024 | - Add "ra8-support-1.3-integrated" branch as backup branch of "ra8-support-PR1.3", "ra8-support-PR1.3" is now change to only support for the RA8D1 and RA8T1 board support on Zephyr for upstreaming purpose |