Ubuntu on VisionFive2 initial impressions

had to install neofetch manually.

installed as instructed without issue last night.

Does not see the nvme drive, at least without any tweaks. Haven’t dug into it yet. All the previous 5.15 kernels did see the drive.

also did not see the provided usb wifi dongle.

so may need to dig into hardware stuff?

Also running headless; have not checked to see if the hdmi works.

more to come!

Posted in risc-v, tech | Leave a comment

Waydroid on Mobian on PinephonePRO

installed with method 1 on the mobian wiki, using the upstream repo.

Surprisingly easy, with the “Here be dragons” warning making me wary.

Do feel a bit sad that I cannot find all the apps I want/need on mobian yet, but glad this seems to work very well so far. And surprisingly fast.

Initial test, default install with “vanilla” android (so no google play store integration)

Signal, from their direct APK working. (tried running the “official” signal desktop linux x86 version in an emulated mode with qemu, but that failed). If Signal releases a “pure” arm linux version, will switch to that on mobian.

Other initial observations.

did not seem to handle rotation that well; would rotate, but only show thin part in half the window? like it didn’t get the screen dimensions also rotated. Locked the settings in Mobian to portrait and that works; if start waydroid in landscape mode, has the problem.

no wifi or cell in the android settings, but am connected to internet through mobian. I assume this is expected, but interesting… (wonder what that looks like to the android spyware?)

youtube doesn’t play well. can hear sound, but video freezes.

the sound recorder did not work; since youtube plays sound, may be the recording part?

Posted in tech | Leave a comment

WordPress Site Edits, removed twitter add mastodon

Realized I don’t actually look at the “real” site, just the editor, which is very blank.

So noticed the big twitter button, that is on the default pages at the bottom, and with recent changes, decided to remove it. But how?

google gave lots of answers, but for me not the most up to date.

so here is what I did, just today:
on the main WordPress page, went to Tools >> Marketing

then on the Marketing and Integrations page:

go to [Sharing Buttons] tab.

then the [Edit Sharing Buttons] link. There you can pick from the list, found Mastodon, and “unclicked” Twitter/Facebook.

so now below, you should see Mastodon if you want to share.

Posted in tech | Leave a comment

VisionFive 2 Armbian Kafka

java seems to be the theme of the week.

still have the same java as the minecraft experiment.

pulled the “community” version of kafka from confluent: https://www.confluent.io/installation/ (may have to register)

have extracted the tar file onto the nvme drive:
/nvme/community/confluent-7.3.2

edit the properties files to point to the nvme also:

etc/kafka/server.properties:log.dirs=/nvme/kafka/kafka-logs
etc/kafka/zookeeper.properties:dataDir=/nvme/kafka/zookeeper


