Thursday, December 16, 2021

Vilros Raspberry Pi case + keyboard Modifications

Vilros made a case for the Raspberry Pi that includes a Wireless Keyboard, which sort of turns the Raspberry Pi 4 into a facsimile of an old 8-bit home computer, like a Commodore 64 or Atari 800XL. It's a pretty cute case, but I immediately saw the potential for improving it. I got a slightly-used one for $25 on ebay, and sort of felt that the keyboard was actually crappier than the standard Raspberry Pi flat keyboards in use. The implementation of Vilros's design was really poor, having way too many screws, and a method of turning on the keyboard and changing its batteries that just seemed to be too inconvenient for users to actually put up with.

My idea was to simply change the keyboard out with a wired mechanical keyboard, which was an improvement in and of itself, and since it was wired, we didn't have to worry about the complicated battery-replacement scheme that Vilros made. Plus, it's a mechanical keyboard, which is actually better looking as well as better performing.

So, this is the product. For all intents and purposes, it just looks like another keyboard with a trackpad, like my Logitech one in the background. What I found was that the keyboard was an already-existing Vilros product, and they just made the Raspberry Pi-4 case to house it. The fact that it was an after-thought really shows.

Here is the Raspberry Pi official keyboard for comparison. If the Raspberry Pi keyboard had a trackpad it would be the same size all around.

So, here are the two examples of poor design in this keyboard/case. First, to turn the keyboard on and off, you have to remove a little door from the top of the case, and stick a long instrument into it to slide the on/off switch. Sort of lazy, if you ask me. They didn't redesign the keyboard; they just made it difficult to turn it on. Changing the batteries is even worse, You have to remove the Raspberry pi and the panel that it's screwed to, then you have to struggle to get the battery cover off of the bottom of the keyboard. The cover on mine was kind of loose, so it didn't want to stay closed. But since I'm not using it, no problem. By the way, I gave the keyboard to my girlfriend for her computer, and she rejected it after just an hour of using it. It's a truly awful kayboard in general.

So the Raspberry Pi fits on a small plastic base that is held on by no less than 6 screws. But wait -- you can't remove it without removing several screws that hold the case together. Yeah -- the top and bottom part of the case have several over-laps that sandwich the Raspberry Pi holder. So you basically need to remove all 12 screws from the whole case. Nothing is easy on this piece of crap.

So the replacement keyboard I chose was a Red Dragon USB keyboard. It has RGB, but it's actually cheaper than similar keyboards without RGB. Go Figure. It has real Cherry-style switches, and several light-up modes.

Getting the keyboard to fit in the case was easy. All I needed was a place for the keyboard to rest that didn't interfere with how it was screwed together. I had some circuit board mounting posts left over from another project (Yeah, they're like $5 for a bag of 50!), and what I did was remove the keyboard from it's plastic case. It was connected with 8 small screws. I connected the keyboard to the posts, using the screws that came with the posts, and then test-fit it. The top of the keyboard needed to be raised, because of the slant of the case. This was easily resolved by putting small wooden risers made from shims that you get at a hardware store.

So I decided to add a USB 3.0 Hub to make this a raspberry Pi that had a little extra Oomph. Since the Vilros case has the Raspberry Pi sitting in the rear corner, with the ports all facing outside, I realized i had to do one of two things -- find a USB 3.0 GPIO board (not possible because nothing will fit on the GPIO; the top of the case would no longer fit), or use a 180-degree usb plug, like the Argon one case with the M.2 support does. I decided on the 180-degree plug. They are available on Amazon and elsewhere, and apparently, they've gotten thinner and smaller.

Here you can see the 180-degree USB plug. The second picture is the cut I had to make around the plastic case top so that I could fit it in. I connect the USB hub to the plug, and the keyboard and future USB hard drive will get connected internally.

I decided to go with a Raspberry Pi with 8GB. This computer was going to be used for Linux and emulation, so I wanted great performance. Having used the 8GB model for a while now, it really handles other distributions of Linux rather well, and I've been using it as my bench computer. Based on a tip about the powered USB hub I had and powering the Raspberry Pi with a couple of wires on the GPIO, I decided to go that route. The USB Hub would provide the power to the Raspberry Pi, so instead of plugging in the USB-C cable, I'd just plug in the hub, using it's more powerful power supply, and run a USB cable to the GPIO, which would be cut and fited with the appropriate jumpers. I was even able to attach 2 small fans that fit in the case gaps perfectly.

The red plastic border around the case was a baffle I made to just hide the insides of the case from being seen through the cracks. The keyboard left a big gap on one side, and you could see wires and things under the space bar, so I added the plastic border to hide it all.


So this is the finished product. Of course, no sooner than I finished it than I decided I wanted to add more stuff to it and do things differently. I want to add an internal M.2 drive, but I also want to change video output to full-size HDMI. The micro-hdmi connection is utterly the worst, whether you're on a Raspberry Pi 4 or anything else that uses one. I want to find a new way of hooking everything up, so I can glue the micro-HDMI cable in place, to prevent it from being moved, and have the full-size HDMI port on the back.

It's going to take work to get that done -- I practically have to re-do everything.

Friday, October 29, 2021

A more or less complete guide to Switching from Windows 10 to Linux

This is a guide for people who have MIcrosoft Windows 10, and who love their precious Windows 10 Software, but seriously want to be free from the cost, licensing, and hassle of owning the Windows Operating system. You have already made the decision that Windows has to go, and just need the right push, the right endorsement, or anything short of the "right disaster" to make you hop the fence.

Hopefully, this article will give you a roadmap and hopefully more information than you need to not just jump that fence, but somersault over it, set it on fire in mid-air, and land on both feet in a striking pose.

Why Switch to Linux? My Windows works fine!

Most people don't need to switch. If you're happy using Windows, then keep it. Being a Linux user requires a little more attention, a little more learning, and a little more do-it-yourself-ing. It's not for everyone.

My reasons for switching to Linux are:

  • Windows licenses cost money. Sometimes, when you perform surgery on a system, and you change out the main board, Microsoft wants to check your license, and make sure that you have a legit one. Sometimes their own internal processes to check the license forces you to have to call them up and waste time trying to prove your license is real and legit. It's an inconvenience. Linux is 100% free in most cases. It's reliable, secure, and everything that Windows ain't.
  • Windows has always had issues with bugs. Often times, they will have updates that screw up your system. Sometimes, you will get thse blue screens for inexplicable reasons, and troubleshooting them is such a pain that you often just end up reinstalling it. Thankfully, since Windows 10, I haven't had to re-install Windows on my system, but I know plenty of people who have. There are some updates that may freeze up your system, and many users often wait a long time and give up, rebooting their PC only to brick it -- ruin the partition on the Hard drive so that it needs to be reformatted or just have Windows reinstalled.
  • Windows is constantly getting hacked and attacked by viruses and malware. There are so many viruses and pieces of malware out there on the internet, that you really need to purchase anti-virus/anti-malware solutions. With Linux, and to a lesser extent, Macintosh computers, this generally doesn't happen. Linux is a secure operating system, and it's difficult to write viruses or malware for it that can break through it.
  • Windows has a strong tendency to include bloatware and spyware in their updates. The last couple of large updates to WIndows 10 filled it up with all sorts of advertising-enablement features that were automatically turned on, and had to be shut down if you didn't want to see ads on your start menu or in your notification area. At my job, where I am a PC/Windows tech, plenty of the ads delivered to user as a direct result of that update, were PHONY VIRUS WARNINGS -- ads which inform the user that "Microsoft has detected a virus in your computer, and you need to call microsoft ASAP to remedy the situation." The ads were fake, and some user would follow the link, only to be asked for a credit card number. I have a growing list of settings to shut off whenever I have a ticket for this issue.
  • Linux has evolved to the point where it is as easy, if not easier to use than Windows.
  • Linux is faster. It has low overhead, and without dozens of background processes running, programs run faster. The user interface is not so different from Mac OSX or Windows, so it's easy to figure out. Best of all, it rarely crashes with such catastrophic results, or indeciferable error messages, like Windows.
  • Linux takes up far less space on your hard drive than Windows. A default install of Windows take 15GB or more of storage on your HDD. Most Linux installs take up 512MB to 4GB of space on your hard drive -- the larger installs of course, are ones that come with a lot of applications pre-installed. Most Linux distributions I've seen come with complimentary LibreOffice, and a few other apps which you can easily remove.

