With the Visionfive 2, Starfive has launched an inexpensive and technically very powerful single-board computer (SBC) as a Kickstarter project that uses an open RISC-V processor with four cores. The Raspberry Pi format with the pin header for controlling additional peripherals does the rest to arouse interest in trying out the young processor architecture.
The first boards have been pouring in to Kickstarter supporters for about a week. Unlike the Raspberry Pi, however, there is still no fully-fledged ecosystem around the Visionfive 2. Starfive does deliver a quick start guide. However, it shortens a lot of information and omits essential information at important points.
Current Debian
On the Starfive homepage, the manufacturer provides current Debian images for the Visionfive 2 to disposal. These can be combined with the one suggested by Starfive Tool balenaEtcher transfer to the SD card. A first stumbling block lurks here: The more current image does not start on the delivered boards. This is due to outdated firmware that Visionfive 2 owners have to update first.
The Quickstart Guide mentions two options: Updating via TFTP and directly from the running distribution via the /proc/mtd
-Device. However, the Debian version “Image-55” that starts in the delivery state does not have an active one procfs
still can MTD
activate in it.
A minimal SD card image may help here sdcard.img
from the Starfive GitHub repository – but this is untested and unconfirmed as of now. The files are from the GitHub repository u-boot-spl.bin.normal.out
as visionfive2_fw_payload.img
required for firmware update.
Firmware update
The solution that works in any case means the detour via TFTP. To do this, a USB-UART adapter, such as is commonly used in microprocessor tinkering, must be connected to the pin strip.
Pin 1 is marked on the post bar. If the bar is at the top left, the connections belong to the left outside. As a terminal it does that free PuTTY good services. The COM port of the USB-UART dongle must be selected there and the transmission rate set to 115,200 bit/s. If necessary, the COM port can be found using the device manager under “Ports (COM & LPT)”.
It works on Windows free and open source TFTP server PumpKIN quite good for the firmware update. The first thing to do is to connect the computer via Ethernet to the Visionfive 2’s Ethernet port, which is located somewhat in the middle – the outer gigabit port currently does not support DHCP and does not yet establish a reliable connection. On Windows, the Ethernet adapter requires manual, static settings. According to the Quickstart Guide, the IP address is 192.168.120.99, network mask 255.255.255.0; the gateway remains empty.
Now the Visionfive 2 can be powered via USB-C. The boot process can be observed with PuTTY. This shows a short 3 second delay to press a key to complete the boot process. This is how you get to the firmware environment, where an update via TFTP is possible. From now on the update works as described in the Quick Start Guide.
In the terminal on the Visionfive 2, the IP addresses can be assigned to environment variables.setenv ipaddr 192.168.120.222;setenv serverip 192.168.120.99
The command sf probe
initializes the flash memory.
The Visionfive 2 receives the first part of the firmwaretftpboot 0xa0000000 ${serverip}:u-boot-spl.bin.normal.out
This file must now be selected in PumpKIN under Windows and specified as the IP address 192.168.120.222. The Windows Firewall request must be allowed for both public and local networks, otherwise the connection permanently fails – another stumbling block. Windows recognizes the manual Ethernet connection as a public network.
The command sf update 0xa0000000 0x0 $filesize
then moves the update to the flash memory.
Next up is the second file. Visionfive receives this with the commandtftpboot 0xa0000000 ${serverip}:visionfive2_fw_payload.img
This file must also be offered with PumpKIN like the SPL file before. Then the new U-Boot image comes with the command sf update 0xa0000000 0x100000 $filesize
permanently on the Visionfive 2 board.
Current image
Since the firmware is now up to date, the Debian image Image-69 can also be started with the Visionfive 2. The developers have already included numerous corrections and improvements since last week. This allows the first steps to be taken with the Visionfive 2 – without possibly frustrating experiences.
This is a good starting point for questions and tips Visionfive 2 forum at forum.rvspace.org. A small, friendly community has gathered there and helps with problems.
(dmk)