Sunday, January 31, 2021

Raspberry Pi 400 - the Most Significant Computer in 2020

Is that a click-bait title?!
I don't think so. While Raspberry Pis were doing well over the years. There never was an attempt to creating a breakthrough by the RPi-foundation. At least that's my thought on things. 
Personally, I was never really attracted to their devices, until the RPi3B+ was released. Now we are talking. Not perfect yet, however, the device was boot-able over USB and with 1GB of RAM, this has beaten many of my previous Linux machines.

With the RPi 4 coming in, the game changed. Now we are talking about a tiny computer that boots from USB3, adding the speed needed for real computing.
In fact, I used a RPi4-8GB in a 64bit computing environment successfully.

The before mentioned setup required some pain and suffering to set up, in particular choosing the 64bit OS that supports the 8GB. So, is that what I would recommend to others? No it is not, only if you know your ways around Linux and stuff. Many of the amenities you get with a 32bit Raspberry Pi OS wont be there. Lets wait and see how the 64bit Raspberry Pi OS will perform, once it left the beta stage.

So, what the fuzz about the RPi 400 then? Well, it is not much of an improvement over the RPi4 to be honest. However, having the only choice of a 4GB version eliminates the need for a 64bit OS. Consequently, the Raspberry Pi OS is all you might want to use.
And that is what I am running on my machine, which I actually use for business, believe it or not. I wished the keyboard was a little bit better, but for the rest, the RPi 400 does a fine job.

To add something technical here, I did overclock my RPi 400 to 2.1GHz by adding the following lines to the file /boot/config.txt (I left the original comment line for reference): 

#uncomment to overclock the arm. 700 MHz is the default.
over_voltage=6
arm_freq=2100
gpu_freq=750

And here we go, this change makes the RPi 400 just a little bit snappier.

Here is another suggestion I got for you: install zram-tools. This will setup virtual swap space using compression in RAM rather than real disk/SSD-space. With 4 cores and 4GB of RAM, zram-tools will provide 1GB of virtual swap. This may not sound like much, however, once you hit the memory ceiling, you will see that this is a really good tool, in particular with higher clock speeds.

Should you consider using the RPi 400 as a daily driver, I highly recommend using an SSD on one of the USB3 ports. Further, a (powered) USB(3) hub will help to add devices you would regularly use for daily work, such as a scanner.
Writing about scanners, I am using an old Canon LIDE 30 with great success on an even older powered USB hub. To be honest, before using those things with the RPi 400, I considered discarding those devices, due to a lack of drivers on OS other than Linux.

And the best thing about the RPi 400, it is passively cooled. As long as you are not using a mechanical HDD with the device, you got a totally silent working environment, which to me means a lot.
 


Saturday, December 5, 2020

Raspberry Pi 400 Audio Issue Solved

Somehow, I expected the problem to be solved before the great XMAS sales. Well, in this case, it was just before, or in the country I live, too late.

I am posting this message on December 5, also known as Sinterklaas day. In The Netherlands, this is when kids get their gifts. Heiligabend (Dec.24) or Boxing day, don't mean anything over here in the Low Lands. So, what I am writing about was probably too late for the Dutch market.

Anyway, the Raspberry Pi Foundation published a new version of Raspberry Pi OS, in which they replaced ALSA with PulseAudio. PulseAudio works directly with Bluetooth, solving all the problems I complained about before.
On part, the complaining might have been on my own laziness too. I wrote about installing PulseAudio and that it would be working so so. In particular volume control from the desktop would not work. More on that later.

So, I did the typical apt update and apt full-upgrade. Indeed, now PulseAudio is running.

Without further thinking, I tried to use, just as a newby, the speaker icon in the panel to control the audio volume, without any luck. However, this is me, using a customize panel, so everything is locked in place from the previous of the OS. At closer inspection, the panel item I was using was still ALSA.
After removing the "Volume Control (ALSA/BT)" panel item and adding the "Volume Control (PulseAudio)" item, the problem was finally solved.

With the audio problem solved, I can highly recommend the Raspberry Pi 400 as a desktop PC replacement for non-gaming use.
By now, not only have a written some texts and programs on the RPi400, I also designed (CAD) a few parts and prepared (slize) those for 3D-printing, all with just the RPi400.
Not having used the GPIO yet, I can report the Arduino working perfectly with a RPi400. More on this in posts to come.

Thursday, November 26, 2020

HAIKU OS

Since my studies in the nineties, I was an admirer of BeOS, the BeBox and everything close to this sort of technology. I never could afford a multi-processor machine like the BeBox, so it was remaining a dream, until BeOS and BeBox suddenly disappeared from the scene. This was long before Linux was a thing. 

Beos, was resurrected by the company Yellowbites http://yellowbites.com/beos.html and never gained the success it might have deserved. 