I could go on, but the bottom line is that LInux is a much smaller, more powerful, more secure, and generally non-buggy operating system than Windows, and it's free -- you are not bound by a license agreement, and are free to do what you want without a corporation bugging you about your license key or preventing you from making changes that you want.

BEFORE YOU SWITCH

The single most important advice in all of this is that you start learning how to use Linux. The more familiar you are with it, it's desktop interfaces (there are choices of different desktop environments, but don't worry), and the control panels, the easier your transition will be -- just like learning a foreign language to make traveling to a foreign country easier, learning Linux before you start installing it will let you do everything more smoothly.

The Terminal, which is Linux's version of the Command Prompt in Windows, is also important to become familiar with. You may not need to use it right away, but at least know how to find it so you can run it when you need it. Some fixes and applications need you to type in a bunch of command lines -- and cutting and pasting them into the command line will make it go quicker.

You may want to set up an old computer with Linux to play with, or buy a $35 Raspberry Pi, which is a super-cheap, and super-popular pocket-sized computer that runs on Linux, and you can select many different Distributions of Linux that will work on it. If you don't use the official "Raspberry Pi OS", which is a variantion of Debian Linux, I recommend Ubuntu Mate, which is one of the more widely used distributions that works on practically any computer. Of course, after you have created the bootable USB drive with Linux on it, you can just use that until you get all of your Windows software moved over.

Dave's Special Method for Switching

I have developed a method for doing this migration that will keep you safe and free from worry. It involves buying a new SSD for your computer to replace the one in your computer that has Windows on it. You will want to keep that around for weeks or months after you're all switched over, in case you forget something, or if you have difficulty with an important app that just doesn't want to run in Linux, or if you decide that it's not for you and you want to go back to Windows 10. It's a safety feature that will prevent you from going insane. Make sure you get an external USB for your Linux SSD. Whether you are using a 2.5" SATA SSD or a tiny NVME SSD, USB enclosures are available and cheap.

Essentially, you're going to install Linux on this external SSD, and boot off ot it while you're in the process of transitioning and getting your software straightened out. Your computer will have a keyboard combo to press during the POST and startup. Usually it's the F2 key, Del, F12 or something else -- most computers have a brief message telling you which key to press for the boot menu. Basically, once Linux is installed on it, you turn on the computer, and hit the key that brings it to the boot menu. Select the USB drive Linux is on, and it will boot from it. If you don't hit the key to go into the Boot menu, it'll simply boot into Windows. Only when you are all set, and certain you don't have anything left on your Windows drive that you need to move, you will then open up your PC, and swap out the Linux SSD for your Windows SSD -- put the Windows SSD into the External case, and the Linux SSD onto the Main board of the computer (or connect it to the SATA cable).

Things you will need

So as I mentioned above, you will need an SSD and external USB 3.0 case for it.

You will also need a 16GB USB memory stick. This will be used to put the Linux Setup image onto. You boot off of it, install Linux onto the SSD, then hang on to it for emergencies or if you want to install it onto more computers. You will also need to download either Rufus or Balena Etcher so that you can burn the image onto the USB Stick.

Click here to Download Rufus

Click here to download Balena Etcher

Note: I am only going to cover using Balena Etcher in my instructions. If you're using Rufus, I'll assume you know more of less how to use it.

Pick a Linux Distribution

There are so many choices for Linux out there -- some free, some cost a little, and some are special versions that may not be for a beginner. I am going to keep this simple. I am going to write this for Ubuntu and Zorin. Zorin essentially is Ubuntu, but it has a specially modified desktop environment that lets you make the desktop look like Windows 7/10/11. or Mac OSX. I recommend Zorin for beginners, because it is made for Windows and Mac users looking to transition. It's look, feel, and control panels are very familiar looking, and it will give you less trouble. What makes Zorin so good for Windows users is that all of the Windows Compatibility software is pre-configured for you, which will let you run a lot of Windows apps out of the box!

Ubuntu 20.4, or Ubuntu Mate, will take a few extra steps to make it run Windows software, but it's not too difficult, and I'll include little sections detailing these steps. You have a choice of many Linux distributions, so if you already used Manjaro or Suze, Pop!OS, Debian, or others, feel free to use them, but realize that you may need to modify some of the terminal commands.

Click here to download Zorin

Click Here to download Ubuntu 20.4

Pay close attention to where you save your downloaded *.img files. They tend to go into your Downloads folder (C:\users\your name\downloads). Just make sure you know what their names are for the next few steps.

What you're going to do is make sure you have your 16GB USB stick ready, and the location of your Linux distribution's downloaded *.img file. In some cases, instead of a *.img file, it may be a *.zip, *.7zip, *.arc, or other compressed format. If you can't open it and see the contents of the compressed file, you may be looking for another program. Generally, though, Winzip or other popular, and hopefully free applications will unzip whatever format it's in. You may want to save the *.img file to your desktop to make it easy to find.

Open up Balena Etcher or Rufus. Balena is pretty easy and straightforward, where Rufus is a bit more flexible and has more expert features, but we don't need to worry about those for now.

Imaging the USB stick with Balena Etcher

Balena is a 3-step process -- 3 clicks and you're done.

Step 1: Click the button that says "Select Image". Browse to where you saved the Ubuntu or Zorin image file. Click OK.

Step 2: Select Target. Click on the Select Target button. If your 16GB USB Stick is not selected, Select it from what is available. If you don't see your USB stick, try another.

Step 3: Flash the image! Click the Flash! button, and watch the progress. It will do 2 passes -- one write pass and one verification pass.

Just wait for the process to complete, and when done, Balena will tell you to remove the USB stick. Set it aside for the moment of truth!

The Moment of Truth

Turn off your computer.
Insert your newly flashed Unbuntu or Zorin installer into a USB port.
Insert the external SSD that you are installing Linux on into a USB 3.0 port. You need to use USB 3.0 because it is as fast as an internal SSD.

Turn on your computer, and keep tapping the key that will let you select which drive to boot off of.
Follow the online prompts and make sure that you select the full version. You want to install, not try. Make sure you select the empty SSD that you got for this. You want to make sure you don't over-write Windows.

Here is a link to the official, updated, install process for Zorin, curtesy of Zorin. I'd have taken the screen shots and done it myself, but each time there is a a major revision to anything, and it chages the install process, my page will be out of date, and Zorin's won't be. Just remember the following selections:

  • Select "Try or Install Zorin OS".
  • Select "Install Zorin OS".
  • For purposes of using my external SSD method, select "Erase Disk and install Zorin".

