R-Car/Boards/Wheat

From eLinux.org
Jump to: navigation, search

Introduction

This is the official Wiki for Renesas R-Car V2H Wheat board: entry-level development kit for surround view and ADAS applications. Refer to R-Car page for Renesas R-Car SoC family. V2H development kit is similar to R-Car H2-based ADAS Starter Kit Information on Renesas R-Car E2 SILK board and Renesas R-Car M2 Porter board can be found on a separate pages.

Hardware

R-Car V2H Evaluation BOARD

Top view

R-Car V2H Debug BOARD

Top view
For more information go to R-Car/Boards/Wheat:Hardware

Hardware Features

R-Car V2H Evaluation BOARD

  • R-Car V2H SoC
    • ARM®Cortex-A15 Dual Core 1.0­GHz
    • Renesas image recognition core IMP-X4
    • GPU
      • PowerVR SGX531 (3D)
      • Graphics core (2D)
    • Rendering
      • Renesas Rendering core IMR-LSX3 × 6 channels
      • Renesas Rendering core IMR-LX3 × 1 channel
  • 1 GB DDR3 memory (dual channel)
  • Two flash memory chips
    • 1MB SPI
    • 64MB NOR
  • Video In
    • 4 Ether camera connections
    • 4 LVDS camera connections
  • Display unit (micro HDMI connections)
  • EthernetAVB
  • Storage connection
    • one microSD card slot
  • I2C connection
  • Can interface (2 channels)
  • Power supply: 12V
  • Dimensions: 180x155 mm

R-Car V2H Debug BOARD

  • 100Mbit Debug Ethernet
  • 64 MByte NOR Flash
  • JTAG
  • Debug Console through CP2102 interface converter chip.
  • Dimensions: 75x75 mm

R-Car V2H SoC Documentation

TBD

Official Wheat board documentation

TBD

Where to buy

TBD

Tested peripherals

Cameras:
IMI IMI Gen4 minicube automotive camera (OV10635, MAX9271)
maxim Maxim OV10635 camera
Fakra Wires

Quick Start How To

This sections describes steps that are necessary to run a "Hello, World!" application using Yocto build. Wayland are supported.

Connect Evaluation board and Debug Board

Connection
This section explains how to connect flexible cable between boards.

  1. Lift up stopper as depicted on figure 4-1,then insert cable between connector and stopper as shown in Figure 4-2.
  2. Push both ends of stopper to lock the cable.
  3. Finally, cable and connector are become as Figure 4-3.

Build Yocto image

Refer to Yocto for steps necessary for making a Yocto image.

Connect to serial console

Use a miniUSB cable to connect the PC to R-Car V2H Wheat Debug board. CN4 must be used on Wheat side. On Linux, CP2102 driver is included with kernel versions >=2.6.12. Windows driver and sources can be found on Silicon Labs website.

Serial settings are 38400 8N1. Any standard terminal emulator program can be used.

On Linux:

picocom
sudo picocom -b 38400 DEVICE

replace DEVICE with the proper tty device name, for example /dev/ttyUSB0. Running dmesg | tail can help locating proper device.
After the successful connection, picocom should display:

picocom v1.7

port is        : /dev/ttyUSB0
flowcontrol    : none
baudrate is    : 38400
parity is      : none
databits are   : 8
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : no
nolock is      : no
send_cmd is    : sz -vv
receive_cmd is : rz -vv
imap is        : 
omap is        : 
emap is        : crcrlf,delbs,

Terminal ready

Use Ctrl+A, Ctrl+Q to exit picocom.

minicom
sudo minicom -b 38400 -D DEVICE

replace DEVICE with the proper tty device name, for example /dev/ttyUSB0. Running dmesg | tail can help locating proper device.
After the successful connection, minicom should display:

Welcome to minicom 2.6.2

OPTIONS: I18n 
Compiled on Aug  7 2013, 13:32:48.
Port /dev/ttyUSB0

Press CTRL-A Z for help on special keys

Use Ctrl+A, Q to exit minicom.

Power on

Use 12 V power supply with a 5.5 mm barrel plug.

Configure U-Boot to boot over TFTP + NFS or from a micro SD card

Refer to Yocto Wheat page for steps necessary for running Yocto.

Bootloader

At the moment only NOR variant of U-Boot is supported. QSPI/SPL U-Boot support will be added later Please set SW1[2:3:4] on the main board as all ON for boot-from-NOR mode, also set SW1 as ON on the debug board.

Flash U-Boot binary with the help of JTAG Emluator

  1. Download File:Uboot-wheat.zip and extract it.
  2. Flash uboot.bin to offset 0 of the NOR FLASH using JTAG Emulator (e.g. PARTNER-Jet emulator could be used).

Updating U-Boot via TFTP

