VisionFive2-Lite

From Waveshare Wiki
Jump to: navigation, search
VisionFive2 Lite
VisionFive2 Lite

MG BXE-4-32, RISC-V U74 Quad-Core 64-bit V64GC ISA SoC, 2G/4G/8G Byte LPDDR4, External TF card/eMMC
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

{{{name6}}}

Introduction

The VisionFive 2 Lite is a low-cost and powerful RISC-V single-board computer designed for applications such as education, artificial intelligence IoT, smart home, and industrial IoT. The VisionFive 2 Lite is equipped with the JH-7110S processor developed by SiFive, featuring powerful image and video processing capabilities, and integrated with various expansion interfaces including PCIe, HDMI, USB 3.0, and Gigabit Ethernet. It fully supports mainstream Linux distributions and various open-source development toolchains, helping developers quickly get started and integrate. Whether used for learning, prototyping, or embedded deployment, VisionFive 2 Lite offers an excellent balance between performance and cost.

Specifications

Processor StarFive JH7110s
CPU RISC-V U74 Quad-core 64-bit V64GC ISA [email protected]
GPU IMG BXE-4-32
Memory 2G/4G/8G Byte LPDDR4
Memory External TF card/eMMC
Camera 1 × 2-lane MIPI-CSI camera port, supporting up to 1080P@30FPS
Display port 1 × 2-lane MIPI-DSI display port, supporting up to 1080p@30FPS)
1 × HDMI 2.0 port, supporting up to 4K@30FPS or 2K@60FPS
USB Host 3 × USB2.0 and 1 × USB3.0/USB2.0 (multiplexed with a PCIe 2.0 1 × lane)
USB Device 1 × USB device port (by reusing the USB Type-C port)
Wired network 1 × RJ45 Gigabit Ethernet port
Other ports 40PIN × 1;
M.2 M-Key SSD Slot
Power USB Type-C 5V / 3A
5V DC via GPIO header
PoE HAT
Size 56 × 85 × 21 (mm)
Recommended operating temperature 0 ~ 50℃

Basic Tutorial

Install System

Install TF Card System

Download and open the SDFormatter software, format the corresponding TF card
500px-Jetson Nano Image01.jpg
Download and open the Win32DiskImager software, select the corresponding image file and disk, and click to write
VisionFive2-2.jpg

Install eMMC System

  • Download the flashing software zip SFFB_Tool and unzip it
  • Use a USB cable to connect to the power port of VisionFive2 Lite and the USB port to the computer (USB3.0 port is recommended, the USB2.0 port may not have enough power supply during transmission)
  • Use the serial port to connect the corresponding pins on the VisionFive2 Lite40Pin

600px-VisionFive Lite-14.jpg

  • Enter the firmware and image download command line

Method 1 (recommended): Connect the power supply, press any key at the position shown in the diagram (with a 3-second countdown) to terminate the system startup, and enter the firmware and image download command line.
400px-VisionFive Lite-0.jpg
Method 2: Short circuit the two pins in the diagram and wait for the board to automatically enter the firmware and image download command line.
400px-VisionFive Lite-2.jpgVisionFive Lite-1.jpg

  • Enter the command fastboot usb 0

Install Driver

  • Open Device Manager to check if there is a device corresponding to the icon

VisionFive Lite-3.png

  • Right-click to update the driver, select the usb_driver folder in the flashing software folder

600px-VisionFive Lite-5.png 600px-VisionFive Lite-6.png

  • Then wait for the installation to complete, and the corresponding device will appear in Device Manager

Flash Image

  • If you do not have the driver installed, please go back to install the driver first
  • Open the flashing software SFFB_Tool

600px-VisionFive Lite-9.jpg

  • Select the corresponding image file, and then click the Run button under startAll or Action to start transferring the image

600px-VisionFive Lite-10.jpg600px-VisionFive Lite-11.jpg

  • After the transmission is completed, it will display as follows

600px-VisionFive Lite-13.jpg600px-VisionFive Lite-12.jpg

  • At this point, disconnect the USB connection between VisionFive2 Lite and the computer, and connect a 5V/3A power supply

Boot