If you's prefer a video of the install process, CLICK HERE

When you're done installing Zorin, skip ahead to the "Welcome to Linux" section. Ubuntu is a little trickier to install. I can't detail much of it here, but I'll provide a link to it and a video.

CLICK HERE for an HTML guide to installing Ubuntu.

CLICK HERE for a video detailing how to install Ubuntu.

Installing Wine in Ubuntu

So this is where you need to use the Ubuntu Terminal. I'm assuming that you sort of know what a program launcher is. It's the big menu on the side that has all the icons on it for various programs. You need to click on it and look for an icon that looks like one of these.

In the terminal, you'll need to type the following commands, and wait for them to finish processing. So your first trick to learn, because you really should not have to do all that typing, is copy the text of the commands, then paste them into the terminal window. TO copy the text, Click on the first character in the text, and drag the mouse to the end until the last character on the line is highlighted, and press the CTRL + C keys. To passte it into the terminal window, click on the terminal window, and press SHIFT+CTRL+V. This is only slightly different from how it's done in Windows.

The commands to run are:

  • sudo dpkg --add-architecture i386
  • sudo apt update
  • wget -qO- https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add -
  • sudo apt install software-properties-common
  • sudo apt-add-repository "deb http://dl.winehq.org/wine-builds/ubuntu/ $(lsb_release -cs) main"
  • sudo apt install --install-recommends winehq-stable
  • winecfg

The Software Center (Store)

You may want to check the software store in Ubuntu, to see if there is a less complicated way to install Wine. You need to familiarize yourself with the software Center. It's icon looks like this

It's located on the launch bar with the other programs. By default, it should be on it.

Tons of software can be installed using the software center. After you're done, you may want to check out some Linux apps, to see what's out there. For now, though, we want just want to install the last few apps we need for Windows compatibility. Type the following names into the search bar when you've opened the software center. When you find it, Click on Install, and it should install it.

  • Steam for Linux (Proton)
  • Lutris
  • Wine
  • Wine Tricks
  • Play On Linux
  • DOSBox-X

If there were no errors, and you're done, you are now more or less ready to install Windows apps!

Welcome to Linux!
Achivement unlocked! You have installed Linux and are about to be able to run Windows programs. At this point many people, especially non-gamers, can stop, and just keep playing with the Linux environment to become more familiar with it. There are a number of apps that are cross-platform, that you can look for -- VLC by Videolan (Video Player), Audacity (Music creation, sequencing, and editing), Notepad Plus Plus (a more versatile Notepad just like Windows, but better) Libreoffice (usually included with many Linux distributions, which is an MS Office clone), Thunderbird or Evolution email programs, Solitaire, etc. When you have enough Native Linux programs that perform the functions of your favorite Windows programs, you are done. DosBox (software that helps you run older applications that predate Windows, usually old games)

A brief word on applications, first. It is always preferable to search for and install native Linux versions of your Windows software. If there is a native Linux version of it, and you don't have to pay for a new version, favor that over the pure Windows app. It can avoid issues that may be inconvenient, like having to edit a configuration file or just having it run a little slower. Besides -- native Linux appas are optimized to run in Linux, and there is generally less overhead which can affect performance.

Before installing Windows apps, there is a convenient website you may want to visit.

Wine HQ User's Guide

The WineHQ user's guide will let you search for a specific Windows app's compatibility. Thousands of applications have been tested, and information on tweaking (changing a few settings) them to work best for you is located there. I think it's best to consult this site before installing a Windows app, because if one doesn't work, or works, but is buggy, solutions will be here.

For installing Windows applications, in many cases, you can just start installing them once you have them on USB memory sticks or you have downloaded them. Wine, if installed properly, should notice the *exe file, and lanch, then it will guide you through installing the Windows apps. Each time you install one, check it out. Most will work just fine, but some may require tweaking.

STEAM!

Launch Steam and log into your steam account. It looks just like the Windows version, and that's deliberate. For years now, Steam has been starting a small revolution, by making sure game developers use a series of Application tools and runtime libraries, like Vulkan. Little did Microsoft realize, Vulkan was creating a gaming standard that allowed games sold on steam to run on multiple platforms without modification. Steam supports multiple kinds of computers, gaming consoles and other devices, and having a universal standard meant that games could easily be made to work on multiple platforms. So the genie was out of the bottle.

Look at your list of purchased games, and browse them one at a time. When you click on one, and see that the "install" button is green, that means that the game is available in a Linux version! You can just install it without extra steps, and it will work. For other games, however, you will see that the install button is greyed out. Don't worry!

Save this link: Wine HQ User's Guide. You will visit this link to check each of your Steam Apps. Using the search feature, look up each of your Steam apps, and see what the site assesses. You should find that the vast majority will be gold and platinum, which means they work out of the box, right after install, with little or no settings. When you find one of your games, and it gets Gold or Platinum, or says that it will play with a few settings changes, this is what you need to do to install it:

  • Run Steam client. On the top left, click on Steam and then on Settings.
  • Now, you’ll see an option Steam Play in the left side panel. Click on it and check the boxes Enable Steam Play for supported titles (You can play the whitelisted Windows-only games) and Enable Steam Play for all titles (You can try to play all Windows-only games)
  • Click OK to exit back to your Steam library.

  • Right-Click on a title in your Steam Library.
  • Select "Properties"
  • Click on the Compatibility tab.
  • Check the box "Force the use of a specific Steam Play Compatibility Tool".
  • Make sure that underneath that check box, it says "Proton x.xx" (whatever the latest version number is).
  • If it doesn't say Proton, click on it, and select the latest version of Proton from the list.
  • close the properties window.

You should see that the app you just changed the settings for now has a gree INSTALL button. You can now install it, and it will essentially be the same download and install process that, as a Steam user, you should already be familiar with. After it installs, you will be able to play it, and in most cases, it will work the same or better than it did in Windows.

ACHIEVEMENT UNLOCKED! You can now run Windows games in Linux, and have no reason to go back to Windows again!

Here is another useful link: ProtonDB

ProtonDB, used in conjunction with WineHQ (from above) are useful resources that will help you find out ahead of time if any given app or game has issues. They also offer tweaks, advice, info, and news. They are useful, and will be as you continue the transition away from Windows.

Here are some more useful links:

Here are some great videos showing all of this stuff in action, so you can see what the future holds for you.

Since I switched, it's been one great thing after another. One of the most fun things about Linux are some of the tools you can download to customize the desktop to look more or less the way you'd like it to look. In a few of my previous blog postings, I give instructions on downloading and using some of them. Read some of the earlier posts and try out things like Variety, Videolan's VLC Media Player, Kodi, and more.

After a few weeks of being Linux-Only...

So, one of the truly easy things for me about switching to Linux was that so many programs I rely on for my daily usage are already available in Linux. The following programs are what I use on a daily basis on my own computers:

  • Firefox
  • Chrome
  • Thunderbird Email
  • Kodi
  • Videolan VLC Media Player
  • Steam
  • Notepad ++
  • Balena Etcher
  • Acrobat reader
  • DosBox
  • Raspberry Pi Imager
  • MAME