Follow these steps carefully to update U-Boot:

  1. After you build Yocto image, copy u-boot.bin file from deploy build directory to tftp share directory
    [builduser]$ tree -p tmp/deploy/images/wheat/u-boot*
    ├── [lrwxrwxrwx]  u-boot.bin -> u-boot-wheat-v2015.07+gitAUTOINC+33711bdd4a-r0.bin
    ├── [lrwxrwxrwx]  u-boot.srec -> u-boot-wheat-v2015.07+gitAUTOINC+33711bdd4a-r0.srec
    ├── [lrwxrwxrwx]  u-boot-wheat.bin -> u-boot-wheat-v2015.07+gitAUTOINC+33711bdd4a-r0.bin
    ├── [lrwxrwxrwx]  u-boot-wheat.srec -> u-boot-wheat-v2015.07+gitAUTOINC+33711bdd4a-r0.srec
    ├── [-rwxr-xr-x]  u-boot-wheat-v2015.07+gitAUTOINC+33711bdd4a-r0.bin
    ├── [-rw-r--r--]  u-boot-wheat-v2015.07+gitAUTOINC+33711bdd4a-r0.srec
    
    
  2. Connect to serial console over microUSB.
    If using picocom, start it with the following command line options:
    sudo picocom -b BAUDRATE --send-cmd "ascii-xfr -vvs" DEVICE
    

    Refer to "Connect to serial console" section for more information.

  3. You should see the following output in the terminal:
    CPU: Renesas Electronics R8A7792 rev 1.1
    Board: Wheat
    DRAM:  1 GiB
    Flash: 64 MiB
    MMC:   sh-sdhi: 0
    In:    serial_sh
    Out:   serial_sh
    Err:   serial_sh
    Net:   smc911x-0
    
  4. Load U-boot with the following commands
    => tftpboot 0x41000000 u-boot.bin
    smc911x: MAC 00:de:ad:be:af:00
    smc911x: detected LAN89218 controller
    smc911x: phy initialized
    smc911x: MAC 00:de:ad:be:af:00
    Using smc911x-0 device
    TFTP from server 192.168.1.193; our IP address is 192.168.1.177
    Filename 'u-boot.bin'.
    Load address: 0x41000000
    Loading: ########################################
             881.8 KiB/s
    done
    Bytes transferred = 200604 (30f9c hex)
    smc911x: MAC 00:de:ad:be:af:00
    
  5. Flash u-boot with following commands
    => protect off all
    Un-Protect Flash Bank # 1
    => erase 0 +40000
    .. done
    Erased 2 sectors
    => cp.b 0x41000000 0 0x40000
    Copy to Flash... 9....8....7....6....5....4....3....2....1....done
    

ADAS Surround View Application

Build image

First please visit Yocto and perform all necessary preparation steps like cloning repositories and copy binaries and config files. Then:

  1. Clone demo layer
    git clone https://github.com/CogentEmbedded/meta-renesas-quick-start.git
    
  2. Switch to proper branches/commits
    cd $WORK/meta-renesas-quick-start
    git checkout bsp_v212_wheat
    
  3. Add necessary layers to $WORK/build/conf/bblayers.conf
      ${TOPDIR}/../meta-openembedded/meta-oe \
      ${TOPDIR}/../meta-openembedded/meta-python \
      ${TOPDIR}/../meta-openembedded/meta-networking \
      ${TOPDIR}/../meta-renesas-quick-start \
    
  4. Add necessary features to $WORK/build/conf/local.conf
    IMAGE_INSTALL_append = " utest-imr-sv"
    
  5. Build and install image as it's described in [1]
    bitbake core-image-weston
    

After all this steps you can start working with Wheat board and demo app.

Start IMR Surround view

You can then start surround view by running:

run-utest-imr-sv

FAQ

How can I change view point in imr surround view?

You need to install netevent package. It's allow to transmit input event from host machine to target board through network.
On the target machine(server side):

  • Open terminal or ssh session to the target machine
  • Run netevent -write ${PORT_TO_LISTEN}
    Example:
    netevent -write 5001 
    
  • On the host machine(client side):

  • Clone repository
    git clone https://github.com/CogentEmbedded/netevent
    
  • Compile and Build:
    cd netevent && make
    
  • Plug into host machine keyboard, mouse or another input device which provides event interface
  • System enumerates device and creates entity in /dev folder. Example:
    ls -l /dev/input/by-id/usb-*
    lrwxrwxrwx 1 root root 15 Dec  4 17:58 /dev/input/by-id/usb-04fc_USB_Wheel_Mouse-event-mouse -> ../event12
    
  • Grab and send input event to the machine run ./netevent -read ${DEV_INPUT_EVENT} ${IP_ADDR_MACHINE} ${PORT_TO_LISTEN}
    Example:
    ./netevent -read /dev/input/by-id/usb-04fc_USB_Wheel_Mouse-event-mouse 192.168.1.2 5001
    
  • Now can start utest imr surround view.
  • Known Issues

    TBD