Connect the VisionFive Lite with the TF card or eMMC inserted with the image flashed, to the USB to TTL module. The eMMC and TF card interfaces use the same transmission line, so do not connect both at the same time
Connect the USB to TTL module according to the diagram, plug the USB to TTL module into the PC, and confirm the port
VisionFive Lite-14.jpg
Open MobaXterm and follow the steps shown in the image
VisionFive2-5.jpg
VisionFive2-6.jpg
VisionFive2-7.jpg
Wait a few seconds and it will automatically enter the system
Enter the corresponding account and password:
Username: root / user
Password: starfive
VisionFive2-10.jpg


Get IP

  • Method 1:
# Install net-tools
sudo apt-get install net-tools
# View IP
sudo ifconfig
  • Method 2:
# View local IP
ip addr show

eth0 interface is an Ethernet IP, wlan0 is a WiFi IP
600px-VisionFive Lite-16.jpg

Configure WiFi

  • It is recommended to use the graphical interface for operation, and terminal operation commands are also available here
# View WiFi device name
nmcli device status
# Turn off WiFi
sudo nmcli radio wifi off
# Turn on WiFi
sudo nmcli radio wifi on
# Verification status (enabled indicates on, disabled indicates off)
nmcli radio wifi
  • Enter nmtui to access the graphical interface for network configuration

VisionFive2 Wifi-3.jpg

  • Select the second option

VisionFive2 Wifi-4.jpg

  • Select the WiFi you want to connect to. The asterisk (*) at the end of the WiFi name indicates signal strength

VisionFive2 Wifi-5.jpg

  • Enter password, press Enter

VisionFive2 Wifi-6.jpg

  • An asterisk (*) appears before the WiFi to indicate a successful connection

VisionFive2 Wifi-7.jpg

  • Press the Esc key to go back to the main interface and select the first option

VisionFive2 Wifi-8.jpg

  • The name of the WiFi you just connected appears in the place shown in the picture, indicating that the system has remembered this WiFi and will automatically try to connect after the next time you turn it on

VisionFive2 Wifi-9.jpg

  • Return to the terminal and enter the ifconfig command. At this point, you can see that WiFi has obtained the IP address and displayed the real MAC address

VisionFive2 Wifi-10.jpg

  • The operation of the Ubuntu system is the same as the above operation, except that there is an option Radio to turn WiFi on or off, and you need to use the sudo nmtui command to enter the graphical interface of the network configuration

VisionFive Lite-17.jpg

Connect to SSH

  • Currently, SiFive officially provides two types of compiled and packaged image files, Debian and Ubuntu
  • SSH in Debian is turned on by default, just connect directly
  • SSH in Ubuntu is turned off by default and needs to be manually started
  • Start SSH
sudo systemctl start ssh
  • Check the status of SSH. If you see the word "active (running)", it indicates that the SSH service has been successfully started.
sudo systemctl status ssh

600px-VisionFive Lite-15.jpg

  • Set auto-start at power-on
sudo systemctl enable ssh
  • Use root user for SSH connection; Execute the following command and restart the SSH service, otherwise you will be unable to connect continuously
# Run the command
echo 'PermitRootLogin=yes'   | sudo tee -a /etc/ssh/sshd_config
# Restart the SSH server
sudo systemctl restart ssh.service

Install Necessary Software Packages

  • Some software packages cannot be downloaded through apt/app get, but are provided by the StarFive apt source:
Node.js 18.19.1
v8 10.2.154.13
libsdl2-dev 2.0-0
QT 5.15.13
Firefox 126.0.1-1
LibreOffice 4:24.2.7
NW.js 0.65.1
FFmpeg 7:6.1.1-3ubuntu5
GStreamer 1.24.2-1ubuntu0.1
v4l2test (a custom shell script for using CSI cameras) 1.1-OK5
  • Directly use the script preset by the system
cd /opt
sudo ./install_full.sh
  • Install the nano editor
sudo apt update 
sudo apt install nano -y

Working with CSI Camera

  • Currently only supports cameras with IMX219 sensor
    • The following commands are general commands for Debian and Ubuntu. For CSI operations on Debian images, you can also refer to VisionFive2

Identify Camera

  • List the cameras recognized by libcamera
libcamera-hello --list-cameras

600px-VisionFive Lite-18.jpg

Take Photos

  • Capture images with libcamera tool
libcamera-jpeg -o test.jpg
libcamera-jpeg -o test.jpg --nopreview  # Recommended

--nopreview to disable preview and avoid DRM window crashes

  • Preview for 5 seconds, then take the last frame of the image