Other programs I use that are not really availabvle in Linux have Free alternatives that are essentially good clones that work just their commercial counterparts:

  • Libre Office (works almost exactly like Microsoft Office)
  • GIMP (Works a lot like Adobe Photoshop)
  • Kdenlive (A video editing suite that is easy but powerful)

The switch was easy, because I had to give up so few applications, and the alternative ones didn't have much of a learning curve, and had most, if not all of the features I needed. The only hurdle was getting modern PC Games, which were all written for Windows, to work. Thankfully, these didn't really pose any obstacles at all, thanks to the combination of Zorin already having all the required software pre-installed, but because all of the games I was really concerned with were in my Steam account, and Steam has been working hard to make Windows unnecessary for games.

Monday, October 4, 2021

Zorin OS: A Possible Windows alternative that runs Windows software?

Do you remember back in 2001, when a Challenger to MIcrosoft Windows emerged, and claimed that it's "Lindows" operating system was Linux that could run Windows software? Many people were intrigued by the possibilities that this hinted at -- no longer would we be dependent on MIcrosoft's buggy software. I watched with delight, and read all I could about it, wondering if they got it working. Then Microsoft sued them, and they just disappeared... Sort of. Kind of.

Just a few years earlier, in 1998, Wine, a Linux API that promised to run Windows programs under Linux, inspired the developers of Lindows to incorporate it into their distribution of Ubuntu. They may very well have accomplished their goal, had they not named it "Lindows", and gone around proclaiming that it worked better than it actually did. The bottom line is that Wine was around since 1998, and at the time, Windows 95 and 98 ruled. Wine actually achieved major accomplishments, and people reported that it really worked. It wasn't perfect. You still had to be fairly skilled to get it working, and well, let's face it, Windows and Mac OSX were designed to be used by any schmuck with a computer. Everything was really easy and designed around a GUI that everyone knew already. Mention Linux to the average Windows or Mac user, and they would likely have said "Huh?". After all, at the time, installing Linux was not a magic carpet ride. It was relatively new, and drivers for various pieces of hardware were difficult to find. You had to recompile the kernel each time you updated something, and well, it was an OS that required a special kind of masochism to use. Today, it's a breeze!

After the near demise of Lindows, Linux continued to improve, and so didn't Wine. Even with the many OS upgrades that Windows went through -- 98, 98SE, Millenium, XP, Windows 7, 8, and 10 -- Wine continued to improve and keep up with each revision of Windows. It actually works, and has worked in the over 20 years of development it's been through. I never tried it, because most of my Linux experience comes from Single Board Computers like the Raspberry Pi, and I know that running Windows apps on a Raspberry Pi is just not really done, because it's not x86-based. But I digress...

So recently, I seriously thought about moving over to Linux. I got a copy of Twister OS for my Raspberry Pi, and was really impressed with how you could mix and match the features of different operating systems to your heart's content, and it had things like DOSBOX to let you run old DOS programs. I quickly fell in love with it, and then was watching my favorite YouTube computer nerd, Christopher Barnatt, and he did a video about Zorin OS. The more I thought about it, the more I decided I had to try it.

So this past weekend, I paid $39 and downloaded Zorin 16 Pro. The difference between Pro and the Free version is that Pro has a ton of apps analogous to what you get with Windows or Mac OSX out of the box, and though I knew how to find and install many of those apps myself, I felt I should contribute to the Zorin project and get some authorized support if I needed it. SO I downloaded the 8GB image, burned it to a USB Stick, and installed it on a spare mini-NUC-clone I had. Yeah -- 8GB is all it takes. It's nice and compact, yet full of features. After the easiest OS install of my life, I was ready. Sound worked. Video playback was choppy, and youtube was kind of bad, too. But then I went to the update center, and found that it wanted to install a bunch of software updates. After the software updates were done, and I rebooted, the video issues were resolved. I think that when you install it, it puts generic video drivers on, then when you do the software updating, it actually detects what video hardware you have and installs the latest driver for it. It's what a lot of operating systems do to avoid crashing during install.

I quickly installed and configured Kodi, and the Fen addon, and then started playing around. The Amazon Prime video player worked. Chrome and Firefox work better than in other Linux distros that I've installed. Chrome synched up with our Google account. So I brought it downstairs, hooked it up to the TV, and it's now our TV PC, which will guaranty that we actually use it and learn more of it's secrets.

For my next installment, I'm going to start using Wine to set up some Windows apps. I have a short list of things I want to really try, before moving onto big Steam-powered games, like the Halo Master Chief Collection.


Software Installation



So Zorin is so modern that like Windows and Mac OSX, it has an app store. Unlike the MIcrosoft and Apple apps stores, however, pretty much everything is free. The App Store is just one of several ways you can install things under Zorin. On the App Store, I found most of the free useful apps I was already using in Windows. I like Notebook++, Raspberry Pi Imager, and Balena Etcher. Balena is the only one of the three that isn't in the store. However, after a brief search, I went to the Balena website, and downloaded the Windows version. This is where Zorin gets interesting. Immediately after opening the download, I got prompted by WINE. It took over the install and guided me through with a series of prompts (which I just selected defaults on), and when all was said and done, there was the Balena Etcher icon in my programs list, and it actually worked! So basically, if your app is an *.EXE or *.COM file, WINE is set up to auto-detect it as Windows software, and offer to install it for you. This works well most of the time.


Steam

So I searched for and installed Steam. It is the Linux version of Steam, so as of this writing, only apps that are made for Linux will be discussed. The good news about the Linux Steam app is that all of my Windows apps show up -- everything I have purchased through steam is there. When you hover over the items, the Install button lights up if it can be installed under your OS. Sadly, only Osmos, Black Mesa, and Doombringer were able to be installed. But they all work perfectly! In fact, Both Black Mesa and Doombringer, which are both FPS games, have much quicker load times. It's a welcome improvement. Even better was the fact that Black Mesa had all of my save games and workshop subscriptions already installed, which was a great surprise!

Osmos, which I don't really play any more, works the exact same way as it does in Windows, but it's just a 2D game, so not as complicated.

Do not install DOXBOX unless it's DOSBOX-X. For some reason, even though I've installed DOSbox on numerous computers and on numerous operating systems, the same version doesn't seem to work correctly. I was unable to mount a C Drive. I settled for DOSBOX-X, which is the same program, but with a more useful user interface. The mount command works as it should, and I was able to play Doom, Star Control, and a few other oldies.


Though there are numerous ports of Quake for Linux, I am not sure if any of them are like Dark Places, offering enhanced effects for modern graphics cards. More research is needed. I'll have to get back to that later. What I really want to do is get something like Battlezone redux working -- which may require me to install the Windows version of Steam, using WINE. I'll have to play with that and do a little how-to about it.

Addendum

So the rest of my Zorin Experience went great. After reading an article about Steam for Linux, I saw how simple it actually is to get all of my favorite games working. In Steam, you simply click on your game, select Properties, then click on the Compatability tab. Check the box "Force the use of a specific Steam Play Compatibility Tool". Then make sure that underneath it, it says "Proton x.xx" (whatever the latest version number is). Mine defaults to Boxtron, whic is more for older DOS apps. After you have selected Proton, just close the pop-up windows, and the install button for the game is now Green. INSTALL AWAY!

Some apps may give an error on install that tell you it can't be installed. Usually it's because Boxtron is still selected as the compatibility tool. Just go back to properties and make sure it's set to Proton. Reinstall.

