Utente:Michele palazzoni

Jump to: navigation, search

Opensuse desktop on Android with Raspberry Pi Zero

This is one of the pisusedroid performance tests: I called the project this way because it is an OpenSuse Tumbleweed desktop on Android that with the help of Raspberry Pi Zero as a thin client offers a comfortable desktop experience without affecting the performance much of the mobile phone and its use.

The most important challenge of this project is the performance, I deliberately used a smartphone based on Snapdragon 820, so not a last generation soc and the smallest of the Raspberry, the Pi Zero, to be sure of the usability of the Opensuse desktop: the main problem is that here we are talking about truly reduced performance and we must minimize the impact of the software used both on the smartphone side but even more on the Raspberry side. The same image on Raspberry Pi 3 hardware offers significantly better performance especially from the video side but for office use and maximum portability goes even pi zero.

On the smartphone I installed LineageOS to get root access, the best performance and the best compatibility with the Opensuse environment but you can use any app that lets you run our beloved Opensuse desktop on Android as Userland or others.

If you decide for LineageOS rooted manually install busybox in / system / xbin, create the directory / data / local / suse that will host the chroot, download and unzip the opensuse image of Tumbleweed arm64 of the Xfce4 desktop from the official site: you can do everything with the smartphone using the terminal and busybox (wget, unxz, tar), as root it will be enough to run the chroot to start. Remember to add to the new Opensuse user that you will create standard Android groups to access system resources otherwise you won't be able to do much, even connect to the internet ... you can find the ids of the android groups in the android terminal with the id command of busybox. I will soon introduce the script for the changes to the rootfs of Opensuse Tumbleweed as well as those for LineageOS on https://github.com/palazzoni/pisusedroid.

On the Raspberry Pi to get the best performance I used the operating system DietPi - optimization of the raspbian - adb, TigerVNC and Pulseaudio: I carried out an infinite number of tests to obtain decent performance with pi zero, it was a real challenge considering the very little power available and from the tests it came out that adb offers the best latency and speed for connecting with USB cable (but I would say also via wifi), TigerVNC is considerably faster than other remote desktop solutions thanks to the NEON arm hardware acceleration (the streaming solutions are not usable on high resolutions and small text) and Pulseaudio set for lower bandwidth and CPU consumption offers good performance.

At the most, several changes have been made to obtain the best performance, so I suggest you download the image already ready from https://github.com/palazzoni/pisusedroid: once you have connected the pi to the monitor, mouse and keyboard you will have to launch the 'adbvnc executable to interact with the opensuse desktop (I am planning to launch it automatically when connecting the mobile via udev :-).

To successfully connect pisusedroid via usb it will suffice that you have adb enabled on your phone and that you have launched the opensuse desktop with vnc display: 1 (port 5901) and pulseaudio configured to connect to the server on port 4712.

I do not deny that with the performance of the latest mobile socs the usability of Opensuse on smartphones as a desktop solution is no longer a mirage, a collaboration with LineageOS to better integrate Opensuse integrated with a performing arm card could be an excellent alternative to the more famous Dex .... If you want to collaborate on the project, feel free to contact me by email