libcamera-still --output test.jpg --width 1920 --height 1080 --timeout 5000
  • View photos
#Install eog
sudo apt install eog
eog test.jpg

Record Video

  • Record a 10-second video (saved in H.264 format)
libcamera-vid -o test.h264 -t 10000
libcamera-vid -o test.h264 -t 10000 --nopreview

--nopreview disables previews

  • Play video:
# Install mpv
sudo apt install mpv
mpv test.h264  

Display Camera in Real Time

  • Method 1
libcamera-still --output test.jpg --width 1920 --height 1080 --timeout 0
# or
libcamera-still --output test.jpg --width 1920 --height 1080 --timeout 0 --nopreview false
  • Method 2
libcamera-vid --width 1920 --height 1080 --timeout 0 --nopreview false

Release Device Occupancy

  • After executing the image acquisition command, the CSI device may continue to be occupied or not fully released for a short period of time, causing problems with the images acquired by the secondary call
  • Therefore, it is necessary to execute the following command and wait for a period of time before executing it again
# Find and end all processes related to libcamera
sudo pkill -f "libcamera"
# Clear libcamera runtime cache
rm -rf ~/.cache/libcamera/

Working with GPIO

  • GPIO pinout definition
VisionFive2 Lite Pinout Definition
Pin Name Pin Num Pin Num Pin Name
3.3V 1 2 +5V
GPIO58 (I2C SDA) 3 4 +5V
GPIO57 (I2C SCL) 5 6 GND
GPIO55 7 8 GPIO5 (UART TX)
GND 9 10 GPIO6 (UART RX)
GPIO42 11 12 GPIO38
GPIO43 13 14 GND
GPIO47 15 16 GPIO54
3.3V 17 18 GPIO51
GPIO52 (SPI MOSI) 19 20 GND
GPIO53 (SPI MISO) 21 22 GPIO50
GPIO48 (SPI SCLK) 23 24 GPIO49 (SPI CE0)
GND 25 26 GPIO56
GPIO45 27 28 GPIO40
GPIO37 29 30 GND
GPIO39 31 32 GPIO46 (PWM0)
GPIO59 (PWM1) 33 34 GND
GPIO63 35 36 GPIO36
GPIO60 37 38 GPIO61
GND 39 40 GPIO44
  • Usage is basically the same as VisionFive2, here is a way to operate GPIO via command line
  • The user used in this command is an ordinary user, taking GPIO55 pin as an example
# Export the GPIO55 pin
echo 55 | sudo tee /sys/class/gpio/export > /dev/null
# Set to output mode
echo out | sudo tee /sys/class/gpio/gpio55/direction > /dev/null
# Output high level
echo 1 | sudo tee /sys/class/gpio/gpio55/value > /dev/null
# Output low level
echo 0 | sudo tee /sys/class/gpio/gpio55/value > /dev/null
# Cancel export
echo 55 | sudo tee /sys/class/gpio/unexport > /dev/null

# Set to input mode
echo in | sudo tee /sys/class/gpio/gpio55/direction > /dev/null
# Read input value
cat /sys/class/gpio/gpio55/value

Resources

Schematic Diagram

Official Resources / Forum Address

SDK

GitHub link:

Debian Image

Ubuntu Image

Development Software

Update Flash

FAQ

 Answer:

At present, the official download software cannot be directly backed up, you need to use a USB flash drive larger than 64GB, connect to the VisionFive2 Lite USB interface, and then use the dd command to back up

 Answer:

We haven't tested it here, but since both use the same transmission path, there could be data interaction conflicts; it is not recommended to use them simultaneously

 Answer:

If there is a short circuit to the Fastboot pin, it will enter the firmware update and system flashing command line
If there is no short circuit, it will then determine whether there is an image in the TF card/eMMC. If there is, it will proceed with the boot; if not, it will check whether there is an NVME connection and whether there is a system inside

 Answer:

eMMC comes with a pre-installed system, which is an official flashed system, Ubuntu-based, the predecessor of the 2510 system, and not officially open; it is recommended to update

Support



Technical Support

If you need technical support or have any feedback/review, please click the Submit Now button to submit a ticket, Our support team will check and reply to you within 1 to 2 working days. Please be patient as we make every effort to help you to resolve the issue.
Working Time: 9 AM - 6 PM GMT+8 (Monday to Friday)