After installing things like Battlezone Redux, Halo Master Chief Collection, and Call Of Duty Black Ops, I was surprised and psyched. Everything worked! No tweaking, and no issues! At that point, I purchased Doom: Eternal, and spent about 4 hours or more installing this 50GB game. When all was said and done, IT WORKED PERFECTLY. So my transition is now complete. I only have to account for a few random Windows applications that I occasionally use, but they're not critical to me, and I can likely find Linux native versions of them.

GOOD BYE WINDOWS!

Saturday, June 27, 2020

Ubuntu 20.04 for the Raspberry Pi 4!

So it's finally been released -- a stable version of a 64-bit Ubuntu for the Raspberry Pi. This is what many have been waiting for, but the current version is not for the absolute beginner. To get to the GUI Desktop that gives the Raspberry Pi a much needed "Oomph!", we have to do a little command line work, as I think as of this writing, it's still beta. What I have here is a list of things you need to do in order to get to the point where everything will be working as you expect it to if this were Raspian.

Ok, so choose an SD card to put Ubuntu on. I recommand a nice large one, like a 128GB or 256GB -- because if you end up liking it, you'lre going to want to have plenty of room for more apps! Use your Mac or PC, and insert the SD Card into an available USB port. I recommend the new Raspberry Pi installer. It's got the edge on Balena Etcher -- Raspberry Pi installer actually locates the latest supported images and downloads them so you don't have to.

When selecting the OS in the Raspberry Pi installer, first choose Ubuntu.

Then select Ubuntu 20.04 LTS 64-bit.

After burning the SD card, put it into your Raspberry PI and boot. It will take a while, but eventually you will be asked to log in.

username=ubuntu
password=ubuntu

It should ask you to change the password after accepting the login. BE CAREFUL AND CHOOSE A PASSWORD THAT YOU CAN REMEMBER!

When you are done changing the password, it will leave you at a command prompt. Now at this point, you can just start using it as a command line OS, JUST LIKE THE GOOD OLD DAYS! Before graphical desktops, Unix, the predecessor of Linux, was just a command line. DOS, CP/M, Unix, and other pre-1980's operating systems all used their own unique command line language to navigate. But we know you want the GUI, so here is what to do to get everything up and running.

This is what you do after booting your Raspberry Pi 4 with the Ubuntu 20.04 image for the first time. First, we have to update the OS you just installed, so type the following commands:

sudo apt update
sudo apt upgrade
sudo reboot

Installing an Ubuntu Desktop

Next, we have to install the Ubuntu Desktop, so you can use an OS that is more familiar to you. There are many choices, which offer various improvements and compromises. The Default is the Ubuntu Fossa Desktop. if you're in the mood for other desktops, here are a few more. Currently, I'm testing out Ubuntu MATE Desktop, which seems to have better video playback speed.

GNOME is the default desktop for Ubuntu.

Below are the different desktops, and their terminal command lines to install them. You can actually try them all out, or read up on them HERE.

During the install of these desktop environments, you will be asked which Display Manager you want to use, and will be prompted to choose either GDM, GD3, GDM3 (All Variations on the "Gnome Desktop" manager) or SDDM. This is still something I'm experimenting with. I selected GD, because it was supposed to be lighter, and had less bells and whistles, which I figured would create extra work. SDDM is SUPPOSED to have better support for video, but I haven't tried it yet. When I have a chance to compare the two, I'll re-write this section to give my recommendation.

Just remember, it doesn't really matter which one you choose if you're experimenting like me. Just try one, then the other later on, and decide which one is your favorite.

DesktopTerminal command to install it
Ubuntu Fossa Desktopsudo apt-get install ubuntu-desktop
Ubuntu MATE Desktopsudo apt-get install ubuntu-mate-desktop
Gnomesudo apt-get install gnome-session gdm3
KDE Plasma Desktopsudo apt-get install kubuntu-desktop
Budgie Desktopsudo apt-get install ubuntu-budgie-desktop
Xfce/Xubuntu Desktopsudo apt-get install xubuntu-desktop
Cinnamon Desktopsudo apt-get install cinnamon-desktop-environmentp
LXQt Desktopsudo apt-get install lxqt sddm
Gnome Flashback Desktopsudo apt-get install gnome-session-flashback

Don't forget that after installing each of these, you should type in:
sudo reboot

Setting up Remote Desktop access

After rebooting, we should add the Remote Desktop software, to allow you to connect to it with your Windows or Macintosh PC. You can use your Raspian/other Linux computer to access it remotely.

sudo apt install xrdp
sudo systemctl status xrdp
sudo systemctl restart xrdp
sudo reboot

Net-Tools

Net-tools gives you a few more useful things to help you figure out networking issues or monitor your network. Just install them. They are useful once you realize you have these features in Windows.

sudo apt install net-tools

Overclocking the Raspberry Pi 4

Next, we need to edit the usercfg.txt file. Ubuntu doesn't let you edit the config files while you're running, unlike Raspian. So we have to use another PC/Mac to edit it. shut down and remove the SD card. Put the card into your PC, locate and double-click on usercfg.txt

You should only do this if you have a CPU fan installed on your Raspberry Pi 4. If you want to be adventurous, you can try the faster (hotter) speeds:

SafesthotVery Hot (beware!)
over_voltage=4 over_voltage=6 over_voltage=6
arm_freq=1750 arm_freq=2000 arm_freq=2147
gpu_freq=620 gpu_freq=750 gpu_freq=750

Create a section of the usercfg.txt file labeled [Pi4]. Add your choice of the lines above to the [Pi4] section. It should look like this:

[pi4]
over_voltage=4
arm_freq=1750
gpu_freq=620

This will overclock the Raspberry Pi 4 at the safest speed. Use the others as long as you have a good fan attached.

Next, there is a video issue with Ubuntu, that limits you to a lower resolution than the 1920x1080 that everyone wants. It also has Overscan, which puts an annoying border around the edge of the screen. To fix that, we need to add a couple more lines to the usercfg.txt file. To enable 1920x1080 resolution, and disable the overscan, Add the following to your usercfg.txt file:

dtoverlay=vc4-fkms-v3d
disable_overscan=1

Save the usercfg.txt file. Be sure to right-click on the drive containing the sd card, and select EJECT before removing it. Insert the SD card into your Raspberry Pi and reboot!

Audio Issues

The Ubuntu setup likes to default to the HDMI Audio out, but there are those of us prefer using headphones, or who have speakers that we'd like to pump the sound through. Unfortunately, there is a problem with Ubuntu's audio manager -- you can select the headphones/analog output all you want, but it just keeps going through the HDMI. To fix this, simply open terminal, and type the following:

amixer -q cset numid=3 1

Now put on your headphones and play some music.
if you need to know, the settings (last number on the command from above) are:
(1=analog, 2=HDMI0, 3=HDMI1).

The Argon One Raspberry Pi Case

For users of the Argon One Raspberry Pi 4 Case with fan, you will need to download the fan control software. Currently, Argon is working on an Ubuntu script for the fan software, so check their website before doing the following:

Open terminal, and type the following:

cd /tmp/
wget https://raw.githubusercontent.com/meuter/argon-one-case-ubuntu-20.04/master/argon1.sh
chmod a+x argon1.sh
sudo ./argon1.sh

The script will generate a bunch of scripts and config files. The main commands are:

argonone-config to config the fan behavior
argonone-uninstall to remove all the scripts and services (conf file remains though)
argonone-tempmon which monitors the temerature using the linux sysfs.