Some fans (no me though) persisted and created a binary compatible clone of BeOS, called HAIKU.
I followed that project on and off, until the Beta1 release. This is when I decided to try HAIKU on hardware myself. When saying on hardware, I mean on hardware, not in a virtual machine.

In my yard of "no longer used, but too good to be scrapped" computers, I found an AMD C-Series APU board with 4GB. This boardd, with a 500GB HDD was the perfect candidate for an installation of HAIKU OS R1/Beta1.
I played with it for a while, and put it aside when other stuff came up. That was many months ago.

Today, I remembered the little box and got it running again. A presumable simple software update, which I expected to have happened over the many months, failed. Hmmmm, strange! What's going on? Oh, there is a Beta2 version available, which does not install with the SoftwareUpdater provided in the GUI. If only I had read this https://www.haiku-os.org/get-haiku/r1beta2/ before ;-)

Anyway, this is what I am presently doing/waiting to finish. The manual upgrade from Beta1 to Beta2. I liked Beta1 a lot, so my expectations are high for Beta2.

When I was playing with Beta1 before, I had plans to port the f2c Fortran to C converter to HAIKU. The sources are still in my home directory. The intent is still present. I might need to check if there is a newer version of f2c before I start the project.

This post was written using the HAIKU machine with the browser WebPositive, while the machine was upgrading from Beta1 to Beta2.

UPDATE:
The machine is not running HAIKU R1/Beta2.


Wednesday, November 25, 2020

Old Laptop with Raspberry Pi Desktop

Some months ago, I wrote about running FreeDOS on semi-old hardware. What do I mean by semi-old, for DOS, this hardware would have been hyper-modern, while the hardware would severely struggle running modern operation systems. In order to transfer data into the DOS partition of those old laptops and netbooks, I used a Linux Mint installation on a separate partition. The netbooks performed sufficiently satisfactory to leave those as is. However, the HP Compaq nx6110, which had the best hardware support under FreeDOS was just a pain to use with Linux Mint. 

When installing my Raspberry Pis, I noted that another OS was available for download from the Raspberry Pi Foundation, namely a PC/Mac hardware version of  their Debian GNU/Linux adaptation. Seen that on a RPi1B+ this OS run fine, I thought to give a try to install it alongside the FreeDOS partition. Before you try, this did not work... I could not boot later on.
As a test, I decided to overwrite the FreeDOS partition and install the Raspberry Pi Desktop on the entire disk. That in fact did work, i.e. it booted.

Nothing is straight forward in this world. Neither was the install of RPi Desktop. As I wrote, it booted, but, it did not show the menu-bar. Pretty useless at that stage. 
Solution: 
  • press <ctrl><alt>t which will open a terminal
  • now delete the directory ~/.config/lxpanel -- if you want to play it safe do this:
    • cd .config
    • rm -rf lxpanel
  • now manually start lxpanel in the background by typing: lxpanel &
  • you can now restart your computer by either typing reboot in the terminal of use the item in the menu
You might notice that the panel looks different to the rest of the GUI decorations. This can be changed by right-clicking on the panel and open the Panel Settings. In Panel Settings there is a tab Appearance. Click the radio-button which reads "System theme" . That should do the trick.

Another problem I ran into is hardware related to this particular laptop, namely the built-in broadcom b43 WiFi adapter. This is not generic to RPi Desktop, therefore, I wont further discuss the topic here.

RPi Desktop packaged in February 2020, hence, I highly recommend doing a full system update/upgrade.
Here is the easy way, in a terminal type
  • sudo apt-get update - this updates the package manager's database
  • sudo apt-get full-upgrade - this does what you believe it to do and may take a while
  • reboot
Personally, I like the package manager "synaptic". Install it by typing sudo apt-get install synaptic in a terminal window. Once synaptic is installed, open it, it should be in the Preferences menu, and hit the "Reload" button. This again refreshes the database content. Hit the "Mark all Upgrades" button and when it is done the "Apply" button. After a reboot, very likely a kernel was installed, you might find the Raspberry Pi Bookshelf and other goodies in the menues.

My experience with RPi Desktop OS on this old Celeron M laptop is pretty good. Even Chromium performs OK-ish. However, Chromium likes to do stuff in the background, which drains resources and gives a slightly sluggish experience at times. It is certainly advisable to install a more lightweight browser.
LibreOffice and Thonny work nicely. Samba (smb) works out of the box and is integrated in the file manager pcmanfm.  The openbox window manager leaves enough resources for other processes so that working in GUI applications results in acceptable performance. However, using a single CPU core laptop with just 512MB RAM, one should be cautious about the available resources, i.e. not too many heavy applications open at the time.
Classic work in terminal windows, such as writing code in a text editor, using make and running executable, is really no problem what so ever.

