Run Linux on BeagleV Starlight in Renode

Published:

Topics: Open hardware, Open ISA, Open machine vision, Edge AI

BeagleV Starlight is an upcoming affordable general-purpose Linux-capable RISC-V platform, and as such understandably generates a lot of interest in the development community. It is currently in beta stage and limited supply, so we thought it’s a great moment to implement support for the board’s StarFive 71x0 SoC in our open source simulation framework, Renode, to enable pre-hardware development on this exciting platform.

Beagle-V Starlight drawing

Improving Starlight’s RISC-V support

BeagleV Starlight is an open hardware design with a limited number of prototype boards sent to upstream developers for software enablement, a few of which are already in the hands of our engineers who are joining a collaborative effort led by Drew Fustini from BeagleBoard Foundation aimed at enabling better open source software support for RISC-V. As our contribution to improving the software ecosystem around the platform, we have developed initial support for the StarFive 71x0 SoC and the BeagleV Starlight in Renode. Developers who don’t have the physical board yet can already start prototyping their systems on a virtual BeagleV Starlight, whereas those who do have the hardware can use our simulator to set up a robust CI and testing flow. The support showcases Renode’s ability to broaden the outreach of various platforms, especially if they are in limited supply, with virtual models of platforms such as Microchip’s PolarFire FPGA SoC or QuickLogic’s QuickFeather being available for system development before their physical releases.

To get started with BeagleV Starlight in Renode, you need to download a release that contains the latest changes from master, for example the Linux portable nightly build. Download and unpack Renode with:

wget https://dl.antmicro.com/projects/renode/builds/renode-latest.linux-portable.tar.gz
mkdir renode_portable
tar xf  renode-latest.linux-portable.tar.gz -C renode_portable --strip-components=1

and run BeagleV with:

cd renode_portable
./renode -e “start @scripts/single-node/beaglev_starlight.resc”

This will run Linux on BeagleV Starlight. Congratulations! Now you can compile your own binaries and exchange them in the script using specific variables ($bin, $uboot, $linux and $fit) to run your own software.

Running Beagle-V Starlight in Renode

While the the BeagleV Starlight platform did not make it for our Renode 1.12 release which happened just a few weeks ago, it will obviously be included in the next release.

Apart from a rich portfolio of supported development platforms, Renode features models of various sensors: pressure, humidity and temperature sensors, microphones, as well as IMUs and camera sensors. This means that system designers can start connecting virtual sensors to the simulated BeagleV Starlight board, getting an end to end flow while developing and testing IoT and machine learning applications.

ARVSOM and Scalenode

Antmicro’s recently announced ARVSOM also features the StarFive 71x0 SoC, meaning the platform is supported in Renode as well. It is compatible with Scalenode - our open hardware baseboard targeting the server room and other applications. Together they form an easily scalable compute platform for building robust runners for CI and similar workloads, as well as creating custom, open source hardware and software based systems for edge AI applications, which Antmicro has been building for its customers for more than a decade. To run ARVSOM in Renode, in the code snippets above just use:

./renode -e “start @scripts/single-node/arvsom.resc”

If you need a robust and modern system built on vendor-neutral technologies that can be customized to achieve the functionalities that you require, get in touch with us at contact@antmicro.com and let’s discuss how our end-to-end engineering services can help your organization.

See Also: