Getting started with Zephyr on RA6B1
Getting access to the repos
First, make sure you can login on https://gitlab.global.renesas.com/, if not you can request access here.
Next ask someone from the RA6B1 software team to grant you access to https://gitlab.global.renesas.com/ra-zephyr-bsp-dev/hal_renesas and https://gitlab.global.renesas.com/ra-zephyr-bsp-dev/zephyr .
If you haven't already, add your SSH key to gitlab. https://docs.gitlab.com/user/ssh/
Installing Zephyr
Follow the zephyr getting started guide, the only deviation is in the west init zephyrproject command in the "Get Zephyr and install Python dependencies" part. Replace this command with:
west init -m git@gitlab.global.renesas.com:ra-zephyr-bsp-dev/zephyr.git --mr ra-wireless zephyrproject
This command makes sure you get our internal RA6B1 repo.
The board target you should use is ek_ra6b1
Adding RA6B1 support to JLink
As the chip hasn't been released yet, the public release of JLink naturally doesn't support it. To add support, unzip this file:
to the following location based on your OS:
OS | Location |
|---|---|
Windows | C:\Users\<USER>\AppData\Roaming\SEGGER\JLinkDevices |
Linux | $HOME/.config/SEGGER/JLinkDevices |
macOS | $HOME/Library/Application Support/SEGGER/JLinkDevices |
Using JLink from WSL (Windows Subsystem for Linux)
To program the board from WSL, you need to install JLink on your WSL and add the support for the RA6B1 as mentioned in the previous section. After that, you need to follow the instructions explained here:
WSL - SEGGER Knowledge Base
Customizing the application build
Some useful configuration parameters are shown below. These parameters can be added to the prj.conf file
CONFIG_CPP=y | Enable C++ compilation |
CONFIG_STD_CPP17=y | Use C++17 |
CONFIG_REQUIRES_FULL_LIBCPP=y | Include libstdc++ |
CONFIG_CBPRINTF_FP_SUPPORT=y | Enable floating-point values printing in printf |
CONFIG_SPEED_OPTIMIZATIONS=y | Optimize for speed |