Earlier, years ago, I used this particular laptop with a pure Debian installation, which to the time was a good daily worker. Not much has changed, beyond the added tools.
So, if you are looking for an alternative OS for old hardware, give it a thought, maybe RPi Desktop is a solution for you.

Tuesday, November 24, 2020

Raspberry Pi 400 as Desktop Replacement

The audio issues from the former posts set aside, after some time using the RPi400 I came to the conclusion that is can be a pretty good desktop replacement for some regular stuff.

First to mention, I am not a gamer, not at all. My use of computers is somewhere between doing online social media things, regular office work and programming.

Besides watching videos, which requires audio, bringing us back to the audio issue, all other of my online needs are served fine by the RPi400.
On audio, I found a USB audio dongle which does play audio fine. However, the alsamixer is not able to control this particular device, therefore, the audio volume cannot be adjusted from the OS. My speaker has got a volume potentiometer, therefore, this is not a big deal in my daily life. However, it is not a solution for getting decent Bluetooth support.

The keyboard is good, although it appears to be a little bit smaller than others, which it is not. However, for unknown reasons, sometimes a keystroke is not recognized, in particular lighter keystrokes. From my experience, I create more typos than I used to with other keyboards. The solution that I found is stronger hammering on the keys, which however slow me down a little bit. Anyway, this is something I can live with and learn to adapt to.

The mouse is very lightweight. In the beginning that felt strange or even cheap. However, this strange feeling, in my view, came from the original mouse sensitivity settings in the GUI (openbox). In the "Preferences" menu, under "Keyboard and Mouse", I reduced the "Acceleration" from 5.0 to somewhere between 2.0 and 3.0. With less acceleration, the mouse feels a lot more comfortable to me. Also, the lack of weight does not play a role any longer, at least to my taste.

My RPi400 is configure to boot from USB. I am not repeating the method here, it can be found easily with any internet search engine. My choice was a SSD in a USB3 case. This gives a real speed boost over the SD-card as mass storage. Further, it allows for a lot more storage than on an SD-card.
Another advantage of an SSD is the safety of your data, due to the controller built in an SSD drive.
If I recommend any change or addition to a RPi400, this would be the one, get a USB3 SSD drive.

Networking works fine in principle. 
Nothing to report about Ethernet, it just works.
WiFi, however, suffers a little bit from the design of the RPi400. Don't get me wrong, it does work, however, there is an issue worth to mention. The SoC is cooled by a big aluminium plate, which sits under essentially the entirety of the keyboard. In terms is passive cooling, this is excellent! However, this also provides a decent shield for the 2.4 GHz and 5 GHz WiFi signals. My RPi3B+ in a plastic case, receives my WiFi access point a lot better than the RPi400 in the exact same place on my desk. Network throughput is therefore lower with the RPi400. In case I am running a system upgrade, I therefore have an Ethernet cable handy, so that in case, I can full bandwidth if needed.

I am a longtime Linux user. Therefore, I am used to a certain set of tools. Up to know, I was able to find everything I needed in the repositories for  Raspberry Pi OS (raspian buster).
For reasons of accessibility of RPi specific tools, such as Bookshelf and Mathematica, I opted for the 32-bit version of the OS. 
One of the first tools I installed in addition to the preinstalled programs was synaptic. This package manager give an easy overview of what is available and what is already installed. It makes it very easy to add applications you will find helpful in your daily computing routine.

While my RPi400 suffices my present needs, in the future it is very likely that it will be extended by means of a powered USB3 hub, e.g. for card-readers, webcams, DVD-RW drives, etc.

Saturday, November 14, 2020

Raspberry Pi 400 audio issues update

Bluetooth remains still unsolved beyond what I was writing earlier.

In order to get some sort of audio output, I changed back to the only HDMI monitor having speakers in my possession. After the removal of pulseaudio (apt remove pulseaudio), the monitor is perfectly fine to use for sound playback, however, the audio from those tiny speakers is pretty poor. I guess, it is what it is.

Hopefully the Raspberry Pi Foundation will solve the Bluetooth issues with the RPi400 as soon as possible.

Friday, November 13, 2020

Raspberry Pi 400 audio problems - USB not the solution

In my earlier post, I as speculating if the use of a USB sound card would be a possible solution to the audio problems of the Raspberry Pi 400.
Well, it is not!
The audio was playing, however, at a terrible quality, not worth further talking about.

While the RPi400 was never meant to be used in my amateur radio setting, it now shows clearly to not be suitable for such use at all. The only thing still untested would be SDR devices such as the SDR-Play RSP1A.
Seen that a simple audio dongle does not work well, I have serious doubts about any of the SDRs being better supported,

If the Raspberry Pi Foundation is reading, please consider adding an AV jack to a future version of the RPi400. The form-factor of the device is excellent, having it performing similar to a RPi3B+ in respect to audio would make this device usable for not just the ham radio community but also so many more folks looking for some audio abilities of a device.