getting Bluetooth to work

The BLuetooth drivers for the Raspberry Pi 4 do not get installed by Ubuntu (again, it's a beta version, so it'll probably be fixed along with the screen res and other issues). Fortunately, thanks to Damir Biscan from the Raspberry Pi 4 Facebook forum, I got the fix for that. IN terminal, just enter the following, and it will take care of it in one shot -- just reboot after, for it to take effect.

sudo apt install bluetooth pi-bluetooth bluez blueman

After rebooting, your control panel and menu bar items for bluetooth will work.

Kodi users mouse fix

SO if you like to use Kodi, there is an issue that plagues all Raspberry Pi users, regardless of operating system choices. When you open Kodi, the mouse is slow and choppy, and so isn't the video. We fix that in a deceptively simple way.

In terminal, type:
sudo nano /boot/firmware/cmdline.txt

Add the following text at the end of the line in that file (Do not add new lines. it all has to be on the one line)

usbhid.mousepoll=8

Save and close, and reboot!

Kodi should operate at a more normal speed.

Now you are ready to start using 64-bit Ubuntu on your 64-bit Raspberry Pi!

ADDENDUM: If you are having trouble getting Chrome to install on your Raspi with Ubuntu, Click HERE for a solution. Chrome for ARM using Linux is available, but it's not as simple as a download to get it working. Chrome is installed with some of the desktop environments, but not others. I discovered this while trying out Ubuntu Mate.


Tuesday, January 21, 2020

Raspberry Pi super-system

One of the ongoing endeavors with the Raspberry Pi 4/4GB model is to try to use it in the same capacity as a standard Desktop and Laptop computer. My needs are pretty basic, but cover a wide spectrum of different applications. Also -- every time I find software for the Raspberry Pi 4, it involves a lot of searching, but I never document where I find it -- so I can't repeat the install on another system. So this entry in my blog serves that purpose -- to document where I find great apps that I want to put on my Pi Workstations, and how to install the more complicated ones. Linux is a new OS for me, and though I've had it for years, I've never had a lot of opportunity to just dive in and become as familiar with it as DOS, Windows, and MacOS. On my PC, I use the web, mostly, for browsing and email. I am into Emulation of legacy computer systems and software. I like to play movies and music. I like to create art, memes, and other things, as well.

Along the way, I realized that other people would want this information as I collect it, because if you're not as familiar with the Raspberry Pi and Linux as I am, you'll have all of the same problems with it as I did, and you'll get frustrated and want to give up. No need to lose hope.

The "Raspberry Pi Super System" is just a nickname for my Raspberry Pi that is as much like my Windows PC as possible, and capable of being used on the road, or in place of my desktop for everything except hi-end gaming. The Raspberry Pi 5 or 6 will have to address the need for gaming. Though it's just a standard Raspberry Pi 4 with 4GB of RAM and a 256GB microSD, the idea of the Super System means that it's going to be as capable as my PC in terms of being able to let me get all the stuff done that I need. Facebook, Youtube, Email, Internet, TV, Movies, Music, Blogging, emulating lots of old computers, retro-programming, burning bootable images, and more, are what I'm going for.

Some people may ask "But what does a Raspberry Pi 4 have to do with retro computing, and the other things in this blog?" a Lot, actually. It is the Raspberry Pi line of single-board computers that is at the heart of many retro projects, mainly because of Retropi (An Emulator that emulates over 7000 games from old video game consoles and arcade machines), SimH, and of course, the Raspberry Pi is at the very heart of the PiDP-8 and PiDP-11 projects that simulate the Digital PDP-8 and PDP-11 minicomputers. One project I'll document later is my own project "PiDEC", which is a Raspberry Pi running SimH that has a 9-pin serial port on it, which I connect to the serial port on an old DEC terminal to give a complete retro-experience. I can just velcro the Raspberry Pi onto the back of an old terminal, and I have a fully self-contained "mini-computer in a terminal". Having the software on your Raspberry Pi to put these projects together will let you have one workstation to do it all on, so that you can use your Windows PC or Mac free of the clutter that having all the software for Raspberry Pi's on it, and having to move back and forth between one and the other.

The following Raspberry Pi apps are what you should add to your Raspberry Pi Build if you're going to use it as a workstation to do normal, everyday things with. Of course, what each user does with their desktop or laptop computer varies from user to user. My list is geared toward users who do a variety of different things revolving around the internet. There are apps for entertainment, using the web, and a few enhanced programs to make things easier to do in general.

*** Balena Etcher ***

Balena Etcher is a popular SD Card imaging program. If you have a Raspberry Pi, you need to have a program to do this, if you don't want to have to switch back and forth to a PC. Currently, Raspberry Pi users need to have a PC or Mac handy to image SD Cards to use in a Raspberry Pi. Etcher for the Raspberry Pi is the same Etcher that you use on the PC and Mac, so if you're already using it, the Raspberry Pi version will require no learning curve.

Installation:

  • In terminal, type: curl -s https://packagecloud.io/install/repositories/swift-arm/etcher/script.deb.sh | sudo bash
  • Then type: sudo apt-get install balena-etcher-electron
Once installed, it should appear in your Raspberry Pi button menu under Accessories.

*** GPartEd ***

Used in conjunction with Balena Etcher (above), GPartEd will allow you to format SD Cards for your Raspberry Pi Projects without having to use a Windows or Mac-based computer. GPartEd is a Partition editor and formatting tool that allows you to correctly format an SD Card in Fat32, which is the preferred file system for Raspian and Linux operating systems in general. Using this will truly free you from needing another computer to set up your Images.

Installation:

  • Go to Start--> preferences --> Add/Remove programs (or Synaptics package manager) and search for "GParted".

*** Cool Retro Term ***

Cool Retro Term is a great program for people who do emulation of old computer systems. It enhances the terminal program of the Raspberry Pi by simulating an old CRT Screen, complete with simulations of various electronic problems inherent with the old CRT technology -- like Blur, burn-in, flickering, loss of vertical sync, etc. I include it here as entertainment, though it really has a limited audience.

Installation:

  • Open up the terminal on your raspberry Pi.
  • copy and paste this into Terminal (or type it in):
    sudo apt install build-essential qmlscene qt5-qmake qt5-default qtdeclarative5-dev qml-module-qtquick-controls qml-module-qtgraphicaleffects qml-module-qtquick-dialogs qml-module-qtquick-localstorage qml-module-qtquick-window2 qml-module-qt-labs-settings qml-module-qt-labs-folderlistmodel
  • After the above completes, type:
    git clone --recursive https://github.com/Swordfish90/cool-retro-term.git
  • Type:
    cd cool-retro-term
  • Type:
    qmake && make

    (This will take a while. You may have to wait 5-10 minutes, but it will keep grinding away. Be patient)

  • When The above is done, you access the program by doing the following:

    open the Raspberry Pi Terminal
    cd \cool-retro-term
    ./cool-retro-term

Options can be changed by right-clicking on the Cool-Retro-Term window.

*** Synaptic package manager ***

Synaptic package manager is a better and more versatile software package manager than the one included with your Raspian Buster Image (Add/Remove Software). It has a better search function and categorizes software to make the correct packages you are looking for easier to find.

Installation:

  • Open Terminal and type:

    sudo apt-get install synaptic

*** VLC Media Player ***

