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.

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 procfsstill 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.

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.

UART connection on Visionfive 2

With a USB-to-serial converter, the boot process can be monitored and the firmware updated.

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)”.


USB serial converter and Ethernet connection

USB serial converter and Ethernet connection

The Ethernet connection and USB to serial converter on the Starfive Visionfive 2.

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.


Terminal with update process

Terminal with update process

The firmware update in the terminal window. If the Windows Firewall interferes, the “T” will show timeouts.

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 firmware
tftpboot 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.


PumpKIN TFTP server

PumpKIN TFTP server

The PumpKIN TFTP server can be used under Windows. Its release in the Windows firewall is also important for public networks.

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 command
tftpboot 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.

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.


Current Debian desktop on Visionfive 2

Current Debian desktop on Visionfive 2

After the firmware update, the more up-to-date Debian image finally starts on the Starfive Visionfive 2.

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.


More from Make

More from Make


More from Make

More from Make


(dmk)

To home page

California18

Welcome to California18, your number one source for Breaking News from the World. We’re dedicated to giving you the very best of News.

Leave a Reply