Difference between revisions of "R-Car/Boards/Kingfisher/Yocto-Gen3/v5.1.0"
(→M.2: Update log) |
(→S/W support status) |
||
Line 459: | Line 459: | ||
$ echo 123435452345 > /dev/ttySC3 | $ echo 123435452345 > /dev/ttySC3 | ||
123435452345 | 123435452345 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | ==== LVDS Camera ==== | ||
+ | * <GMSL> | ||
+ | *: Camera board: GMSL02 | ||
+ | *: Camera: IMI RDACM21-01 <-- This may be out of stock | ||
+ | *: Camera: Leopard Imaging LI-OV10635-GMSL | ||
+ | *: Camera: Entron S001A190CM0A (How to get : [[R-Car/Boards/Kingfisher#How_to_get_the_SA001_Camera]]) | ||
+ | <!-- | ||
+ | * <FPD Link> | ||
+ | *: Camera board: FPDL01 | ||
+ | *: Camera: IMI RDACM24-01 <-- This may be out of stock | ||
+ | --> | ||
+ | |||
+ | '''[Note]''' | ||
+ | : H3 can use CN10 and CN11 | ||
+ | : M3 can use CN10 | ||
+ | |||
+ | * When you use a Leopard Imaging camera, add some parameters to bootargs. | ||
+ | {| class="wikitable" | ||
+ | ! Leopard Imagin camera type name !! bootargs | ||
+ | |- | ||
+ | | LI-OV10635-GMSL || | ||
+ | |- | ||
+ | | (IMI) RDACM21 || ov490.dvp_order=1 | ||
+ | |- | ||
+ | | S001A190CM0A || max9286.him=1 max9286.vsync=0 max9286.fsync_period=2420000 max9286.crossbar=0x01234567 | ||
+ | |- | ||
+ | |} | ||
+ | Ex1) 1 camera | ||
+ | # RDACM21-01 | ||
+ | #: <syntaxhighlight lang="bash"> | ||
+ | $ media-ctl -r | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x800 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' | ||
+ | gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | # LI-OV10635-GMSL | ||
+ | #: <syntaxhighlight lang="bash"> | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x800 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' | ||
+ | $ gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | # S001A190CM0A | ||
+ | #: <syntaxhighlight lang="bash"> | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x728 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' | ||
+ | $ gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=728,framerate=30/1 '!' waylandsink | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Ex2) 4 cameras | ||
+ | # RDACM21-01 x4 | ||
+ | #: <syntaxhighlight lang="bash"> | ||
+ | $ media-ctl -r | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x800 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':2 [fmt:UYVY8_2X8/1280x800 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':2 -> '\''VIN1 output'\'':0 [1]' | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':3 [fmt:UYVY8_2X8/1280x800 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':3 -> '\''VIN2 output'\'':0 [1]' | ||
+ | $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':4 [fmt:UYVY8_2X8/1280x800 field:none]' | ||
+ | $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':4 -> '\''VIN3 output'\'':0 [1]' | ||
+ | $ gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink | ||
+ | $ gst-launch-1.0 v4l2src device=/dev/video1 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink | ||
+ | $ gst-launch-1.0 v4l2src device=/dev/video2 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink | ||
+ | $ gst-launch-1.0 v4l2src device=/dev/video3 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Revision as of 19:03, 8 June 2021
|
Introduction
This page contains information on building and running Yocto on:
Topic
EOL Notification of the M3SK
Production of M3SK is discontinued.
See M3SK page for detail.
The new version of R-Car Starter Kit Premier is now on sale !!
- Equipped with R-Car H3e-2G
-
(En) https://www.renesas.com/jp/en/about/press-room/renesas-launches-r-car-gen3e-20-percent-higher-cpu-speed-automotive-infotainment-cockpit-and-digital
(Zh) https://www.renesas.com/jp/zh/about/press-room/renesas-launches-r-car-gen3e-20-percent-higher-cpu-speed-automotive-infotainment-cockpit-and-digital
(Jp) https://www.renesas.com/jp/ja/about/press-room/renesas-launches-r-car-gen3e-20-percent-higher-cpu-speed-automotive-infotainment-cockpit-and-digital
- CPU performance is increased 20% by supporting up to 2GHz frequency over past products.
- You can buy from here.
SW Release Information
Board name | SW name | Release date | Note |
---|---|---|---|
R-Car Starter Kit ( Premier / Pro ) | Yocto v5.9.0 (stable) [New!!] | 2022/02/08 | |
Kingfisher Infotainment Board | Yocto v5.9.0 (stable) [New!!] | 2022/02/14 | To check for latest information, please refer to the meta-rcar/tree/v5.9.0. |
Android 10 (stable) | 2021/07/26 | R-Car Starter Kit Premier(R-Car H3) + Kingfisher is supported. R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) + Kingfisher is also supported from 2021/11/25. | |
Android P (stable) | 2020/09/29 | R-Car Starter Kit Premier(R-Car H3) + Kingfisher is supported. R-Car Starter Kit Pro(RTP8J77961ASKB0SK0SA05A) + Kingfisher is also supported from 2021/03/16. | |
CCPF-SK Board | Yocto v5.9.0 (stable) [New!!] | 2022/02/08 | Prebuilt binary is available in Quick startup guide page. (Updated on 2022/03/18) |
Kingfisher Board Stock Information
- Click here for detail
New Camera Support
- Please refer to FAQ for how to purchase.
Software revisions
Software | Revision |
---|---|
Yocto Project | 3.1.4 |
aarch64-poky-linux-gcc (GCC) | 9.3 |
Wayland/Weston | 1.18.0/8.0.0 |
GStreamer | 1.16.3 |
Kernel Ver | 5.10 |
Userland 64/32bit | 64 |
U-Boot | 2020.10 |
OP_TEE | 3.8.0 |
OpenGL ES | 3.2 |
Host PC
Ubuntu 16.04/20.04 LTS (64bit) is recommended as OS. 32bit version is not supported.
Required packages
- Download evaluation version of proprietary graphics and multimedia drivers from Renesas.
- To download Multimedia and Graphics library and related Linux drivers, please use the following link:
- Download two files:
- R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-20210428.zip
- R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-20210428.zip
- Graphic drivers are required for Wayland. Multimedia drivers are optional.
- Install required packages
sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib \ build-essential chrpath socat cpio python3 python3-pip python3-pexpect \ xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa \ libsdl1.2-dev pylint3 xterm
- Refer to Yocto Project Quick Start for more information.
Building the BSP for Kingfisher
Build using script
- Directory Structure
|--build.sh `--proprietary |--R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-20210428.zip `--R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-20210428.zip
- Build script(build.sh)
#!/bin/bash BOARD_LIST=("h3ulcb" "m3ulcb") TARGET_BOARD=$1 PROPRIETARY_DIR=`pwd`/proprietary WORK=`pwd`/${TARGET_BOARD} POKY_COMMIT=424296bf9bb4bae27febf91bce0118df09ce5fa1 META_OE_COMMIT=f2d02cb71eaff8eb285a1997b30be52486c160ae META_RENESAS_COMMIT=fd8ab2bb1b5ca98483c6f4aecf09a85c4d6bc016 META_RCAR_BRANCH=v5.1.0 GFX_MMP_LIB=R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-20210428.zip GFX_MMP_DRIVER=R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-20210428.zip Usage () { echo "Usage: $0 \${TARGET_BOARD_NAME}" echo "BOARD_NAME list: " for i in ${BOARD_LIST[@]}; do echo " - $i"; done exit } # Check Param. if ! `IFS=$'\n'; echo "${BOARD_LIST[*]}" | grep -qx "${TARGET_BOARD}"`; then Usage fi mkdir -p ${WORK} cd ${WORK} # Clone basic Yocto layers in parallel git clone git://git.yoctoproject.org/poky & git clone git://git.openembedded.org/meta-openembedded & git clone git://github.com/renesas-rcar/meta-renesas & git clone git://github.com/CogentEmbedded/meta-rcar.git & # Wait for all clone operations wait # Switch to proper branches/commits cd ${WORK}/poky git checkout -b tmp ${POKY_COMMIT} cd ${WORK}/meta-openembedded git checkout -b tmp ${META_OE_COMMIT} cd ${WORK}/meta-renesas git checkout -b tmp ${META_RENESAS_COMMIT} cd $WORK/meta-rcar git checkout -b ${META_RCAR_BRANCH} remotes/origin/${META_RCAR_BRANCH} # Apply patch to update meta-renesas cd ${WORK} curl -sO https://elinux.org/images/6/6a/Update-meta-rcar-for-Yv510-20210531.patch.zip unzip -qo Update-meta-rcar-for-Yv510-20210531.patch.zip cd ${WORK}/meta-renesas patch -N -p1 < ../Update-meta-rcar-for-Yv510-20210531.patch # Populate meta-renesas with proprietary software packages WORK_PROP_DIR=${WORK}/proprietary mkdir -p ${WORK_PROP_DIR} unzip -qo ${PROPRIETARY_DIR}/${GFX_MMP_LIB} -d ${WORK_PROP_DIR} unzip -qo ${PROPRIETARY_DIR}/${GFX_MMP_DRIVER} -d ${WORK_PROP_DIR} cd ${WORK}/meta-renesas sh meta-rcar-gen3/docs/sample/copyscript/copy_proprietary_softwares.sh -f ${WORK_PROP_DIR} cd ${WORK} source poky/oe-init-build-env ${WORK}/build #cp ${WORK}/meta-renesas/meta-rcar-gen3/docs/sample/conf/${TARGET_BOARD}/poky-gcc/bsp/*.conf ./conf/ #cp ${WORK}/meta-renesas/meta-rcar-gen3/docs/sample/conf/${TARGET_BOARD}/poky-gcc/gfx-only/*.conf ./conf/ cp ${WORK}/meta-renesas/meta-rcar-gen3/docs/sample/conf/${TARGET_BOARD}/poky-gcc/mmp/*.conf ./conf/ cd ${WORK}/build cp conf/local-wayland.conf conf/local.conf bitbake-layers add-layer ../meta-rcar/meta-rcar-gen3-adas bitbake core-image-weston
- build
./build.sh <target_board_name>
- 18px <translate> Note:</translate> target_board_name is "h3ulcb" or "m3ulcb".
- If the build completes successfully, all the necessary files are generated in a following directory:
./<target_board_name>/build/tmp/deploy/images/<target_board_name>
Build using manual steps
- Create a directory and switch to it
- Warning! Yocto builds require a lot of disk space (up to 100 GB). Make sure you have got enough before starting the build.
mkdir build cd build export WORK=`pwd`
- Clone basic Yocto layers:
cd $WORK git clone git://git.yoctoproject.org/poky git clone git://git.openembedded.org/meta-openembedded git clone git://github.com/renesas-rcar/meta-renesas git clone git://github.com/CogentEmbedded/meta-rcar.git
- Switch to proper branches/commits
cd $WORK/poky git checkout -b tmp 424296bf9bb4bae27febf91bce0118df09ce5fa1 cd $WORK/meta-openembedded git checkout -b tmp f2d02cb71eaff8eb285a1997b30be52486c160ae cd $WORK/meta-renesas git checkout -b tmp fd8ab2bb1b5ca98483c6f4aecf09a85c4d6bc016 cd $WORK/meta-rcar git checkout -b v5.1.0 remotes/origin/v5.1.0
- Another versions are not tested for compatibility.
- Legacy BSP instruction can be found here R-Car Kingfisher Yocto Gen3 legacy
- Apply patch to update meta-rcar(patch file: File:Update-meta-rcar-for-Yv510-20210531.patch.zip)
cd ${WORK} curl -sO https://elinux.org/images/6/6a/Update-meta-rcar-for-Yv510-20210531.patch.zip unzip -qo Update-meta-rcar-for-Yv510-20210531.patch.zip cd ${WORK}/meta-renesas patch -p1 < ../Update-meta-rcar-for-Yv510-20210531.patch
- Download proprietary driver modules to $WORK/proprietary folder
- You should see the following files:
$ ls -1 $WORK/proprietary/*.zip R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-20210428.zip R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-20210428.zip
- Populate meta-renesas with proprietary software packages.
export PKGS_DIR=$WORK/proprietary cd $PKGS_DIR unzip -qo R-Car_Gen3_Series_Evaluation_Software_Package_for_Linux-20210428.zip unzip -qo R-Car_Gen3_Series_Evaluation_Software_Package_of_Linux_Drivers-20210428.zip cd $WORK/meta-renesas sh meta-rcar-gen3/docs/sample/copyscript/copy_proprietary_softwares.sh -f $PKGS_DIR unset PKGS_DIR
- Setup build environment
cd $WORK source poky/oe-init-build-env $WORK/build
- Prepare default configuration files.
cp $WORK/meta-renesas/meta-rcar-gen3/docs/sample/conf/<h3ulcb|m3ulcb>/poky-gcc/mmp/*.conf ./conf/ cd $WORK/build cp conf/local-wayland.conf conf/local.conf
- NOTE: extra configuration examples are available in the following directory:
$WORK/meta-rcar/meta-rcar-gen3-adas/docs/sample/conf/
- Add layer meta-rcar
bitbake-layers add-layer ../meta-rcar/meta-rcar-gen3-adas
- Start the build
bitbake core-image-weston
- Building image can take up to a few hours depending on your host system performance.
After the build has been completed successfully, you should see the output similar to:NOTE: Tasks Summary: Attempted 4704 tasks of which 31 didn't need to be rerun and all succeeded.
- and the command prompt should return.
- Bitbake has generated all the necessary files in ./tmp/deploy/images directory.
You can verify its content:-> % ls -1 `find ./tmp/deploy/images/h3ulcb/ -maxdepth 1 -type l -print` ./tmp/deploy/images/h3ulcb/Image ./tmp/deploy/images/h3ulcb/Image-h3ulcb.bin ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.ext4 ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.manifest ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.tar.bz2 ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.testdata.json ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.wic.bmap ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.wic.xz ./tmp/deploy/images/h3ulcb/core-image-weston-h3ulcb.wic.xz.sha256sum ./tmp/deploy/images/h3ulcb/modules-h3ulcb.tgz ./tmp/deploy/images/h3ulcb/r8a77950-ulcb-h3ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a77950-ulcb-kf-h3ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a77950-ulcb-kf.dtb ./tmp/deploy/images/h3ulcb/r8a77950-ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a77951-ulcb-h3ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a77951-ulcb-kf-h3ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a77951-ulcb-kf.dtb ./tmp/deploy/images/h3ulcb/r8a77951-ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a779m1-ulcb-h3ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a779m1-ulcb-kf-h3ulcb.dtb ./tmp/deploy/images/h3ulcb/r8a779m1-ulcb-kf.dtb ./tmp/deploy/images/h3ulcb/r8a779m1-ulcb.dtb ./tmp/deploy/images/h3ulcb/u-boot-elf-h3ulcb.srec ./tmp/deploy/images/h3ulcb/u-boot-h3ulcb.bin ./tmp/deploy/images/h3ulcb/u-boot-h3ulcb.bin-r8a7795_h3ulcb ./tmp/deploy/images/h3ulcb/u-boot-initial-env-h3ulcb-r8a7795_h3ulcb ./tmp/deploy/images/h3ulcb/u-boot-initial-env-r8a7795_h3ulcb ./tmp/deploy/images/h3ulcb/u-boot.bin ./tmp/deploy/images/h3ulcb/u-boot.bin-r8a7795_h3ulcb ./tmp/deploy/images/h3ulcb/ulcb-kf-cn10-gmsl2-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn10-gmsl2.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn10-pca-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn10-pca.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn11-gmsl2-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn11-gmsl2.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn11-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn11-pca-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn11-pca.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-cn11.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-imx219-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-imx219.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-most-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-most.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-panel-koe-tx31d200vm0baa-1280x480-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-panel-koe-tx31d200vm0baa-1280x480.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-panel-mitsubishi-aa104xd12-1024x768-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-panel-mitsubishi-aa104xd12-1024x768.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-panel-mitsubishi-aa121td01-1280x800-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-panel-mitsubishi-aa121td01-1280x800.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-sd3-h3ulcb.dtbo ./tmp/deploy/images/h3ulcb/ulcb-kf-sd3.dtbo
- Image is a Kernel image, *.dtb is a blob file, core-image-<image_type>-<board_name>.tar.bz2 is the rootfs, modules-<board_name>.tgz are kernel modules.
- You can now proceed with running Yocto images
Build SDK
Refer to Build SDK on the Yocto-Gen3 page.
Running Yocto images
Refer to Running Yocto images on the Yocto-Gen3 page.
[NOTE]
- DTB filename for Kingfisher contains suffix "-kf".
- Ex.) r8a77951-ulcb-kf.dtb
- If you want to know the combinatation of the board and dtb file, please refer to here.
S/W support status
Support list
Functions | Status |
---|---|
WiFi | ok |
Bluetooth | ok |
Gyro | ok |
GPS | ok |
CAN | ok |
Serial(CN4) | ok |
LVDS Camera (CN10/CN11) | ok |
CMOS Camera | ok |
Raspberry Pi camera Rev 1.3 | ok |
Raspberry Pi camera Rev 2 | ok |
USB2.0(CN13) Host | ok |
USB2.0(CN13) Func(g_mass_storage) | ok |
USB3.0(CN2) Host | ok |
Multichannel Audio | ok |
HDMI Out | ok |
LVDS Out | ok |
Mini PCIe | ok (Atheros AR5418) |
M.2 | ok |
MOST | ok |
Radio (CN42) | ok |
Note:
- "ok" - Function succeeded in the simple test as below.
- "NT" - Function wasn't tested
How to test some capabilities
WiFi
To check wifi and scan available WAPs run:
$ ifconfig wlan0 up $ iw dev wlan0 scan
Bluetooth
Ex 1)To check bluetooth and scan available BT devices run:
$ hciconfig hci0 up $ hcitool -i hci0 scan
Ex 2)BT-Audio
root@h3ulcb:~# bluetoothctl [NEW] Controller C8:DF:84:4C:84:98 h3ulcb [default] Agent registered [bluetooth]# power on Changing power on succeeded [bluetooth]# agent on Agent is already registered [bluetooth]# default-agent Default agent request successful [bluetooth]# scan on Discovery started ..(snip).. !!! <-- Please look for taget device !!! [bluetooth]# scan off ..(snip).. [bluetooth]# pair <MAC address of target device> ..(snip).. Request confirmation [agent] Confirm passkey 285311 (yes/no): yes ..(snip).. Pairing successful [bluetooth]# connect <MAC address of target device> ..(snip).. Connection successful ..(snip).. [Target device name]# quit
Please play music on target device.
Gyro
$ cat /sys/bus/iio/devices/iio\:device0/*_raw (Accelerometer, Magnetometer)
$ cat /sys/bus/iio/devices/iio\:device1/*_raw (Gyroscope)
GPS
$ cat /dev/ttySC2
CAN
Ex) loop back
- Connect the following pins of CN17 and CN18:
$ ip link set can0 up type can bitrate 125000 $ ip link set can1 up type can bitrate 125000 $ candump can0& $ cangen can1 can0 08D [3] B5 F4 3C can0 34E [3] 7C A1 70 can0 717 [6] 95 C5 67 4A 41 42 can0 7F1 [8] CA B9 E9 3E AE 71 FC 52
Serial
Ex) loop back
- For KF M03: Connect the following pins on CN4:
pin3(RxD) - pin5(TxD) pin4(RTS) - pin6(CTS)
- For KF M04 or later: Connect the following pins on CN4:
pin2(TxD) - pin4(RxD) pin1(RTS) - pin3(CTS)
$ stty -F /dev/ttySC3 -echo $ stty -F /dev/ttySC3 speed 9600 baud; line = 0; -brkint -imaxbel -echo $ cat /dev/ttySC3 & $ echo 123435452345 > /dev/ttySC3 123435452345
LVDS Camera
- <GMSL>
- Camera board: GMSL02
- Camera: IMI RDACM21-01 <-- This may be out of stock
- Camera: Leopard Imaging LI-OV10635-GMSL
- Camera: Entron S001A190CM0A (How to get : R-Car/Boards/Kingfisher#How_to_get_the_SA001_Camera)
[Note]
- H3 can use CN10 and CN11
- M3 can use CN10
- When you use a Leopard Imaging camera, add some parameters to bootargs.
Leopard Imagin camera type name | bootargs |
---|---|
LI-OV10635-GMSL | |
(IMI) RDACM21 | ov490.dvp_order=1 |
S001A190CM0A | max9286.him=1 max9286.vsync=0 max9286.fsync_period=2420000 max9286.crossbar=0x01234567 |
Ex1) 1 camera
- RDACM21-01
$ media-ctl -r $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x800 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink
- LI-OV10635-GMSL
$ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x800 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' $ gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink
- S001A190CM0A
$ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x728 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' $ gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=728,framerate=30/1 '!' waylandsink
Ex2) 4 cameras
- RDACM21-01 x4
$ media-ctl -r $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':1 [fmt:UYVY8_2X8/1280x800 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':1 -> '\''VIN0 output'\'':0 [1]' $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':2 [fmt:UYVY8_2X8/1280x800 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':2 -> '\''VIN1 output'\'':0 [1]' $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':3 [fmt:UYVY8_2X8/1280x800 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':3 -> '\''VIN2 output'\'':0 [1]' $ media-ctl -d /dev/media0 -V ''\''rcar_csi2 feaa0000.csi2'\'':4 [fmt:UYVY8_2X8/1280x800 field:none]' $ media-ctl -d /dev/media0 -l ''\''rcar_csi2 feaa0000.csi2'\'':4 -> '\''VIN3 output'\'':0 [1]' $ gst-launch-1.0 v4l2src device=/dev/video0 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink $ gst-launch-1.0 v4l2src device=/dev/video1 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink $ gst-launch-1.0 v4l2src device=/dev/video2 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink $ gst-launch-1.0 v4l2src device=/dev/video3 io-mode=mmap '!' video/x-raw,format=BGRA,width=1280,height=800,framerate=30/1 '!' waylandsink
Multichannel Audio
- Ex1) CN12/32/33 on KF
$ speaker-test -c 8 -t wav -W /usr/share/sounds/alsa/ $ arecord -c 6 -r 48000 -f S32_LE | aplay
- Ex2)
<KF> $ pactl set-default-sink pcm3168a_output $ speaker-test -c 8 -t wav -W /usr/share/sounds/alsa/ <SK> $ pactl set-default-sink ak4613_output $ amixer -c ak4613 sset "DVC Out" 10% $ speaker-test -c 2 -t wav -W /usr/share/sounds/alsa/
- Ex3)
<KF> $ paplay -d pcm3168a_output sample.wav <SK> $ amixer -c ak4613 sset "DVC Out" 10% $ paplay -d ak4613_output sample.wav
Radio
Ex) FM Radio
- Connect the antenna to CN42 on Kingfisher boards.
- 18px <translate> Note:</translate>
- If radio module is used for the first time, updating radio module firmware is required.
- Updating firmware is not required after the second time.
$ si_init $ si_firmware_update ( Update firmware of radio module.) $ si_fm $ si_preset <FM Radio frequency> ( In Tokyo, Japan, 91600 is Nippon Cultural Broadcasting. )
M.2
Ex) Transcend TS128GMTE850
$ dmesg|grep nvme<br> [ 1.559645] nvme nvme0: pci function 0000:01:00.0 [ 1.564386] nvme 0000:01:00.0: enabling device (0000 -> 0002) [ 1.578702] nvme nvme0: 7/0/0 default/read/poll queues [ 1.592894] nvme0n1: p1 p2 $ mount /dev/nvme0n1p1 /mnt/
DTS overlay
Since the meta-rcar supports the DTS overlays then you can test option periferals without recompilation.
Ex) => ext4load mmc 0 0x48080000 /boot/Image; ext4load mmc 0 0x48000000 /boot/r8a77951-ulcb-kf.dtb Ex1) test CN11 => ext4load mmc 0 0x48040000 /boot/ulcb-kf-cn11.dtbo Ex2) test SD card(CN47) instead WiFi => ext4load mmc 0 0x48040000 /boot/ulcb-kf-sd3.dtbo Ex3) test Most => ext4load mmc 0 0x48040000 /boot/ulcb-kf-most.dtbo => fdt addr 0x48000000; fdt resize 8192; fdt apply 0x48040000 => booti 0x48080000 - 0x48000000
Q&A site
http://renesasrulz.com/r-car-h3-m3-cockpit/
FAQ page
https://elinux.org/R-Car/Boards/Yocto-Gen3-CommonFAQ
FAQ
Failed to DRAM initialize (-1).
If you face the following error please update(*) IPL and u-boot to the latest version.
NOTICE: BL2: R-Car Gen3 Initial Program Loader(CA57) Rev.1.0.12 NOTICE: BL2: PRR is R-Car M3 ES1.0 NOTICE: BL2: Boot device is HyperFlash(80MHz) NOTICE: BL2: LCM state is CM NOTICE: BL2: AVS setting succeeded. DVFS_SetVID=0x52 NOTICE: BL2: DDR3200(rev.0.20)[COLD_BOOT]..1 NOTICE: BL2: Failed to DRAM initialize (-1). ERROR: ERROR: BL2: System WDT overflow, occurred address is 0xe630d3cc
(*)How to update
- http://elinux.org/R-Car/Boards/Kingfisher#How_to_update_of_Sample_Loader_and_MiniMonitor
- http://elinux.org/R-Car/Boards/M3SK#Flashing_firmware
- http://elinux.org/R-Car/Boards/H3SK#Flashing_firmware
How to get the SA001 Camera
Refer to R-Car/Boards/Kingfisher#How_to_get_the_SA001_Camera.