VLC Media Player is an open source video player that plays virtually all video formats, and had great support for PC, Mac, and Linux. It's most likely already installed on your Raspberry Pi's Raspian Buster image. However, if you did a light install, and it's not there, you can alweays add it later.

Installation:

  • Go to Start--> preferences --> Add/Remove programs (or Synaptics package manager) and search for "VLC Media Player".

*** DOSBOX ***
DOSBOX is a multi-platform program that allows you to run old MSDOS programs from the days before Windows. It's generally people who are into Retro-gaming and retro-programming that would get this, but it's still handy to have. It's open source, and has a huge degree of support.

Installation:

  • Go to Start--> preferences --> Add/Remove programs (or Synaptics package manager) and search for "DOSBox".

*** Deluge Bit-torrent client ***

You may not have a need for downloading Bit Torrents as a PC or Mac user. Many of you have heard that bit torrents are associated with software, video, and music piracy, but the bit-torrent format is not illegal, and a lot of legitimate software and media can be downloaded using a Bit Torrent downloader. Essentially, when a file is far too large to download over the internet, Bit Torrent format is how to allow software, music, and video to be downloaded in a format that saves a lot of resources. Bit Torrents are spread out on multiple sites around the web, so that no single source will get charged with all the data fees from it being downloaded by hundreds of people every day.

In the Linux world, bit torrents are used quite a lot for software and disk images. Having Deluge on your system will come in handy when you come across a disk image that you want to burn to an SD card or USB stick.

Installation:

  • Open the terminal and type:
    sudo apt-get install deluged deluge-console python-mako deluge-web

*** Thunderbird (Mail Client) ***

Thunderbird, from Mozilla, is a free, open source email program that is free from a lot of the bloat of Microsoft Outlook. It's got a very old school look to it, and can handle all of your email needs. Though the Raspberry Pi comes with Claws Mail, Thunderbird has a lot more features and optional plug-ins.

Installation:

  • Go to Start--> preferences --> Add/Remove programs (or Synaptics package manager) and search for "Thunderbird".

*** FileZilla (FTP Client) ***

If you use the web for business or pleasure, you occasionally need an FTP Client. FTP is a file transfer protocol that works from any browser, historically, but for more versatility, an FTP Client gives you more options. FileZilla has become the standard Cross-platform, free application that everyone has been using for years. It will come in useful to Linux users who have to download a lot of files over the Internet.

Installation:

  • Go to Start--> preferences --> Add/Remove programs (or Synaptics package manager) and search for "Filezilla".

