RoadTest: Review the BeagleV-Ahead Single Board Computer
Author: crisdeodates
Creation date:
Evaluation Type: Development Boards & Tools
Did you receive all parts the manufacturer stated would be included in the package?: True
What other parts do you consider comparable to this product?: BeagleV Fire
What were the biggest problems encountered?: Lack of adequate support documentation, compatible USB cable
Detailed Review:
First of all, I would like to thank element14, beagleboard and Randall for providing me the opportunity to roadtest the BeagleV-Ahead. My roadtest focused on exploring and understanding, mainly the basic capabilities of the product and the ease of which someone can start working with the product.
BeagleV Ahead is a powerful, flexible platform for anyone interested in diving into the RISC-V ecosystem, whether for development, prototyping, or educational purposes. Created by BeagleBoard.org, this board brings Linux capability to the RISC-V platform, offering an accessible option for those looking to experiment with this emerging architecture.
The product came in a nice packaging from beagleboard.
The box had the following parts:
The WiFi antennae should be carefully installed to the designated slot at the bottom of the board.
The BeagleV-Ahead features the following specifications. Reference: beagleboard
Feature |
Description |
---|---|
Processor |
T-Head TH1520 (quad-core Xuantie C910 processor) |
PMIC |
DA9063 |
Memory |
4GB LPDDR4 |
Storage |
16GB eMMC |
WiFi/Bluetooth |
|
Ethernet |
|
microUSB 3.0 |
|
HDMI |
|
Other connectors |
|
The front facing side of the module features the following components:
Power LED |
Power (Board ON) indicator |
JTAG (TH1520) |
TH1520 SoC JTAG debug port |
Barrel jack |
Power input |
GigaBit Ethernet |
1Gb/s Wired internet connectivity |
User LEDs |
Five user LEDs, Power and boot section provides more details. These LEDs connect to the TH1520 SoC |
Reset button |
Press to reset BeagleV Ahead board (TH1520 SoC) |
Power button |
Press to shut-down (OFF), hold down to boot (ON) |
P8 & P9 cape header |
Expansion headers for BeagleBone capes. |
UART debug header |
6 pin UART debug header |
USB boot button |
Hold and reset board (power cycle) to flash eMMC via USB port |
SD boot button |
Hold and reset board (power cycle) to boot from SD Card |
mikroBUS shuttle |
16pin mikroBUS shuttle connector for interfacing mikroE click boards |
16GB eMMC |
Flash storage |
RTL8211F |
Gigabit IEEE 802.11 Ethernet PHY |
The bottom side of the board features the following components.
Feature |
Description |
---|---|
DA9063 |
Dialog semi Power Management Integrated Circuit (PMIC) |
microUSB 3.0 |
Power & USB connectivity as client or Host (OTG) |
Antenna connector |
2.4GHz/5GHz uFL connector |
AP6203BM |
Ampak WiFi & BlueTooth combo |
DSI |
MIPI Display connector |
CSI0 & CSI1 |
MIPI Camera connectors |
TH1520 |
T-Head quad-core C910 RISC-V SoC |
Mini HDMI |
HDMI connector |
microSD |
Micro SD card holder |
4GB RAM |
2 x 2GB LPDDR4 RAM |
In terms of hardware, the board is designed for good performance computing applications, thanks to the TH1520 RISC-V quad-core Xuantie C910 processor. Additionally it offers AI acceleration and supports popular AI frameworks such as TensorFlow, ONNX, and Caffe. For connectivity, the board features integrated 2.4G Wi-Fi and Bluetooth 5.2, and also provides a 1 Gigabit Ethernet network interface. The mikroBUS connection interface enables connecting a vast variety of click boards. Additional peripheral options include 2x CSI, 1x HDMI, 1x DSI multimedia ports, 2x 46pin BeagleBone Header, 1x microSD, and 1x microUSB 3.0.
In terms of software, the board supports multiple operating systems, including Yocto and Linux distributions such as Ubuntu making it an easy to use platform for development and projects.
The powering up of the module was a bit hard. For development boards, we normally expect a compatible power cable to be shipped along with the board, especially if the cable required is not a commonly used one. However, BeagleV-Ahead had no such accompanied power cable shipped in the package. The only cable it came with was a Micro USB OTG cable which cannot be used to power up the board. To power the board, you need a 5V DC power supply or should connect to a USB power supply using either a standard high-speed micro-B cable or a USB 3.0 super-speed micro-B cable. Luckily I had a USB micro-B cable with me, with which I connected the board to power up via USB.
To flash the board, we need to connect it to a PC using either a super-speed micro-B or high-speed micro-B cable. To flash the board, I used an Ubuntu laptop. The documentation in the official website is only based on Linux and no support was found to flash with either Windows or Mac.
Boot the BeagleV to eMMC flash mode
To put your BeagleV Ahead board into eMMC flash mode you can follow the steps below:
Press and hold USB button.
Connect to PC with super-speed micro-B or high-speed micro-B cable.
Release USB button.
You can also put the board into eMMC flashing while it is already connected to a PC you can follow these steps:
Press and hold USB button.
Press reset button once.
Release USB button.
The beagleboard remains booted in eMMC flash mode with all the user LEDs on
Install android platform tools
$ sudo apt-get install android-sdk-platform-tools
Execute the script fastboot_emmc.sh as root
$ sudo ./fastboot_emmc.sh
To login, first connect an ethernet cable to the PC. Thanks to the pre-configured avahi mDNS daemon, the device is discoverable in the local network.
Login via SSH using the following command.
$ ssh beagle@beaglev.local
The default username is "beagle" and the password is "temppwd".
The software was also given an update.
$ sudo apt update
$ sudo apt dist-upgrade
The image already comes with "tightvnc" installed. However the vncserver needs to be configured. Refer here for more details.
SSH into the beagleboard
$ ssh beagle@beaglev.local
Install the xfce goodies for GUi
$ sudo apt install xfce4 xfce4-goodies
$ vncserver
At first run, enter a password for vnc access.
A new vnc X desktop session called “BeagleV:1” will be created.
Back on the local machine, open a vnc viewer and connect to the vnc server at port 5901.
Give the username and password of the BeagleV-Ahead user for authentication.
As the board is a Beagle board with standard cape expansion headers, I was expecting some level of compatibility with the existing range of Beagleboard Capes. But, this is where I hit a road block. There wasn't any reliable documentation regarding the Cape compatibility with BeagleV, and the online support for the same was also non existent. However, I made an attempt to try making the expansion boards work. For that the Cape which I chose was the Robotics Cape. Randall was kind enough to ship me one to test with.
As an attempt to make the Cape work BeagleV-Ahead, I had to dig a bit deeper to get the correct RISC-V binaries. None of the straight forward methods of installing the binaries worked.
The package "librobotcontrol" was required to make the cape work on existing supported beagle boards such as beaglebone black.
Installing the RISC-V version of the package resulted in giving errors.
Hence I attempted to compile this library from source on the BeagleV-Ahead.
$ git clone https://github.com/beagleboard/librobotcontrol
$ cd librobotcontrol/
$ make
$ sudo make install
Check the installation by executing the following.
$ rc_test_drivers
However trying to make "rcpy" package (python interface for the cape) work resulted in further issues.
Next I tried "pyctrl" (python suite for systems and control) package, which won't install unless I break the system packages.
Trying to install the "Adafruit BBIO" package also resulted in issues.
The official webpage lacks many important information regarding the set up and configuration of the board, such as the support of flashing the image to the board using a Windows or Mac operating system. However the beagleboard community form has a lot of buzz regarding the BeagleV topics. However I was not able to receive any support yet for the query that I raised regarding the compatibility of the existing robotics capes for the BeagleV-Ahead boards. I also tried to contact beagleboard via their X page and was not successful there as well. I believe it is a bit hard to get hold of the team to get some real support and guidance regarding the products.
BeagleV-Ahead is a well suited development board for its moderately powerful RISC-V Linux-capable board at an affordable price point. Sticking to the standard BeagleBone form factor and support for expansion, the existing BeagleBone enclosures and capes should be working with the board, given the proper support. For those looking to get hands-on with Linux on RISC-V, BeagleV-Ahead would be a promising platform to start with.
Apart from the issues faced due to the power supply and adequate documentation/support, working with the BeagleV-Ahead was wonderful. However, without the adequate support and documentation, it feels like a rushed product. I am yet to explore further capabilities of the board and I will continue to update this report as I complete them. I am also working on a robotics project using the BeagleV-Ahead, but will continue once I am able to make the robotics cape working with the board.