My Raspberry Pi 400 Keyboard Computer

Raspberry Pi 400The Raspberry Pi 400 is a keyboard with a computer inside of it. When I bought mine in July 2021, while I was in the United States, I knew I would have to upgrade it. I also knew I would have to wait until I returned to the Philippines to do anything with it. There was a good computer monitor in storage, at my house, that didn’t have an HDMI port, so I had to buy an HDMI to VGA adapter. I already had everything else I needed for the upgrade.

I set things up about a week or so after returning to the Philippines in March 2022. It was my daily driver for almost six months. I started using my laptop computer again and put the Raspberry Pi 400 to the side, literally. It’s now my backup computer should something happen to this one. I’m planning to travel to the United States again in March 2023. If I do, I’ll be taking both computers with me, one in each piece of luggage.

Although I’m using a computer monitor with the Raspberry Pi 400 now, it’s just too large to take anywhere. I’m planning to get a portable computer monitor while I’m in the United States, one that’s small and thin enough to bring back with me in my luggage.

The Raspberry Pi 400 Computer Kit

I bought the computer kit from CanaKit while I was staying with my older son and his family in Maryland. The kit cost $100 plus shipping, an additional $15.95. I later shipped it in one of several balikbayan boxes to the Philippines, awaiting my arrival. It took longer than I anticipated for my wife, Josie, and I to get here due to the pandemic, and the cargo box with it inside of it was already sitting inside my house. A sister-in-law takes care of the house when we’re in the United States.

The kit included the keyboard computer, the power adapter, the micro SD card with the operating system on it, a mini-HDMI to HDMI cable, a wired mouse and a user manual. I upgraded to an external solid-state drive, a power adapter with a switch on the cable and a wireless mouse. I connected the mini-HDMI to HDMI cable to the HDMI to VGA adapter and plugged the adapter into the computer monitor. The audio cable for some old computer speakers plugged neatly into the jack on the adapter.

I used the micro SD card long enough to boot up and install the operating system to the external solid-state drive, and that was the last time I used the micro SD card. The wireless mouse receiver plugged into the single USB 2 port, and the power adapter with the switch on the cable plugged into the USB-C power port.

I installed Raspberry Pi OS multiple times on multiple solid-state drives, and what follows is a combination of all the steps I took with it. Some of the beginning steps weren’t required during subsequent installations.

Enabling the SSD Trim Function

The SSD trim function (unmap) is something you don’t have to think about when your solid-state drives are internal. The operating system takes care of it automatically. With external drives running on USB ports, they need some help.

When I set it up properly for the first external SSD I used, I followed these procedures. First, I had to make sure the drive supported trim.

sudo apt install smartmontools

sudo smartctl -i /dev/sda

The results told me it supported trim.

Next:

lsblk -D

The DISC-MAX values displayed as 0, so trim was not enabled.

Next:

lsusb

I needed the number pair for the ID that identified the drive enclosure (the hexadecimal numbers separated by a colon), which looked like this:

Bus 002 Device 003: ID 1f75:0621 Innostor Technology Corporation IS621 SATA Storage Controller

I had to create /etc/udev/rules.d/50-usb-ssd-trim.rules and add the following line, using that pair:

ACTION=="add|change", ATTRS{idVendor}=="1f75", ATTRS{idProduct}=="0621", SUBSYSTEM=="scsi_disk", ATTR{provisioning_mode}="unmap"

Then I rebooted to make sure it took effect. When I ran the following, it didn’t show 0 for DISC-MAX anymore.

lsblk -D

The “fstrim” command will automatically run periodically. I run it manually like this:

sudo fstrim -v /

Overclocking the CPU

Running this in the terminal showed me the clock speeds of the CPU:

lscpu

The results were 1800 maximum and 600 minimum for each of the four cores. By adding the following to the /boot/config.txt file and rebooting, I increased the maximum to 2147 (but it displays as 2200 with lscpu):

over_voltage=6
arm_freq=2147

I didn’t see any anomalies in over five months.

Changing the Desktop Environment

The desktop environment of the Raspberry Pi 400 is called PIXEL, a modified version of LXDE. I didn’t like it, so I installed the Cinnamon desktop environment. Before I did that, I changed the network configuration to use Network Manager instead of dhcpcd (the next version of Raspberry Pi OS will make Network Manager the default). I had to drop to the terminal and:

sudo raspi-config

I had to select Advanced Options, then Network config and then exit. Disconnecting from Wi-Fi and reconnecting showed me it worked.

The easiest way to install another desktop environment was to run:

sudo tasksel

From there, I could select Cinnamon. To make sure it booted up in Cinnamon the next time, I had to run this:

sudo update-alternatives --config x-session-manager

I then had to select the option for Cinnamon. When I rebooted, Cinnamon was indeed the desktop environment.

Changing the Operating System From Raspberry Pi OS

I did this with another external SSD a few times, until I decided none of them were any better than Raspberry Pi OS. For an unofficial list of alternative operating systems, follow this link:

Unofficial list of Raspberry Pi distributions

As far as I can tell, that list hasn’t been updated since February 2022.

Image by Raspberry Pi Trading

Leave a Comment