Saturday, 19 February 2022

Advances in understanding AstroDMx Capture in Chrome OS under Crostini

We have reported previously on AstroDMx Capture for Chrome OS running in Crostini, a Linux virtual machine in Chrome OS.


We reported that the only astronomy cameras that we found to work were the cameras in the SVBONY SV305 series, and recently the SV405CC prototype.

Well it turns out that things are not as simple as it seemed, and this turns out to be good news for astronomical imaging.

Chromebooks are in general, under-powered and under resourced computers. They have low end CPUs, very little RAM and very little local storage. In a sense, this is easy to understand as when Chromebooks were first introduced in 2011, they were little more than a browser. The idea was that most homes have connections to the internet, so the browser within Chrome OS (a Linux based OS) could be used to do almost everything online and that a user’s documents, photos etc would not usually be stored locally, but in the cloud on one of Google’s servers. Google offers a fairly good online office suite and also Microsoft offers an online version of Office. In fact, Office 365 is also available now as a progressive web app.

Our own first Chromebooks were Samsung devices with 2Gb RAM and 16Gb of storage. This was adequate for online tasks, but these machines were unable to keep up with the development of Chrome OS and its capabilities.

Google has integrated Android into Chrome OS since 2016 and it has, for some time, been possible to run suitable Android applications in a Chromebook. The Google Play store has been installed in Chrome OS since 2017 on newer machines. To begin with, Android ran in ARC (Android Runtime for Chrome). ARC ran in a container as a means of keeping Android isolated from the main ChromeOS. Android now runs in a virtual machine called ARCVM (ARC Virtual Machine) using some of the same technology as used by Crostini for Linux on a Chromebook. All of this is good for security but inevitably all of this virtualisation must take its toll on performance.

We now have two virtual environments running applications for two Linux based systems, Android and Crostini running Debian Bullseye Linux at the time of writing. So that is two Linux based virtual environments running in the Linux based OS, Chrome OS. Virtualisation is very good for system security, but it inevitably comes at a potential performance cost.

Our previous experiments have been made on Lenovo Chromebooks with AMD A6-9220C APU (accelerated processing unit) processors, 4GB RAM and 64GB of Storage. With these machines, running AstroDMx Capture for Chrome OS under Crostini, we were able to use SVBONY SV305 series cameras and even the prototype SV405CC camera. The system was just usable, but there was substantial lag in the UI functions.

We have done a new set of investigations using a HP Chromebook with a Pentium Silver N5030 SOC (System on a chip), 8Gb RAM and 128Gb Storage. This is still very much a basic Chromebook, but it does have significantly more resources than the previously used Lenovo Chromebooks, as it has a processor with 4 cores as opposed to 2 cores and boost clock speeds up to 3.1GHz as opposed to 2.7GHz. It also has double the RAM and double the storage of the Lenovo A6 Chromebook.

The first thing to note is that the HP machine is significantly more responsive and runs AstroDMx Capture in Linux under Crostini like a native application. All of the SVBONY SV305 family of cameras and the SV905C camera as well as the prototype SV405CC cameras work in the system.

However, bench tests now show that the Touptek OEM derived cameras such as the Touptek , Altair , and Bresser, etc. now work in this system, as does the ZWO camera that we have tested. This was followed up by a field test with a Touptek TOUPCAM GPCMOS01200KPF planetary camera and is reported later.

The QHY cameras still don’t work and this might be due to the fact that they have to initially upload the firmware to the camera. The USB passthrough of the Crostini virtual machine is still obviously not able to cope with the initialisation of the QHY cameras. We shall investigate this further in case changes to the udev rules might help.

These are very significant observations and show that astronomy cameras other than the SVBONY cameras can only run on devices with significantly more resources. This has to say something positive about the efficiency of the operation of the SVBONY cameras mentioned.

Experiments with the HP 14a-na0502sa 14" Chromebook, Pentium Silver N5030, 8GB RAM and 128 GB eMMC.

Setting up the Chromebook as an imaging computer.

The first step was to enable and install Linux on the Chromebook.

The next step was to install some Linux applications. SER player, Gimp 2.10 and Siril were installed at the command line from the Debian repository.

AstroDMx Capture for Chrome OS is a .deb installer that the Linux system recognises and will install automatically if it is double clicked on. AstroDMx Capture for Chrome OS can be downloaded from

https://www.astrodmx-capture.org.uk/

Currently the release version of AstroDMx Capture for Chrome OS is limited to SVBONY cameras. Our tests with other cameras will be done with our in-house development version that has all implemented cameras enabled, before it is released with more camera support.

Installing Wine, the Windows compatibility layer in Linux in Crostini.

Wine can be installed from the command line and it will be necessary to install both 64 bit and 32 bit frameworks.

Installing Windows software in Wine.