now using “tmux” to start multiple components
(https://www.redhat.com/sysadmin/introduction-tmux-linux)

and manually start the components each in their own “tmux tab”
zookeeper
./bin/zookeeper-server-start etc/kafka/zookeeper.properties

kafka-server
./bin/kafka-server-start etc/kafka/server.properties


and create a sample topic: (this is all on one line)
./bin/kafka-topics --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic riscv-topic

now also use python, so installed kafka-python

and used it to create some random data

import csv
import json
from kafka import KafkaProducer
import random

MIN_LETTER = 65
MAX_LETTER = 90

producer = KafkaProducer(
    bootstrap_servers="visionfive2:9092",
    client_id="my_client",
    acks=1,
    value_serializer=lambda v: json.dumps(v).encode("utf-8"),
)

# simple random data test
for r in range(0, 100):
    random_string = ""
    for s in range(6):
        random_integer = random.randint(MIN_LETTER, MAX_LETTER)
        random_string += chr(random_integer)

    row = {"count": r, "code": random_string, "number": random_integer}
    producer.send(topic="riscv-topic", value=row)
    producer.flush()

then to see them on cli: (in its own tab kafka-consumer)

./bin/kafka-console-consumer --bootstrap-server localhost:9092 --from-beginning --topic riscv-topic

this is putty, from my windows machine, you can see the various “tabs” running the different servers.

Posted in risc-v, tech | Leave a comment

Armbian VisionFive 2 running

downloaded this weeks armbian visionfive2 image and got it running;

Notes:

Did have to change dip switches, as mentioned in a forum, the settings for the default debian image did not work;

booted headless (even with the XFCE image), so used the serial to USB connector, to input default root password, and new user info.

I have the 8 gig version, and the default (above) boot only detected 4 Gig ram; searching google/forums indicated this is a known issue, and followed the steps from here (with different paths), final re-compile line, with the default image was

dtc -I dts -O dtb -o /boot/dtb-5.15.0-starfive2/starfive/jh7110-visionfive-v2.dtb vf2.dts

reboot, and all memory visible!

quick test, since I also have an nvme drive attached, with java and minecraft from my last post… started that.

runs fine, does not initially seem any slower (or faster) than the default debian image.

Posted in risc-v, tech | Leave a comment

Bing fails to install Minecraft on VisionFive 2

prompted Bing in compose mode with

installing minecraft java edition on risc-v sbc visionfive 2

and this is the result

How to Install Minecraft Java Edition on RISC-V SBC VisionFive 2

Minecraft is one of the most popular sandbox games in the world, with millions of players across different platforms. Minecraft Java Edition is the original version of the game, which runs on any computer that supports Java. However, if you want to play Minecraft on a RISC-V single-board computer (SBC) like VisionFive 2, you will need some extra steps to make it work.

RISC-V is an open-source instruction set architecture (ISA) that can be implemented by anyone without paying royalties or fees. RISC-V offers many advantages over other ISAs, such as modularity, scalability, and efficiency. VisionFive 2 is a powerful RISC-V SBC that features a quad-core processor, 8GB of RAM, and a Mali-G52 GPU. It can run Linux and Android operating systems and supports various peripherals and expansion modules.

To install Minecraft Java Edition on VisionFive 2, you will need to follow these steps:

  1. Download and install OpenJDK 16 for RISC-V from this link: https://github.com/AdoptOpenJDK/openjdk16-binaries/releases/download/jdk-16%2B36/OpenJDK16U-jdk_riscv64_linux_hotspot_16_36.tar.gz
  2. Extract the tar.gz file to a folder of your choice and set the JAVA_HOME environment variable to point to it.
  3. Download and install LWJGL 3 for RISC-V from this link: https://github.com/LWJGL/lwjgl3/releases/download/3.3.0/lwjgl-3.3.0.zip
  4. Extract the zip file to a folder of your choice and set the LWJGL_HOME environment variable to point to it.
  5. Download and install Minecraft Launcher for Linux from this link: https://launcher.mojang.com/download/Minecraft.deb
  6. Install the deb file using sudo dpkg -i Minecraft.deb
  7. Run Minecraft Launcher from your applications menu or terminal and log in with your Mojang account.
  8. Edit your installation settings and add these JVM arguments: -Dorg.lwjgl.librarypath=$LWJGL_HOME/native/linux -Dorg.lwjgl.system.jni.nativespath=$LWJGL_HOME/native/linux
  9. Save your settings and launch Minecraft Java Edition.

You should now be able to play Minecraft Java Edition on your VisionFive 2 SBC with decent performance and graphics quality. Enjoy!

Impressive. Incorrect, but sounds good.

step 1: the riscv64 openjdk download link does not exist 🙁. There ARE riscv64 java versions, including one directly from the debian repos, but it missed that.

step 3: talks about the minecraft launcher, try it and:

sudo dpkg -i Minecraft.deb
dpkg: error processing archive Minecraft.deb (--install):
package architecture (amd64) does not match system (riscv64)
Errors were encountered while processing:
Minecraft.deb

what actually worked?

Minecraft Java Edition Server runs on the VisionFive 2

Configured to run, along with an old windows 10 machine.

on the windows 10 machine, start the minecraft launcher, (need an account) and download the server.jar, by going to the installations tab, click “New installation”, and click the down arrow next to SERVER:

you then need to copy the server.jar to the visionfive 2

On the visionfive 2

  • sudo apt install openjdk-21-jre-headless
  • mkdir minecraft_server
  • cd minecraft_server
  • copy the server.jar to minecraft_server dir

will need to accept eula by editing eula.txt; simplest way is to run the server twice:

  • java -jar server.jar
  • will stop with message, edit the eula.txt and set to true and rerun the server
  • java -jar server.jar

then connect from the windows machine, with the IP of the visionfive 2.


notes. above java command just uses defaults; if you want to give more memory, you can with

java -Xmx4096M -Xms2048M -jar server.jar

this is not a fast machine, will see errors like

[13:59:15] [Server thread/WARN]: Can't keep up! Is the server overloaded? Running 2469ms or 49 ticks behind

so not for any major games, but useful to try it out. Similar to a raspberry pi, so all the “tweaks” from that will also work

Posted in risc-v, tech | Leave a comment

VisionFive 2 Python and Pygame

Installed python, pygame, jupyter-lab (and matplotlib).

Sound works via hdmi (sort of). There is sound coming from the TV, but not totally clear, sort of garbled, as if timing is a bit off, but fine for beeps and explosions from simple games. When previously using the headphone jack, was no distortion.

downloaded Python-Games from github. One note, debian is case sensitive, so some games looked for Fonts not fonts, or similar … so had to edit a few of the scripts. Simple ones (tetris) were playable, some of the more complex ones, were slow.

For Jupyter Lab, found installing the pure apt packages worked best, often got some compile/dependency errors when trying to just use pip install

Posted in risc-v, tech | Leave a comment

Firefox Built on VisionFive 2

Unmodified firefox build (from this weekend) built on Debian on the VisionFive 2 !

Linux starfive 5.15.0-starfive #1 SMP Mon Feb 27 14:03:14 EST 2023 riscv64 GNU/Linux

not optimized, and not with the JIT, just the default build.

A few notes, if someone wants to replicate.

Using 202302 debian build. Enabled remote ssh.

  • updated /etc/apt/sources.list to pull from regular location

#deb https://snapshot.debian.org/archive/debian-ports/20221225T084846Z unstable main
deb http://ftp.ports.debian.org/debian-ports/ unstable main


(this did “break” my X startup, so have to manually start Xorg from ssh session)

  • installed rustc 1.67.1 via rustup
  • installed node 19 from experimental tier
  • had to build cairo from source, the one installed from apt gave error
    # error Cairo was not compiled with support for GObject

then Build Firefox on Linux

did have to install a lot of dependencies with apt.

further note: do have an nvme installed, and put the code on that, but left the root system on SD card. So very slow, took ~6 hours (with a few stops in between to add dependencies)

result: Firefox runs!

./firefox --version
Mozilla Firefox 112.0a1

Not very quick as the system is not optimized, and didn’t install the jit.

Youtube worked, and sound via headset (no hdmi sound).
a bit slow, so reduced resolution to lowest to get smooth video.
not bad for no GPU at all!

next project, to move root onto the nvme so system is faster. (and fix X again so boots properly)

Posted in tech | Leave a comment

first RISC-V board: StarFive VisionFive 2

arrived this week:

StarFive VisionFive 2 board

VisionFive 2 Box

Picked up the 8 Gig dual network version from AmeriDroid.

Not had time to do much; Downloaded the 202302 debian image onto SD card. One hint: the board did not come configured to boot from SD: had to move the small switches to enable:

Once had figured that out, everything came up fine. Mine had no problems booting, and displaying on my HDMI monitor. Don’t intend initially to use it that way, so just installed ssh server, and unplugged. Now on my network and running headless (the little lights are flashing by the power). Am using my official Raspberry PI USB3 power supply, it has just the 3A power required.

uname -a
Linux starfive 5.15.0-starfive #1 SMP Mon Feb 27 14:03:14 EST 2023 riscv64 GNU/Linux

more updates to come!

Posted in tech | Leave a comment

Pinephone Pro camera, outside shots

Out on a sunny day, took a few outdoor shots with the pinephone pro and pinhole app.

Posted in Art, tech | Leave a comment