*** QMMP (WinAmp-like Music Player ***

Everyone uses music players, whether you're playing something to listen to while you work, or just putting music on the computer to play at your next party, a music player is essential. Mac user have Itunes. Windows users have Media Player, but everyone was using Winamp about 10 years ago. Winamp was still kicking Media Player's and iTunes asses until it was forgotten about by Apple and Microsoft, as they made their own media players the default on their systems. Linux and Raspberry Pi's don't have a native media player app like WinAmp, Microsoft media Player, or Apple iTunes -- but QMMP is my choice. It looks just like Winamp, has a visualization library just like WinAmp, and pretty much the same user interface.

Installation:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "QMMP".

*** CUPS (Printer adding/management utility) ***

The one problem that all Linux users face is printing. Getting a printer to print in Linux is something that shouldn't give us as much trouble as it does. Not all printer makes and models support Linux, and finding a driver can be difficult. CUPS is a utility that helps Linux users get their printers working.

Installation:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "CUPS".

*** P7Zip (Zip archiving and extraction tool) ***

P7Zip is a Zip Archiving tool. It can understand many different variants of the *.ZIP format, is open source, and free. It's specially made for the Raspberry Pi, and is made by the same people who gave us "7_Zip".

Installation:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "P7Zip".

*** RealVNC ***

RealVNC allows you to control one computer from another computer safely and securely. It is a cross-platform program, so it works in Windows, Mac OS, and Linux. RealVNC allows you to connect up to multiple computers from one computer, and control them. I like to use it to copy files from my PC to the Mac in my workshop, or copy video files to my TV-box.

Installation:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "VNC Viewer".

"VNC Server" will be needed on the computers that you want to connect to.

*** Kodi 18.5 Leia ***

Kodi is The multimedia streaming app that allows you to install many different plugins to access different content. Primarily, it's used to watch TV and Movies, but there are apps that allow you to stream radio, watch Youtube and your video subscription services like netflix and Amazon Prime. I've used it for years, and have it on most of my computers, as well as on my personal TV box. When the Raspberry Pi 4 came out, a new version had to be compiled for the new chips on the Raspberry Pi. This led to a lot of confusion about where to get it.

Installation Instructions:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "Kodi 18".

*** Open Shot Video Editor ***

OpenShot video editor is a free, award-winning, open source video editing program that rivals a lot of stuff that you have to pay for. You can bring all sorts of video file formats into it, and it will satisfy everyone from the casual editor who is just organizing home movies, to the YouTube video content maker and more. It runs surprisingly fast on a Raspberry Pi 4, too.

Installation:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "OpenShot".

*** Putty ***

PuTTY is a free and open-source terminal emulator, serial console and network file transfer application. It supports several network protocols, including SCP, SSH, Telnet, rlogin, and raw socket connection. It can also connect to a serial port.

Installation:

Go to Start--> preferences --> Add/Remove programs (or synaptics package manager) and search for "Putty".

*** ExFAT and NTFS Support ***

Every Pi Owner who uses Windows PCs needs to be able to read ExFAT and NTFS file systems for compatibility. Let's say you make a USB memory stick and fill it full of files that you want to move from your Windows PC over to a Raspberry Pi, or, more realistically, someone gives you a USB drive with files on it that you want or need. If the USB device is formatted in ExFAT or NTFS, Raspbian will not be able to read it. Having the ability to read and work with those file formats will save you a lot of grief, and allow your Raspberry Pi to function more smoothly and flexibly.

Installation:

Run Terminal and type the following commands:

  • sudo apt-get install exfat-fuse
  • sudo apt-get install exfat-utils
  • sudo apt-get install ntfs-3g

Reboot your Raspberry Pi for good measure, and that's it!

There are instructions included with the above programs that show you how to get more flexibility out of them (mostly under unusual situations where the default settings aren't enough for what you need to do), but for 95% of most Raspberry Pi users, the Raspberry Pi will just automatically see and be able to transfer files to and from these formats, seamlessly.

*** Admin/Management Tools ***

The Raspberry Pi Foundation removed a bunch of Gnome (The default GUI Desktop Environment on many distributions of Linux, including Debian, but sort of compatible with LXDE, the default GUI for Raspbian) control panels from the Raspberry Pi's menus. Because the Raspberry Pi is intended for education, and it's supposed to be really easy to use, they wisely chose to keep powerful admin tools out of the hands of the average user, who might not be fully aware of the damage that can be done to their own stuff with those tools easily available. So the Raspberry Pi Foundation removed the GUI control panels from the menus. To do things like Adding new users, changing the access rights to certain folders and applications, etc, you can still do it all through the Terminal, but it requires more steps and knowledge to do it.

If you're like me, you want to be able to control and manage your Raspberry Pi as easily and conveniently as you can on your Mac or PC. To do that, you only need to re-add the Gnome Desktop admin tools.

Installation:

Open the Terminal and type in the following:

  • apt-get install gnome-system-tools

The new control panels should show up in the menus. Users and Groups will appear under the Preferences section of the main menu.

*** Variety ***

Variety is a desktop background changer that will automatically change the Desktop Background image at intervals that you decide. This program allows you to have a feature that Windows 10 and Mac OSX both have, but which isn't a default part of Raspian. The same software is also available for other flavors of Linux, too. What makes Variety stand above and beyond the natural Windows and Mac OSX background changer, though, is that you can select not just pictures that you've downloaded to your computer, but it will automatically download random images from a bunch of public domain image sites, like Desktopper.co, Bing photo of the day, Unsplash.com, NASA's picture of the day, live wallpaper from Die.net, Peter Levi's Flicker page, and any other place you find and want to add. It really offers you the most control over everything. It's also very easy to use.

Installation:

Open up Add/Remove Programs or use Synaptic Package manager, and search for "Variety". There will be a long list. Just follow alphabetically to find "Variety", and that should be it.

This list of software install instructions will be appended as I discover more software.

ADDENDUM: Virtually all of the software mentioned in this article is available for other versions of Linux, and if you use Ubuntu, the install instructions are virtually identical. In most cases, the Synaptics package manager is available for your version of Linux, and it will install the correct versions of the software for your particular Linux distribution. What this means is that you can have any PC or Mac, or other system on which Linux runs, and the software will work. It's not limited to Raspberry Pi/ARM computers.

Monday, November 11, 2019

Infinite Laptop with Raspberry Pi 4


The Raspberry Pi 4 has proven itself to be an amazing, useful, and welcome upgrade to the fine line of Raspberry Pi products. With it's Quad-core, up to 4GB of RAM, Gigabit Ethernet, and USB 3.0, it has catapulted itself into the forefront of the Single Board Computer market. Not only is a 4GB Raspberry Pi 4 an adequate Desktop Computer, it can also be a super laptop replacement, as well.

The Pitop company has come out with a number of Raspberry Pi Products, and the best one is the PiTop CEED. The regular Pitop laptop that is currently available is not readily compatible with the Raspberry Pi 4. Mainly it's the fault of the Raspberry Pi 4. The Raspberry Pi Foundation made an unexpected change to it, in that they swapped the location of the Ethernet and USB ports. The Ethernet port used to be on the left, but it's now on the right. The PiTop was tailor-made for the form factor of the Raspberry Pi when the latest model was the Raspberry Pi 3B. Because of the tight, unforgiving cabling and plug-in boards, the current PiTop cannot accommodate a Raspberry Pi 4, not without some serious modifications.

But if you can find a Raspberry Pi CEED laptop (Not to be confused with the CEED Desktop), not only is the quality of the cables better, but everything is set up in a way that makes it possible to just plug in a Raspberry Pi 4 wityhout having to do any more than add an adapter plug or two.


On the left is the PiTop CEED's interface board that combines battery management, Display connectivity, and power pass-thru. On the right is the Raspberry Pi 4 with 4GB of RAM. In the middle is the soon-to-be replaced HDMI-to-Micro-HDMI cable. I only had a 4-footer on hand. I have a 6-inch replacement on the way.


The ArkTek adapter is just a micro-USB to USB-C adapter for the power. It was pretty much the only extra thing I had to put into this, next to the HDMI-to-Micro-HDMI adapter. There is plenty of room inside for many different brands/types of adapters. You should be able to fit an SSD into this, if you even need one, since the Micro-SD card I have is 256GB.


The main drawback of the PiTop CEEDis how you connect ethernet and USB devices. Currently, there is just a gaping hole in the side of it, and you're supposed to just run your Ethernet and USB cables through it. You can slide the black tinted plexiglass panel out to stick your fingers inside to make the process easy, but ultimately, this needs a remedy.


As you can see, the placement of the hole, and the fact that it's not "fitted" to the form factor of the Raspberry Pi makes plugging in USB sticks and Ethernet slightly inconvenient. The size of the connectors varies, and because the hole is slightly offset, some USB devices just won't fit. I had to remedy this temporarily with a USB hub..

The reason I say that this is an infinite laptop is because if the Raspberry Pi 5, 6, and other future models maintain the same form factor, this laptop can be upgraded easily, by just swapping out the Raspberry Pi. You could upgrade the display, as long as the 14" display for laptops continues to be available. The only real drawback is the keyboard and trackpad. Just like with any laptop these days, the keyboard is custom and would have to be purchased from PiTop, if it breaks.

Update Dec, 2020

I revisited the original laptop after leaving it in my pile of projects, and made some much needed improvements, along the line of the list I made:

  • Get an Ethernet extension cable to route the Ethernet port on the Raspberry Pi to the rear of the PiTop case.
  • Get a USB 3 Hub to route the Raspberry Pi's USB 3 ports to the rear, to give a number of USB 3 and USB-C ports next to the Ethernet Port.
  • Add a micro-HDMI-to-female HDMI cable to the Raspberry Pi's second micro-HDMI port, and have the female HDMI port stick out the back, so that external monitors can be used.
  • Add a fan and drill some vent holes to keep overclocked CPU cool.

First, I moved the Raspberry Pi closer to the Power/battery/video board, so I'd have more room to put in the parts I wanted.


This worked out rather well, because it allowed me to have a large, unobstructed place to put in the USB 3.0 Hub. If the Raspberry Pi were in the original place, I'd have to contend with the cables and tiny wires built into the display and power board. By moving the Rapsberry Pi over, I have a place to cut the hole for the hub which doesn't interfere with anything else. It came close to the rightmost hinge, but since I was gluing the hub in place, there would actually be more stability there after I was done.

I am using this Inland brand USB 3.0 hub, because it was the thinnest one I could find, and had 3 ports on one side. Most other hubs I saw were either too long, too thick, or had only 2 ports on one side. This one was just right. I used a dremel tool with a circular cutter to cut the hole and this picture shows me slipping the hub into the hole.

Here is how the unit looks from the rear, with the USB hub poking out. I used Sugru to plug any gaps left by the unevenly cut opening. I've been using Sugru for years now, and it is my Go-To product for filling in gaps, giving wires extra protection from being pulled, and other things.

Here is how far the hub sticks out. I made sure that opening the display would not allow it to bump into the hub.

With the hub glued securely in place, I wrapped up the excess cables, and glued the Ethernet union to the base of the PiTop case. I eventually want to try adding an NvMe Sata drive, and it can still fit there right next to the ethernet jack and hub. If that works out, I'll have it booting off of it. Right now, though, it works fine with the 256GB Micro-SD. Speaking of the Micro-SD card, I installed Ubuntu 20.10, after a few weeks of testing it and it's predicessor, 20.14.

Finally, I added a FanShim from Pimoroni, so I can overclock.

So here is something I'm pondering now. I need ventilation otherwise the fan will not do it's job. On method you see here, is me covering the plexiglass cover with Masking tape in preparation for drilling vent holes into it. But then I thought about just cutting a square hole, and putting a mesh filter over it. Still another idea that came to me was just using sheets of plastic to craft my own case top, which would snap into place, and have holes for speakers, as well as a large mesh-filter for ventillation. I haven't decided exactly which one to use yet, but in the mean time, I can use it and continue testing things.

So for now, this is the finished product, until I decide on how to actually complete it. As an internet/travel computer, it's fun and functional. It does video, plays games, and so far, has been my go-to computer for when I go to family gatherings where I might need to hang around waiting, or need to show people something on the internet.