The windows programs that we installed in Wine were Autostakkert! Fitswork, Registax 5.1 and Autostitch64. We also installed a full blown ‘Wine Vat’ of Microsoft ICE that was made by Nicola several years ago. A ‘Wine Vat’ is our term for a hidden directory in the root of the home directory. It contains configuration and binary files required to run wine and also it contains the Windows programs that are installed in the ‘Vat’; in this case, Microsoft ICE.

In this article we are not explaining how to install the various programs in Linux or in Wine. There is ample instruction online on how to do this. We have also, to an extent, done this in a previous blog:

https://x-bit-astro-imaging.blogspot.com/2021/08/installing-wine-windows-compatibility.html 

Field test with a Skywatcher 130PDS f/5 Newtonian mounted on a Celestron AVX mount, an SV305Pro USB 3.0 camera and AstroDMx Capture for Chrome OS running on a HP Chromebook with a Pentium Silver N5030 SOC, 8Gb RAM and 128Gb eMMC Storage.

Three overlapping 1000-frame SER files of the 97% waxing Moon were captured using AstroDMx Capture for Chrome OS.

Screenshots of AstroDMx Capture for Chrome OS capturing a lunar SER file




All of the image processing was done on the Chromebook.

The best 90% of frames in the SER files were stacked in AutoStakkert! Running in Wine


The Three resulting images were stitched into a mosaic using Microsoft ICE (but this could also have been done using Autostitch 64)


The Mosaic image was wavelet processed in Registax 5.1


The image was post-processed in the Gimp 2.10


Final image of the 97% waxing Moon, chroma enhanced to reveal the mineralogical variations in the lunar surface


Final image without chroma enhancement



Field test with an ED EKinox Eklipse ED805.5, f/5.5, 80mm refractor mounted on an iOptron Cube Pro AZ mount,Touptek TOUPCAM GPCMOS01200KPF planetary camera fitted with an SVBONY UV/IR cut filter and AstroDMx Capture for Chrome OS running on a HP Chromebook with a Pentium Silver N5030 SOC, 8Gb RAM and 128Gb eMMC Storage.


Two overlapping, 1000-frame SER files of the 94% waning Moon were captured using AstroDMx Capture for Chrome OS.

Screenshots of AstroDMx Capture for Chrome OS capturing a lunar SER file



All processing was done on the chromebook.

The best 90% of frames in the SER files were stacked in Autostakkert! Running in Wine.


The two resulting images were stitched into a mosaic using Microsoft ICE (although Autostitch64 could have been used).


The resulting 2-pane mosaic was wavelet processed in Registax 5.1 running in Wine.


Finally, the image of the 94% waning Moon was post processed in the Gimp 2.10.


Final image of the 94% waning Moon, chroma enhanced to reveal the mineralogical variations in the lunar surface.


Final image without chroma enhancement


We have established that in order to operate astronomy cameras other than the SVBONY SV305 series, the SV905C and the prototype SV405CC, it is necessary to use a Chromebook with significantly more resources than the Lenovo A6 Chromebook with 4GB RAM and 64GB Storage and a 2 core A6 processor on which we did our original experiments.

The Chromebook with which we have demonstrated this is a HP Chromebook with a 4 core Pentium Silver N5030 SOC, 8Gb RAM and 128Gb eMMC Storage.

This Chromebook is still a relatively low specification device but the extra resources afforded by the higher number of processor cores, higher burst clock speed, higher RAM and Storage, provide the computer with sufficient resources to be able to run AstroDMx Capture and control more cameras in the virtualisation environment of Linux in Crostini.

It is clear that Google has a vision for Chromebooks to become general purpose computers that could replace more traditional types of laptop. With this in mind, the ability to run Android apps and Linux applications goes some way towards this end. Many Windows applications can be run in Wine within the Linux virtual machine. Parallels Desktop for Chrome OS has been released that allows an Enterprise Chromebook to run Windows and Windows applications in a full featured Windows container. At the moment individual licenses are not available. This is a version of the software that has been available for macOS for some time. It is also clear that very basic Chromebooks will not be up to the job. However, it is clear from the experiments reported here that the more powerful and resource rich the Chromebook, the closer it will be to Google’s aim and the more suitable it will be as an astronomical imaging computer.

The virtualisation and containerisation of Linux, Android and Windows functionality is why a powerful chromebook is required. However, Google’s attention to security detail makes these systems very secure.

We suggest that if a Chromebook is to be obtained with a view to using it for astronomical imaging in addition to other computing tasks; a minimum specification of a quad core processor, 8GB RAM and 128GB of storage should be considered. The better the processor and the higher the amounts of RAM and Storage, the better the Chromebook will be for your purposes.

We shall continue the testing of other cameras in AstroDMx Capture for Chrome OS, starting with the ZWO ASI178MC USB 3.0, uncooled, 14 bit camera.