Building an AMD Server and Game Machine out of Yester-Year's Parts

Some time ago I started noodling around the idea of building a replacement server for my home. I wanted to make this an extreme budget build. I came to the realization that I have become rather disconnected with the state of desktop class video cards and really much of anything that was outside of the laptop world. I was hung up, for quite some time on the case and motherboard selection. I would browse Newegg and eBay but since I lacked a lot of information, I was in a constant state of decision-vapor-lock. What changed was when I received some hardware at no cost. An incredibly large case and an AMD motherboard locked in the portion of the project that I was unable to make any decisions and dictated the rest of the build. So, over a period of months, I slowly acquired rest of needed components.

The case, although in good condition, certainly looks like it was at some point out moded and just became a place that parts were thrown into. I would guess this case is as old as my Linux jouirney.

The motherboard that was given to me was an AM3/AM3+ motherboard. I was actually kind of excited about this as I decided I was going to do a complete AMD build. Sure, this is an older AMD CPU socket with a silkscreen date on the board of 2013 but that meant getting something on the cheap was certain. Also, since I don’t exactly buy new things, this fit the bill.

This is what ended up getting, mostly from eBay, so for you to replicate this selection at this price may or may not be possible.

  • Graphics Card Gigabyte Gammin g RX570 8GiB Graphics RAM – $89.95
  • Power Supply – RaidMax RX-1000AP-S Power Supply – $74.19
  • CPU – AMD FX-9590 – $119.95
  • CPU Cooler – Cooler Master Hyper 212 Plus – $22.59
  • Memory – 32 GiB DDR3 1866MHz – $64.95
  • Storage – 6, Seagate 2TB drives – $149.70
  • 6-port SATA Card – $25.35
  • USB 3 All-in-one 5.25″ Front Panel Card reader – $19.99
  • Blu-ray DVD player – $50.00
  • 2x 3.5″ to 5.25″ adapter trays – $8.58
  • Serial DB9 RS232 9pin com port with bracket – $4.14
  • 6x SATA Cables – $9.48

That made a grand total of $638.87 invested in this machine. I went just a bit overbudget due to the CPU cooler. I was warned that the TDP rating on the CPU meant it was necessary to have an effective cooler.

This was the first time I have actually assembled from parts and pieces a computer. I have repaired and upgraded many but this was the first of this level of DIY. Since every part I had was untested and I had no way to verify if anything was working, as in, nothing else upon which I could conduct individual component testing, there were a lot of uncertainties in this.

When I kicked it on for the first time and had everything working, I was incredibly relieved that it all worked. There weren’t any issues at all with any of the components.

To see this machine actually start up and work in a kind of cobbled together state was not too far short of a miracle. I was very fortunate that all the used hardware actually worked.

Operating System | openSUSE Tumbleweed

There really wasn’t any other choice. I need long term reliability and I am not interested in reinstalling the operating system. I know, through personal experience, that Tumbleweed works well with server applications, is very tolerant to delayed updates and will just keep chugging away.

I have been very satisfied with the stability of Tumbleweed as a server for the last year on my “temporary system” performing that role. The issues I did have with that system, although minor, have been with video due to the Nvidia GPU. This build, I purposely avoided anything to do with Nvidia due to the dubious support they provide.

Storage Setup

This was an area that took me several months of research and reading. My criteria was that I had to have Storage Array BTRFS Raid 10. This afforded me a lot of redundancy but also a lot of flexibility. This will allow me to slowly upgrade my dries capacity as they begin to fail.

When deciding the file system, I did a lot of research into my options. I talked to a lot of people. ZFS lost consideration due to the lack of support in Linux. I am perfectly aware that the development is done primarily within Linux now but it is not part of the mainline kernel and I do not want to risk the module breaking when the kernel updates. So, that was a non-starter.

I looked at a few LVM options but if I wasn’t confident in understanding all the details of it and I didn’t want to risk any reliability due to my ignorance. Why I ended up using BTRFS is due to the reliability and flexibility of the file system. Anyone that says RAID 10 on BTRFS is not reliable is, sadly mistaken.

Since the motherboard I have wouldn’t recognize a software RAID and boot from it, I used a 7th drive to bootstrap the whole system. That, also running BTRFS for the root file system and I threw in some Swap as well.

Used a 6-port SATA card for the 6 drives of the BTRFS RAID array and mounted it as /home. At some point, I want to take advantage of the subvolume capabilities of BTRFS but that will come at a later time.

Additional Components

Prime 1 Bluray USB Media DashboardSince this is my new central computer, as it were, I wanted this to have all the faculties for doing the regular nonsense that I conduct in my SuperCubicle. Since it seems I have made a bit of a reputation for doing computer-y things, I tend to help other people out in data recovery, backing up their systems and so forth. I also like to mess with Single Board Computers and although I can stick an SD Card in my laptop. I wanted something with all the media cards in it and external SATA ports for plugging in drives as well. This already had some USB and SATA connections on the top of the case. The 5.25 Media Dashboard has SD, MS, MMC, XD, TF, M2, CF and SATA interfaces. There is also a power connector port and USB3. I have used many of these interfaces already. As a bonus, this has a temperature sensor that I attached to the CPU cooler that tells me what the temperature of that monstrosity is. It really hasn’t gotten real hot yet but I will see how hot I can get it after I really start pushing it.

The optical drive is also getting a regular workout as I have been dipping into the bargain bin of post-Christmas season movies to add to my media collection. All in all, this has been the perfect hardware build for me and my purposes. As it stands today, I only have 3 open bays on this machine so anything smaller, just wouldn’t do.

Current Activities

I didn’t just build this system to look old in my basement. I have had plans for this thing for longer than many of the parts. My number one task is that this machine is my central repository of all my data. Everything from records to movies. To that end, outside of the standard server functions you have by “flipping a couple switches” like Secure Shell, Samba, Syncthing, I wanted to go beyond this. Something “cool!”

Media Server

Currently testing Emby, PLEX and Jellyfin. This is probably what this machine does most right now. That and ripping the DVDs and Blu-rays I purchase using MakeMKV (Another blathering for another time). This function doesn’t seem to be very taxing on memory or processing power. Maybe if I had more machine drawing media from it it would but that is not an issue at this time.

Gaming Rig

Although I am not exactly doing much gaming, I think I played a game of River City Ransom: Underground with my youngest. I have also played Descent 2 (rebirth) on this machine, and it, of course, ran it extremely fast. At this point, I haven’t come close to taxing the video card. I am planning to do more Linux gaming with it and by that, I mean, anything that I can run in the Linux environment, so Wine and Proton, those are also fair “game”.

Video Rendering

Since this is the most capable machine I own, I’m using this to render video. It does the task in 1/3rd the time of my Dell Latitude E6440. Would faster be nicer, sure, but I don’t exactly churn out lots of video content for it to matter. I still tend to edit the video on my laptop but render it on this machine. Mostly because I don’t have great monitors for it yet. That will come later.

Planned Activities

I will be implementing a Nextcloud server and start playing around with some note taking applications that I can self-host. Not that I am unsatisfied with Simplenote, I just happen to like to keep my options open.

Another service I want to run is Home Assistant. I have these plans for implementing “smart devices” that are not cloud based going off someplace else. I want to have Home Assistant, manage all my devices and make my home just a bit more convenient. That is also another blathering for another time.

I had originally intended to make a video of the build of this, to include the installation process, but after reviewing the video and being bored out of my mind watching it, I have kicked that to the curb and will maybe turn that into an 1980s sitcom montage to music or something.

Final Thoughts

Although this computer has only been up and running for about two months, I am slowly adding more services and functions to it. For now, it is pretty light, but in a few short months, that will most certainly start growing. I am very happy happy with the sub-$700 build for a computer system that has met or exceeded my expectations. It was a fun first complete, from ground up, scrap-together assembly that really was a gamble. I am pleased with how well openSUSE Tumbleweed runs on it and that I have had no disturbances with any operating system updates.

Often, after a project, you will review it, have an “After Action Review” and ask yourself, “What would I do differently if I were doing this again.” I can honestly say, there is nothing I would change. I like everything about this machine. I would, perhaps, like more storage space as I have already gobbled up 2.5 TiB of my 5.5 TiB of storage space. Reviewing what I spent and the additional cost of the larger storage, I would have still made the same decision. So, back to would I change anything? No, I think I made the right decision. I do have upgrades planned for the future but that is a project for the fall. This machine truly fits my needs, even if much of the hardware is yester-years retired bits.

References

BTRFS Increase RAID capacity on ServerFault.com
openSUSE.org Tumbleweed Download
BTRFS wiki on Kernel.org
5.25 Media Dashboard on Newegg.com
Steam for Linux from openSUSE.org

Noodlings | Quick Tiling Fusion 360 in the Kitchen

New episode for the New Year and that title is almost entirely nonsensical because they are different subjects.

Have a listen to episode 11 of this jibber jabber!

Fusion 360 Review

Fusion 360 is a CAD / CAM application with finite element analysis capabilities. I was going through the Autodesk forums and read a lot of chatter about their position on the Linux client. It appears that for several years, there have been requests but there is no plan to support it.

One user gave a fantastic well thought out, logical reason for building Fusion 360 to work in Linux and he gave the typical reasons for not doing so with answers:

  • the management sees not enough customers here. It’s a question about cost/income ratio.
  • I think if done right, there are not much costs (keyword continuous integration)
  • Number of potential customers. Linux users need to raise there hand and write to Autodesk, so that they can see, there are potential customers. Linux leads already on the server market, and on embedded devices, smart phones and tablets (if you count Android as Linux).
  • On the desktop, Windows is still the dominating system (88%), Mac (9%), Linux (2%). But this is for the average user, this doesn’t need to be true for engineers and makers using CAD software.
  • I have no statistic here, but I personally have never seen engineers working on Mac.
    But I have seen many engineers, software developers and scientists that work on Linux.
  • Linux users are willing to Beta test and are able to generally figure things out for themselves.

There was a lot more that you can look at here:

Autodesk support for Fusion 360 Discussion

There were a lot of hostile responses from Windows users that were just… hostile. I do think that is a large part of the untold story. There are those that point to Linux and talk of the technological elitism but I don’t think that is a behavior that exclusive to Linux users at all. I can refer to this post for evidence otherwise.

Even though Autodesk has stated that they have no plans to support Linux, it is always with the caveat that of “at this time.” I still have hope that Linux will be supported in the future. It’s inevitable as there are a larger percentage of Linux users in the engineering field, Autodesk does support Linux on the Maya application and since there are more and more professional tools on Linux, I truly believe it will follow.

Quick tiling Windows in Plasma

It took me far too long to complete the write up and video but I must say that the tiling features in Plasma are pretty fantastic. I spent this past weekend doing a lot of administrative work for another job of mine and the tiling manipulation of windows and desktop navigation made the tasks far less painful than they have been historically. I have to emphasis once again that it is important to have key combinations that make sense that are easy to remember that can are quickly intuitive to you.

I made a little video about this with Kdenlive and put it on YouTube. I had a less than stellar comment about my production quality. For that, I can say, I’ll try better next time.

Linux in the Kitchen

I did a post this last week on my use of Linux in the kitchen. I did appreciate a lot of the great feedback II received from this. I don’t want to understate, at all the value of technology in the kitchen. It is not at all a strange science experiment being shoe-horned into a role in which it doesn’t make sense. Linux and the array of tools make several kitchen tasks more efficiently completed.

For my case, the right hardware was an important part of the implementation as I have a very limited amount of counter space. There were already several software applications I had been using, I just happen to further expand how I had been using them.

How it recently made the Christmas season more efficient…

What would improve Linux in the Kitchen is going to take some real effort on my part. Most of these things will be aided by single board computers or IoT like devices. I need more metrics in order to improve my results when baking. Improved inventory management, improved meal planning. All but the last one will take some serious work and effort in order to implement.

BDLL Follow Up

Fedora 31 challenge. Lot of people were rough on it and in some ways I understand but in others I do not. I have used Fedora periodically and I have always found it to be an enjoyable experience. Fedora is a lot more like getting a Lego set with some instructions than it is a ready-made product. I look at Fedora as being a more industrial grade Linux system that you implement for a specific feature. While distributions from the Ubuntu flavors are more like products that are ready to be used that focus on the out-of-box experience. All the flavors of Linux have a place and a target audience. Everyone is entitled to their own opinions about a distribution experience but I think it is almost a bit unfair to evaluate Fedora in the same way you would evaluate an Ubuntu.

I have decided to use Fedora’s Plasma edition and I am going to give it a fair, but biased, review. My expectations are very focused. I don’t need the “last mile” type polish, nor do I expect that from a Fedora or an openSUSE for that matter. What I do expect is something very easy to work with and mold to my wishes.

openSUSE does a great Plasma. I don’t mean out-of-the-box perfect for my needs. No distribution should ever target me as the core user, that would be tremendously silly. I am an edge case and I am never satisfied, I am a moving target of requirements and expectations for what I want as my personal workspace. I would be a high maintenance target for a perfect out-of-box experience.

openSUSE Corner

Snapshots 20191225, 20191227, 20191228, 20191229, 20191230

wiggle (1.1 -> 1.2) a program for applying patches that ‘patch’ cannot apply due to conflicting changes in the original. Wiggle will always apply all changes in the patch to the original. If it cannot find a way to cleanly apply a patch, it inserts it in the original in a manner similar to ‘merge’ and reports an unresolvable conflict.

bubblewrap (0.3.3 -> 0.4.0) The biggest feature in this release is the support for joining
existing user and pid namespaces. This doesn’t work in the setuid mode (at the moment). Other changes include Stores namespace info in status json, In setuid mode pid 1 is now marked dumpable also now build with musl libc.
gthumb (3.8.2 -> 3.8.3)

gnome-shell (3.34.2+0 -> 3.34.2+2): polkitAgent, Only set key focus to password entry after opening dialog. The keyboard now stops accessing deprecated actor property.
libnl3 (3.4 -> 3.5.0) * xfrmi: introduce XFRM interfaces support
xfrm: fix memory corruption (dangling pointer)
mypy (0.720 -> 0.750) More Precise Error Locations and the daemon is No Longer Experimental
python-Sphinx (2.2.2 -> 2.3.1)
python-Sphinx-test (2.2.2 -> 2.3.1)
python-jedi (0.15.1 -> 0.15.2)
python-mysqlclient
python-parso (0.5.1 -> 0.5.2)
python-pybind11 (2.4.2 -> 2.4.3)
python-typeshed (0.0.1+git.1562136779.4af283e1 -> 0.0.1+git.20191227.21a9e696)

wireshark (3.0.7 -> 3.2.0) bug fixes and updated protocol support as listed

Firefox (70.0.1 > 71.0) Improvements to Lockwise, integrated password manager, More information about Enhanced Tracking Protection in action, Native MP3 decoding on Windows, Linux, and macOS, Configuration page (about:config) reimplemented in HTML, New kiosk mode functionality, which allows maximum screen space for customer-facing displays. Numerous CVEs were addressed relating to memory.

The Tumbleweed Snapshot Reviewer:

20191225 – Stable 99
20191227 – Stable 99
20191228 – Stable 99
20191229 – Stable 99
20191230 – Stable 99

Computer History

The Computer Chronicles – Computer Music (1983)

I think we often take for granted the multimedia capabilities of computers today. It seems like someone is always harping about PulseAudio on Linux. I’d say they are likely not using the right distribution, by that I mean openSUSE, I don’t have these issues. The purpose of the section is not to tout the superiority of my favorite operating system when it comes to audio subsystem, rather, it is to talk and reflect about how great we have it today with all things audio on modern computers.

In 1983, the state of digital music was not as rich as it is today. We can enjoy a virtually endless supply of content never before available in human history. Let’s go back in time to an era when the Commodore 64 was the pinnacle in home computer audio. Where audio was entirely programmed, limited to 4 wave forms of sawtooth, triangle, pulse and noise. A multi-mode filter featuring low-pass, high-pass and band pass outputs and three volume controls of attack / decay / sustain / release (ASDR) for each audio oscillator and a few other things I barely understand. Regardless, the capabilities were limited and synthesizing voice was an incredible undertaking that took years of work long after the chip was in the wild. This was one of the first polyphonic sound chips on the consumer market that, to this day, is held in high regard and many still like the sounds this chip produces.

Example of Chip Tunes from 8-bit Versus

All this said, this was very interesting record of computer generated music that is certainly worth a listen. I find the experimentation and musical education tools used in this perod incredibly fascinating. Today, things are very different. Musical composers and artists use computers in music production and to do so otherwise would likely be considered insane. I now wonder if individuals in the 80s that pushed the art and science of computers in music were considered insane by their peers.

Scrcpy on openSUSE | Display and Control Android devices over USB

Every once in a while, I am in the position where I am tethering my computer to my phone and lazy me doesn’t like to interface with the phone when my fingers are on a real keyboard. I can’t say exactly why I am so anti-mobile at times but it’s just how it is sometimes.

I was introduced to this application called Scrcpy which I think look like “screen copy” so that is how I verbally communicate it.

Installation

To install from the openSUSE software library, I navigated to openSUSE’s software site.

https://software.opensuse.org/package/scrcpy

I chose the Experimental Repository, Hardware

Alternatively, you can install the Snap package

sudo snap install scrcp

Whatever works best for you. I have tried both on openSUSE Tumbleweed and they both work well.

Changes to the phone

The Android device you intend on using requires at least API 21 (Android 5.0) in order to utilize this feature.

Make sure you enabled adb debugging on your device. This is done by going into your Settings > System > About Phone then scroll down to the “Build Number” section and tap that until you are in “Enable Developer Settings”.

Back out of the About Phone menu and enter the { } Developer options menu.

Scroll down to the Debugging section and enable Android debugging. This will allow you access the ADB bridge interface from your computer. I do want to make it clear that at this point, it is not a good idea to just plug your device in anywhere. You had better know that USB port and trust it. Random public chargers are probably not a good idea unless you trust the custodian of it.

Optionally, you can enable the ADB over network where you can debug over Wi-Fi or USB networks. Unless you are on a trusted network, this is also not a good idea. For example, I would not recommend this on a public hotel or coffee shop Wi-Fi but home is a good bet. The neat thing about this option is that you can interface with your device and not be physically plugged into it.

Now the phone is set up and ready to have the display piped over to your desktop.

Run

Running requires you to go into the terminal as well. Plug the Android device into your openSUSE (or other) machine’s free USB port. You will be given a screen, similar to this:

I have selected to “Always allow” from my computer. Select OK and run the this in terminal:

scrcpy

And that is all there is to it. You can now interact with your phone through your computer. Interestingly, Plasma disabled compositing when I initiated the scrcpy command. It could easily be reactivated (Shift+Alt+F12) and it didn’t seem to affect performance of the window into the device.

Wireless Connection

Scrcpy has the capacity to do adb over TCP/IP. This can be activated by going into Settings > System > Developer Options scroll down to “Debugging” and Enable ADB over Network.

You will be given a warning which you have seen previously and will be given an IP with a port number. In this case, I the IP and Port numbers are: 172.20.2.250:5555

Next, ensure your device is not plugged into your computer, just to prove to yourself it is working over the magical Wi-Fi. Next, enable TCP/IP on your computer:

adb tcpip 5555

Connect to your device

adb connect DEVICE_IP:5555

Where DEVICE_IP is the IP Address of the mobile device. Then run just as previously run:

scrcpy

It is also possible to adjust your bit-rate in the definition if you see fit. An example of usage is here.

scrcpy --bit-rate 2M --max-size 800

This is just scratching the surface of what you can do with Scrcpy. It is pretty useful and an alternative, to input and interact with your phone. Since I am not a fan of interacting directly with the phone. There are numerous other features you can read about here from the project GitHub. This is just enough to get you started.

Final Thoughts

If nothing else, this is a fun application to play with, even for the novelty factor. These are only just a few highlights of this really cool application. What are the use cases for this? I can see many, really. I am not a huge fan of the phone interface. I prefer typing on a real keyboard. I have a tendency to leave my phone in another room on a charger. With Scrcpy, I am able to check mobile apps only from my computer as opposed to directly handling the phone. Another use case would be to record the screen for the purpose of a pre-recorded demonstration or in a classroom environment, demonstrate the function of an application projected from the computer hooked into a projector. The limitations of this application is bound by the limitations of your own imagination.

References

Scrcpy Project on GitHub
Scrcpy from software.opensuse.org
Scrcpy from Snap Store

Linux in the Kitchen | Life Enhancement Blathering

There are so many ways Linux can be used. Most commonly, we see it used to run the Internet in servers and cloud thingies and such. If you are a desktop user, you might use it for office tasks in your home or work, maybe you are a content creator and you do video or audio editing, maybe you game or do 3D design, such as in parametric modeling, such as using Fusion 360 on Linux. There is another place that Linux fits quite nicely, that place is your Kitchen. At this stage, I would, in no way, give up Linux in the kitchen or trade it for a poor substitute like ChromeOS (which I have before). General Purpose Linux, the real thing, belongs in the kitchen as much as a coffee pot microwave oven or a toaster. I am not talking shoe-horning it into the life-center of your home, it is a perfect fit.

It is almost an automatic fit with using Linux for “traditional productivity” but it is not often thought about in the kitchen. Linux is something that makes domestic life a bit easier. Here are a couple of ways Linux just makes my life a bit easier and makes you look like a renaissance man or woman. I personally don’t have natural talent in the kitchen but out of necessity, I have to perform these functions better, more efficiently with improvements in my measure of performance as well as my measure of effect. As in, my kids enjoy what I make.

I am going to break down the applications that I use in the Kitchen to help organize my life just a little bit better. I will admit, that I am a work in progress on this. I am continually tweaking this but I am at a point now where I feel like it is a satisfactory solution and not just a novelty. I am running this on openSUSE Tumbleweed but I can’t see why you couldn’t use any other distribution… like openSUSE Leap.

The Hardware

This was an important choice for me. To forgo the droning details of the unimpressive hardware specifications, you can view that here. In short, my minimum requirements was at least something that would take a forth generation (Socket LGA1150) CPU. What I have in there now is not great but it does the job. I wanted a touch screen system, it had to be an all-in-one and it had to have a VESA mount. Since my kitchen is rather small, it was absolutely vital to not lose any counter space.

This is one of those acquisitions that has been worth far more in time savings and convenience than what it has cost me. I also want to add that this particular system has rather underwhelming set of built in speakers. Don’t get me wrong, it’s nice that they are but I have it connected via Bluetooth to a Coolvox that is part of my refrigerator. Those speakers are pretty great.

Time Management

Use Kontact module Korganizer to perform meal planning. There are many other calendar options out there so feel free to swap this out for something that is to your liking. Since I am a heavy Plasma user, I haven’t actually installed explicitly installed it as it has always been done for me.

sudo zypper install korganizer

Truthfully, if you aren’t using Plasma or LXQt, I don’t know how much I would recommend this particular application.

Evolution is an alternative that my interest you.

sudo zypper install evolution

or for Debian based distributions

sudo apt install evolution

With whatever calendaring system you use, KOrganizer or Evolution, the idea here is to plan out your days, weeks, or even month if you have that sort of inclination. I have a lot of moving parts going on in my life so it is imperative that I keep my kids’ school activities, appointments and such readily available. I also use this for meal planning and I am making a point this year specify blocks of time for those activities that fall through the cracks, like reading to my kids or even “game time” so that we are not always just focused on work.

There is almost a sense of excitement knowing that family game time is scheduled and the kids appreciate seeing this too. It is another way to keep them all onboard.

Recipe Management

Gnome Recipes for storing my various recipes. There are a few issues with the is application, but it is minor and the mitigation I use is to not use the designated ingredients listing as it will change the units to undesirable quantities.

sudo zypper install gnome-recipes

or for Debian based distributions

sudo apt install gnome-recipes

What would be great is if there was an easier way to exchange your recipes with an external repository, of some kind. There is a way to import and export recipes but I haven’t used that function. I synchronize my data around my network.

File Synchronization

Syncthing-GTK is what i use to synchronize my recipes database between the machines in my house so when I find a recipe I like, I can enter it on another machine that I may take to the dining room, my couch or my SuperCubicle

sudo zypper install syncthing-gtk

or…

sudo apt install syncthing-gtk

I synchronize the data between multiple machines and since it is a peer-to-peer system, it has high fault tolerance, as in, I don’t have a central point of failure. The kitchen computer, my main laptop and my main workstation/server share a large section of my data. The nice feature is, I can work on something and save it on my kitchen and it will very quickly be available on my other computes so I have a very seamless kind of integration. Whether I am knocking out a LibreOffice document or updating a recipe, I will have it ready for me to use at whatever workstation I use in my house.

Lists

For list, grocery lists, quick notes, I use SimpleNote. It is just as the name states, a simple note taking application I had previously used the Google Keep but Chrome keeps using up more and more resources so I have backed off from Google services. There are many other note taking applications but SimpleNote is what I use most often. I install the Snap package.

sudo snap install simplenote

There may be other sources for SimpleNote, but this is what I can count on to work in openSUSE. The last time I checked, there wasn’t a Flatpak and I am more than happy to use any packaging system in openSUSE, because they all work well. Other distribution experiences may vary.

What makes SimpleNotes special is the simplicity of it. It is just a note taking application that works simply and well. I have SimpleNote on my mobile device as well so when I go to the store, I have my list there and ready to go. Bonus, it has a dark mode too.

I use the checklist function so that I can check off the items from my list as I go. If I notice a deficiency or a pending deficiency, I can very quickly make a not of it on any computer, most often the kitchen computer and it is ready for me later.

Web browsing

Since the system I am using is an all in one touch screen, I like to use a touch friendly browser and currently, I am using the Falkon web browser.

sudo zypper install falkon

Since I don’t have all the recipes in my kitchen computer, I will often find new recipes and browse through them which is why it is important to have the easy touch to scroll that Falkon provides. I prefer Firefox in nearly every other application and I won’t use Chrome but for your Kitchen setup, you use what you want to use.

Final Thoughts

I have no metrics to tell you how much more efficient this set up is over using a more normal method, like having cook books and the like taking up cupboard space but what I can tell you is that there is a lot more satisfaction and enjoyment when I am in the kitchen. Not only can I be more productive but I am also more easily entertained as well.

References

Dell Inspiron 20 3048 All-in-One Details
Gnome-Recipes
Syncthing-GTK

Quick Tiling in KDE Plasma on openSUSE

In my short time of using a tiling window manager, I very quickly became aware of the benefits of quick tiling features on the desktop. Being able to very quickly split your screen and be able to see information side-by-side, like writing a post and having my collection of pictures beside it is incredibly useful and a productivity enhancer. There were some things about a tiling desktop that I didn’t like as well. It was far too ridged for my liking so I wanted to explore adding some tiling features into Plasma but with not losing the benefits of floating windows as well.

Here are the changes I made to make my “Desktop Life” a bit more efficient and to manipulate things just a bit more quickly. The way I see it, the desktop you work in should mold itself to how you prefer to work, not the other way around. Everyone thinks differently and works differently. I don’t believe that any one particular work-flow is better than the other. I do however believe that the workflow I choose for me is the best one for me. I also believe that I should be open to making adjustments as I see fit.

This is the reason that I consider Plasma to be the best desktop available as I can make it work brilliantly for me and I am free to change every aspect of it. Although I believe these features have been in Plasma for several releases, I am currently using KDE Plasma 5.17.4 on openSUSE Tumbleweed. I have not tested this out on any other distribution.

Setting Hotkeys

In order to mimic the tiling features of i3, and I do mean mimic, you have to set the hotkeys. This is done by going into the Plasma SystemSettings > Shortcuts and selecting the Kwin Component.

Quick Tiling of Windows around the screen

Eight Locations for quick tiling around the screen. I mostly use Left and Right but I also use the quadrants of the screen as well

Bottom > Meta+Shift+Down
Bottom Left > Meta+Ctrl+Shift+PageUp
Bottom Right > Meta+Ctrl+Shift+PageDown
Left > Meta+Shift+Left
Right > Meta+Shift+Right
Top > Meta+Shift+Up
Top Left > Meta+Shift+PageUp
Top Right > Meta+Shift+PageDown

Switch Window Focus

When you have the windows tiled side-by-side or top-to-bottom and such, you may want to switch windows rapidly. Keep in mind, if you have a bunch of floating windows going on the same desktop, they can insert themselves on you in such a way that you may not expect.

Switch to Window Above > Meta+Alt+Up
Switch to Window Below > Meta+Alt+Down
Switch to Window to the Left > Meta+Alt+Left
Switch to Window to the Right > Meta+Alt+Right

Window to Desktop

This is very handy when you are working in an application and you want to push it to another desktop. Where I often do this is, I will open another browser or terminal window and I may have it tiled and I decide that I want to move it to a specific desktop for a different group of tasks. While I am working in that window, I hit the key combination and instantly, that window has moved to a different virtual desktop.

Window to Desktop 1 > Ctrl+Shift+F1
Window to Desktop 2 > Ctrl+Shift+F2
Window to Desktop 3 > Ctrl+Shift+F3
Window to Desktop 4 > Ctrl+Shift+F4

Additionally, I have set the Switching to those virtual desktop as follows:

Switch to Desktop 1 > Ctrl+F1
Switch to Desktop 2 > Ctrl+F2
Switch to Desktop 3 > Ctrl+F3
Switch to Desktop 4 > Ctrl+F4

I generally only run four desktops. I once ran more but found I only used the first 4. You can obviously tweak this to your particular case.

Present Windows

This is very handy and I have also duplicated this with a screen edge mouse trigger as well.

Present Windows (All Desktops) > Ctrl+F10
Present Windows (Current Desktop) > Ctrl+F9
Present Windows (Window Class) > Ctrl+F7

To add the screen edge trigger, go to SystemSettings > Workspace Behavior > Screen Edges

For me, I have set the Top Left corner for Present Windows (All Desktops), Top Right for Present Windows (Window Class) or in this case it is Current Application and Lower Right for Present Windows (Current Desktop).

Testing and Using

Here is where the “rubber meets the road” as it were. If you cannot remember the shortcuts or they don’t make sense to you, then it isn’t going to work for you. The computer I set these key sequences is on a laptop without a number pad

Exporting the Shortcuts

Assuming you have more than one computer, you may want to export the sequences rather than do them all over again. To do so, within the Global Shortcuts utility, go to the File button in the lower right corner of the window and select Export Scheme, the components you want to export, select OK and save the file to your location. There isn’t an automatic extension on the file so I just appended “*.scheme” so that I would know what it is.

Quick video

Because all the kids are doing it these days and I want to reclaim my youth, I created a quick video as well.

Final Thoughts

Overall, I am quite pleased with these functions. They do make working on my system a bit more enjoyable and efficient. Does it save me hours in the day? No, maybe only a few minutes but it feels real good to quickly tile windows, move them to alternate desktops and switch to those desktops. There are many more functions available to utilize but don’t overwhelm yourself in memorizing all of these little key combinations. Just do what makes sense for you and play around with it.

There are a few functions or benefits that I don’t get in the tiling manager, at least it is not as obvious to me. The rapid shifting of sizes of two tiles that are side by side. Right now, you are kind of locked into 50% or 25% of the screen. I am not aware, currently, how to rapidly make it a 60/40 split or similar. I am sure that there is a plug-in or extension to add such a feature but I don’t want to lose my floating windows or add any possible irritation in using my desktop either. As it stands right now, I have been able to add the features that I want and I get to keep what I like. I can have what I believe to be the best of both worlds.

References

Regolith Linux Review
YouTube Video of adding tiling to KDE Plasma

Fusion 360 on openSUSE Linux | Review

CAD is one of the things I really enjoy doing. I am most adept at using PTC Creo for my employer. I am able to easily “think” and design ideas as easily in that software as I am able to draw it on a piece of paper.

I’m making it a point to get that way with Fusion 360. I don’t think it is as intuitive but if you were to ask anybody that hasn’t “grown up” with Pro-Engineer (Creo’s historical name) they would likely say otherwise

Installation

The installation of Fusion 360 is not as straight forward as it would be on it’s native Windows environment. It’s not bad but does require a little effort on your part. Though, I would say no more effort than I have had with other CAD packages on Windows.

Your first step is to install Lutris. For openSUSE

Terminal

sudo zypper install lutris

Optionally, you can click to direct install here.

The next step is to go to the Lutris sight and initiate the installation process from there.

https://lutris.net/games/autodesk-fusion-360/

Select the Install button. That will launch Lutris and begin the installation process.

This process will take a while and if you are so inclined, you can watch the process scroll by.

Once it is complete, you are given the option to add a desktop short cut and menu entry. That is all there is to the installation process. Now you are ready to run Fusion 360, but not yet ready to get to designing.

First Run

You are going to have to run Fusion 360 twice. This first time, Select to launch the application. The application splash screen will happily greet you.

You will then be required to sign into Fusion 360. Here is the one aspect of Fusion 360 that I am not keen on but I will overlook, this application does need to phone home in order to operate. You can function offline and it will cache locally so you are not explicitly required to be online every moment that you are working in it.

You are required to create an account and in doing so, you will have to identify yourself as an individual for free, non-commercial use. My understanding is that you will have annually affirm that you are using this for hobby, non-commercial use.

Once it is done loading up, you are greeted with this screen and this also tells you that Fusion 360 is not able to properly access the graphics drivers. That can easily be fixed by going into your preferences and change the graphics driver to DirectX 9

Choose apply but select “Not Now” on closing the application. It is known for having the habit of not actually closing out and just hanging. Close Fusion 360 then ensure all Wine processes are closed through the Lutris interface.

Another change you need to make is in Lutris. Right-Click and select “Configure” on the “Autodesk Fusion 360” entry. Select the “Runner options” Tab and Disable DVK, D9VK and Esync. I do not run it in the Windowed (Virtual Desktop) as some of the menus don’t appear.

Now you are ready to do some designing.

Second Run

This time you run Fusion 360, you are ready to get to designing. That is, assuming you see a grid pattern and the rotation cube in the corner.

If you don’t have this grid pattern and see the Autodesk Fusion 360 logo, this means something is not configured correctly, check again to make sure that you are on DirectX 9 and your Lutris Runner Configuration is correct. It could also be, something else has changed and this is no longer the correct answer too. After all, Autodesk does not support this what so ever.

Designing First Part

This is not a tutorial in part design. There are plenty of those out there. Without any training on using this software, I went to work and started designing. My choice for my first foray into part design was this sewing machine pulley that a friend asked me help him with.

I took the time to measure out the critical dimensions of this part, including counting the teeth. I had to determine the best course of action in how to build this part. I chose to make a revolved feature as my base feature. Since this will be 3D printed, I don’t need to the more complex rib features used for injection molding.

Next major feature is creating the notches for the teeth around the part. This is done by creating one notch and patterning it around the outer surface.

Next was to create the features through the center axis of the part that, presumably, are other critical features that interface with the sewing machine.

The last few features are also presumed critical features based on the my understanding for why they would exist. A flat on the sides of a cylinder are often used to prevent the part from spinning and the notch across the top may be to key the part as well.

The last set of features are the rounds and chamfers. These features should always be at the end of the feature tree in order to have more robustly designed parts.

Rounds and chamfers are important to a part as it adds strength and disburses the stress between the shaft and wheel features.

This process, having never touched this software before only took me about 45 minutes to do. I just had to understand how Fusion 360 expects you to use the design features. Ultimately, it was not difficult to use at all and making changes to parent features didn’t break the child features or cause it to become disjointed. I truly think this was fantastic.

What I Like

Fusion 360 is a great parametric modeler. The feature tools are very comprehensive and they help you along quite nicely with designing the part. The pattern feature is very nicely done and making edits to any feature in the tree is very intuitive. It all just seems to make sense.

I have also used the assembly feature and it works quite well. It doesn’t work exactly how I like to think it should work but I really can’t complain at all. This is the nicest I’ve seen work on Linux in recent times.

The file management system gives you a built in Product Lifecycle Management tool. You can put designs in folders and share them with others through the Autodesk services. I see a lot of advantages when it comes to designing in teams.

Exporting STEP or STL files is a trivial process and does a good job. I have sent the exports of these parts to my friend that needed to replace this sewing machine wheel for 3D printing.

What I Don’t Like

This is not directly supported in Linux. The reality is, using Lutris is kind of a hack and it does make for some less than exceptional user interface idiosyncrasies. There are occasionally some instances when the menus don’t refresh immediately and icons disappear. It’s not a huge issue, and running Creo on Windows has far worse issues after it runs for some time so putting it in perspective of my CAD experiences, this is a mild issue.

This application is very cloud dependent. In general, I do not prefer any applications that are highly dependent on “the cloud”. However, the design and analysis functions of Fusion 360 is so spectacular, that I can make an exception. The processing is all on the client side and you can work offline so designing something on the couch of an an internet-less home is absolutely possible.

The interface is too light. I prefer a dark theme interface to reduce eye stress. I think, perhaps, my excitement in using a quality, full-featured CAD package on Linux seems to have an almost euphoric effect on me and I am just not going to complain at all.

Final Thoughts

I have really enjoyed using Fusion 360 on openSUSE Tumbleweed. It works very well and if I were to give this a rating, I would give it an overall score of 8 out of 10 stars… or 4 out of 5… I don’t have a rating system. My main complaint, really, is the very white interface. I can look past all the other issues as they don’t inhibit my productivity with the product.

This has me so excited, I am going to be able to design and publish a lot of my designs to share with the masses. I don’t, at this time, need a commercial license for Fusion 360. A subscription to Fusion 360 is a bit pricey but not too bad, as compared to other packages out there. As of today, (January 2020) you can get a one year subscription for $495. As long as I just use this for hobbying purposes, I can continue to use this for free and there is a bit of a concern that Autodesk could pull the rug out from under me. That is the risk in closed source software, especially that which requires a cloud service to operate.

For now, this is my choice in doing any kind of personal mechanical design work. It has freed me up from using my employers hardware and software. Not that I have a problem using it from time to time for a personal project but more so that I don’t HAVE to use a Windows machine to do the work I want to do. I am free to work in an environment with which I am most comfortable.

I really hope that Autodesk can see benefit and value in supporting Linux. Since this application already works quite well in Linux without any of their efforts, maybe they will see that, do some tweaking and improvements to make it work a little better. One can hope.

References

Fusion 360 Overview on Autodesk.com
Lutris from software.opensuse.org
Fusion 360 Installer on Lutris.net

Noodlings | Christmastime, xLights, Exploring Media Servers and Computer History

To squeeze one more blathering in before the end of the year, here are a few things I am noodling around currently.

The 10th Noodling arriving, not because anyone asked for it…

Christmastime Activities

Post Christmas Day shopping yielded me a really nice find, specifically something pretty fantastic from Lowe’s that allows me to fix my AC light strands. A Holiday Living Light Tester. The directions could have been a bit more clear… maybe worth a video… but I was able to recover three of my LED bush nets. Since they retail for about $10 each, that has made the purchase worth it already. This device is supposed to work with LED as well as incandescent lights. I’ve only tested it on LED thus far and it works well.

This is a device that I wish I had discovered long ago.

Christmas Lights Sequence to Music with xLights

Very comprehensive software that allows you to look at the wave forms, change playback speed and make it easier to adjust the actions to occur at the right time. I’ve only began to scratch the surface of the power and capability of this and the reality is, I don’t know what I don’t know on using this software. My set up is really quite simple, therefor I can’t take full advantage of its capabilities.

Some of my favorite effects to date are the butterfly, marquee, fireworks, life and fan. They currently give me the visual excitement for which I am looking to put into the sequences.

There are many more effects to discover but due to the limited nature of my display as it currently is, I can’t do some of the more fancy enhanced items, yet.

I recorded a two videos an posted them to YouTube, they are nothing terribly special, but I am quite pleased with how it turned out.

Funny aside, I went to record the second sequence and there was a car parked in front of my house, waiting to watch it.

I did decide to employ an FM transmitter so that people can listen to the music in their vehicle but I don’t actually have a sign to inform that fact.

More on the Christmastime Lights here

Exploring Media Servers

PLEX

The old boy on the block that is well known. I haven’t used or tried it yet but this is still the one I hear the most about. Because it is the popular one, I tend to go for other thingsā€¦ for reasons unknown

Jellyfin

This will be the next version I try. I have noticed that they do have a Docker image so I am going to take this as an opportunity to learn some things about docker while I’m at it. The key feature of this one is it is completely open source and that has a great appeal to me.

Emby

This is the media server with which I started this journey and am currently testing. I planned to test the others already but I have been engaged in other matters. It has decent name recognition but did go closed source after they gained some momentum. I have been using this for about a few weeks and the features I like are that it works much like you would expect in Netflix. If you activate notifications, you’ll be notified about a “new release” when you put something in your repository of media. I thought that was kind of cute. Setting it up is pretty trivial and I will be doing a write-up on this as well.

I want to do reviews of each of these media servers with my openSUSE Tumbleweed based workstation / server and see how it goes. Really, there is enough horsepower, I can have all three running and see how each of them, play out, as it were.

Restoring my Nexus 6P To Working Order

As a kind of Christmas gift to myself, I spent the 5th day of Christmas disassembling and installing a new battery into this phone. I shelved the project in August but didn’t put it out of sight. Seeing it almost daily, I’ve had it gnawing on me to get it done and I finally did it.

I bought a battery replacement kit on eBay for this phone that had most of the tools I needed. I had no interest in doing a tear down video as there are plenty of those on YouTube. YouTube Video demonstrating battery replacement of the Nexus 6P. Although the repair of the device was rather annoying and tedious, you know, just difficult enough to scare off smarter people than me, the part that took me the longest was updating the phone and installing LineageOS with everything working.

There was only one issue, really, working cell service. The problem ended up being that the was a security lock out that prevented the SIM from being accessed and disabling it is what ended up fixing it.

More on the repair and installation of LineageOS here

BDLL Followup

As we wrapped up the year in BDLL challenges, our task for this week was to make some predictions about the year 2020. They didn’t have to be Linux related so, exactly but since Linux and tech is the focus of the show, it would only make sense to keep it as such.

What I am wishing for, in 2020, is commercial grade CAD / CAM, manufacturing technology software to come to Linux, not necessarily for home use but for use in business.

Specifically, what I would like to see is Fusion 360 by Autodesk supported in some level on Linux. It already runs well in Linux through Lutris but having actual support for it would be fantastic. I would also like to see PTC’s Creo running on Linux. PTC once supported Linux with earlier offerings of their mechanical design package but no longer do so today. It would be great to see.

BDLL Community Predictions for 2020

openSUSE Corner

Tumbleweed Snapshots 20191210, 20191211, 20191213, 20191214, 20191216, 20191221

Aside from bug fixes, removing dependencies that are not needed, here are some of the highlights of the last six snapshots

Rammina, an rdp client to version 1.3.7 which included improvements to translations, better authentication MessagePanel API, Printer sharing improvements, and various bug fixes

NetworkManger, updated to 1.8.25+20. Applet scales icons for HiDPI displays.

Bluez, the bluetooth stack, received a version update to 5.52. Fixed AVDTP session disconnect timeout handling, disabled one more segfaulting patch, and fixed numerous issues.

KDE Plasma updated to 5.17.4. Discover Fwupd will no longer whine when there is unsupported hardware. Improvements to KWaylend integration, and numerous other fixes and improvements.

GNOME Desktop was updated to 3.34.2 which has undoubtedly further improved the experience for it’s users.

GTK3 updated to 3.24.13+0

Gstreamer Plugins, updated to 1.16.2. Fixed numerous issues in the v4L2video codecs

Wireshark updated to 3.0.7 which addressed CVE-2019-19553 CMS dissector crash

Akonadi has been updated to 19.12.0 There weren’t any features added but improvements and bug fixes were implemented.

Wireguard updated to version 0.0.20191219 that added support for nft and prefer it, and fixed other various issues.

YaST updated to 4.2.47, bug fixes and refinements to how it operates

php7 updated to 7.4.0 where systemd restrictions for FPM were relaxed and other various improvements

Tumbleweed Snapshot Reviewer gives 20191210 a stable 99; 20191211 a stable 99; 20191213 a stable 91, 20191214 a moderate 90; 20191216 a stable 96 and 20191221 a stable 98.

Computer History

This is a new segment I am going to try out for a few episodes to see how it fits. Since I am vintage tech enthusiast, not an expert, I like looking back and seeing the interesting parallels between the beginning of the home computer or micro-computer revolution compared to now.

The Computer Chronicles is a program that spanned for 20 seasons, starting in 1983. The original hosts, Stewart Cheifet and Gary Kildall’s first episode focused on Mainframes to Minis to Micro computers and it was such a fascinating discussion. Stewart Chiefet asks Gary, right of the bat, if he thinks whether or not we are at the end of the line of the evaluation of computers hardware or if there major new phases of this evolutionary process.

Gary responds with “no” and saying that they are getting smaller, faster and less expensive. He speculated that they will get so small you will lose them like your keys.

Couldn’t help but think if Gary was still alive today, how many times would he have lost his cell phone today and would he think back to those words. I know that I lost my cell phone in my house, the one I just fixed three times.

Watching the demonstration of the TX-0, the first transistor powered computer give a demonstration was quite fascinating.

The Super computer from the 1960s filled entire rooms while they experimented with parallel processing In the 1970s, computers miniaturized to Something resembling a single server rack and were called minis and were considered portable because they were on wheels. The late 70s and into the 80s, micro-computers came into prominence and although substantially cheaper the Mainframes, Minis and Micros, still far more expensive than what can be picked up today.

I found this particular episode very interesting due to the excitement of how small computers were getting but by today’s standards, really quite large. The hunger for speed was just as apparent in 1983 as it is today in 2019… almost 2020.

The micro-computer they demonstrate here is a Hewlett Packard HP-150 which was an attempt at being user friendly with a touch screen interface. Nothing like the touch screens of today as it uses infra red transmitters. It is noteworthy that in the demonstration of the machine by Cyril Yansouni, the General Manger of the PC Group at HP, it was stated that the most intuitive tool to interact with the computer is your finger. That holds true today, looking at how people interact with tablets and mobile devices. The interaction seemed rather clunky by today’s standards but I think it is pretty cool to see the innovation of the time. Mr. Yannsouni also stated that he doesn’t think that this alone is the most ideal interface. He stated that he thinks that there will be some combination of touch, keyboard, mouse and even voice that will be something more idea. I think he was correct on this. This machine, the HP-150 has a kind of goofy look about it but at the same time, pretty cool as well. I’m really glad it was demonstrated.

The direction that was being discussed here was the future of computer technology. Herb Lechner stated that the future will be networking computers together through local area networks so data can be shared. Gary Kildall and Cyril Yansouni speculated, very excitedly, that the data communication will be over the phone system as the future of networking because local networks are too expensive and difficult to set up. I wonder what they would say today about this.

What I really learned from this particular episode is that, one, our desire for smaller, faster, better computers hasn’t changed. There was experimentation on form and function of computers with what the best of technology had to offer for the time and there was lots of fragmentation, far more than anything we have today. I also learned that most of the experts tend to be wrong about the future of technology, that hasn’t changed today either.

The Computer Chronicles, Mainframes to Minis to Micros (1983)

Final Thoughts

2020 is on the horizon, and to quote my favorite fictional character of all time, Doc Brown, “the future is whatever you make it, so make it a good one.” Make 2020 the best year you can, be kind to one another and should things not go as you planned, don’t hold any resentment against yourself or those around you.

Restoring my Nexus 6P To Working Order

As a kind of Christmas gift to myself, I spent the 5th day of Christmas disassembling and installing a new battery into this “shelved” phone of mine. It is something I have wanted to do since the battery started fading and I finally got to it.

I bought a battery replacement kit on eBay for this phone that had most of the tools I needed. I am not going to provide you a tear down video, there are plenty of those on YouTube and if you are interested in that, click here. This will tell you everything you need to know and possibly more. I am going to focus more on the ares of difficulty and the installation of LineageOS.

Pixel was an okay phone but was a bit too small for my hand, I didn’t like how it fit in my phone holder in my truck, the battery didn’t end up being much better on that phone after about 6 months of use and I couldn’t put LineageOS on it because it is locked down.

Repair Supplies

The video gives you a list of tools to use to do the repair. I didn’t have everything, exactly as they suggested. I grabbed my whole kit of tools available and this is what I ended up using:

Plastic triangle opening tool of two different thicknesses

Tweezers. I used whatever tweezers I had in my tool box which ultimately came from the bathroom medicine cabinet. I would recommend a better set but something is better than nothing

Box cutter. I didn’t have a precision knife set as per recommended in this video and I would highly recommend something like that and I won’t do another repair without it. The box cutter worked but that is a little like using a sledge hammer when all you need is a 16 oz claw hammer. Sure, it gets the job done but makes a bit of a mess of your project surface.

Paper clip in place of a sim card ejection tool.

Heat gun. Mine was probably overkill but it worked fine.

Small Cross-recessed (Phillips) screw driver. The battery kit came with screw drivers but I prefer my nicer, more professional set. Even I can show up to a party in the right outfit from time to time…

The video recommends playing cards but those were chewed up pretty quick on me so I had to use some more ridged cardboard to slide between the battery and the body of the phone. Your mileage may vary. In my case, this “Hello Fresh” junk mail bit worked better than a playing card. Basically, anything ridged that is not so stiff as to crease the battery and cause it to vent with flame.

I used a spudger but not a fancy black nylon one, this one was able to pry and get between the frame and the screen well enough.

Double sided sticky tape to put the lower back panel back on

I also used a dental pick to help with the picking at the device. I recommend something like this for so many of your smaller projects, especially if you have giant sausage fingers.

1 hour of time to devote to the project

The two areas of extra care for this project is removing the glass around the camera and the battery.

The glass needed to be loosened up with the heat gun, gently, as to not over heat the device. Doing so can cause irreparable damage to the device. Once I got this portion heated up enough, the glue started to let go of the glass plate enough to allow me to get that knife in there. This would have been easier with smaller, more precise tools. Thankfully I didn’t break it.

Once the glass and the plastic cover are removed, that will expose the 6 screws holding the device together.

The spudging tool will be required to carefully pull the body of the phone from the screen assembly. I was “fortunate” that this phone has a bit of an area of buckling around the volume button and made it a bit easier to get the case away from the screen assembly.

The phone comes apart and exposes all the little secrets of its design. It also exposed the fact that this thing is incredibly dirty and needed a good cleaning with some isopropyl alcohol.

The other area of concern is the battery. It is imperative you take extra care as to not bend the lithium-polymer battery too much or this will “vent with flame” and it can be a rather spectacular event, one that I was not interested in having. There is a small amount of clearance that will allow you to start prying away at this battery. I carefully used the heat gun to loosen the glue here as well. Once I got the battery up a little, I used several card like things to pry this up.

The rest of the instruction per the video was spot on but the emphasis on the glass and the battery was a bit understated, from my view.

Reassembly of the device was pretty straight forward. It assembles pretty easily. Install the battery, I reused the adhesive pads from the previous battery. Then carefully install the cables, make sure they are fitted well. The glass still had enough adhesive on it that it will keep the glass in place. The bottom plastic bit needed some double-sided tape to keep it in place.

Since this phone wasn’t exactly a “looker” when I started, I am not concerned about how it looks when complete. It is also in a case that will help to hold things in place.

Upgrading the Operating System

This was actually a lot more time consuming than fixing the battery, I am sorry to say. When I started the phone I was greeted with this error about a vendor mismatch.

I have seen this error before so it wasn’t a big deal in fixing this. I downloaded the Google image and flashed the vendor image as per the instructions I found here. In short, here is the process I went through:

  • Downloaded the nightly ROM and the Gapps (mini Gapps) and put them on your phone
  • Download the Google Angler image
  • Wiped device (do not wipe the internal storage)
  • Flashed the three image files (using fastboot commands)
  • fastboot flash bootloader bootloader-angler-angler-*.img
  • fastboot reboot bootloader
  • fastboot flash radio radio-angler-angler-03.78.img
  • fastboot reboot bootloader
  • Flash the Lineage ROM and the mini Gapps
  • Wipe cache, reboot

I admit these instructions are not as verbose as I normally give. If you have any issues, please leave a comment or email me and I will take the time to make it more verbose.

After this process, the phone would not recognize SIM for cell service. I tried flashing the radio and vendor image and still, nothing. I used this little trick from here which also didn’t help, it only told me that it didn’t know the IEMI.

That trick is, on the dial pad, Type in *#*#4636#*#*
It exposes some very interesting bits of information about your phone.

I reinstalled using these instructions several times. Service mode didn’t provide me any solutions and I feared that I somehow erased the very definition of the phones cell radio identification.

As a kind of last ditch effort, I installed the stock Android image and the cell phone signal miraculously worked again. Installing Lineage OS once again left me with no access to the radio. After some more web crawling, the solution sort of come from this Reddit post that said the issue has something to do with the system lock not releasing the cellular radio to the system.

Sure enough, after disabling all the security features, and rebooting the cell service works once again. The specific issue is with this “Secure start-up” where it requires a bit before starting the system. There is some kind of bug in this that is causing issues. Where exactly, I have no idea.

In order to implement this solution, to disable the “Secure start-up” feature and prevent the SIM from being locked out. Go to, Settings > Security & Privacy > Screen lock. I prefer a pin lock screen and when you do enter your desired pin, you are asked for your “Secure start-up” preference. Say “No”, rebooting the device and the cell service will work normally.

I have installed all the important applications and I am back to full mobile capacity… which… is a pretty short list, really.

Final Thoughts

Phones today are, frankly, terribly designed. The process to replace the battery is unnecessarily tedious. At this point, I would consider any phone without a user accessible battery a terrible design and I will not purchase another phone that locks away a battery. That signals a design with planned obsolescence. All that does is encourage greater levels of e-waste. I have great hope in the up and coming PinePhone that may not have the performance capabilities of a modern “flag-ship” phone but no matter how much it may lack in processing power, storage, or RAM, it does have a replaceable battery. That means it won’t be a turd of a design that you get from the likes of Apple, Samsung or Huawei.

LineageOS is now a must to have a good Android experience. I tried to go several months on Google-locked Android and frankly, that is not a good experience. The lock down of applications on the phone is terrible. I should be able to remove whatever applications I want. I have reaffirmed that I will not purchase another locked mobile device, newer does not mean better and stock Android is vastly inferior to Lineage OS Android. It’s not even a fair comparison on the significant user improvements the Lineage team puts into Android.

Ultimately, I look forward to the PinePhone. To have an unlocked, user serviceable device that may be a bit less capable on raw performance is a welcome upgrade to just about any mobile phone out there. Give me a headphone jack and access to my battery! I am now done with these mobile nightmare devices.

References

Nexus 6P Repair Video
Lineage OS installation Guide
Reddit Post on SIM not detected
PinePhone from Pine64
Factory Install Google Android on Nexus 6P
Vendor Mismatch Fix for LineageOS on Reddit

Another Christmastime Blathering | Linux Powered Lighting

Christmastime is a time of hope and joy, despite the cold and darkness that comes with it. It is like it stands in defiance against the darkness, warms people and brings out the best, or at least, has the potential to do so.

Link to YouTube video of light show.
Link to Second YouTube video of light show

I had a life event three years ago where I went through the darkest time in my life. It was the most horrible event of my life that I would wish upon no one. That awfulness combined with the lack of light and the blowing bitter-cold in the winter months in Southwestern Michigan was loudly overwhelming. In such situations, you have two options, give up and die or defy the oppressive darkness and stand against it. Since I am responsible for three kids, I was not about to just roll over and give up. The only answer was to not permit all that is negative swallow me up and make a stand against it. I had to do something and that something was Christmas lights; to drive the darkness from my house and from my soul.

It started out with just the run-of-the-mill lights you would get at any store. Strings or nets of lights in varying lengths. The house looked pretty decent. I only did a bit of the front of the house, hanging them off of the gutters and wrapping the columns and so fort. It was enough, essentially, to stave off the dark from the front of the house. I was able to turn on and off the lights through a remote system that I had used years prior but this was the first year I put some real effort into it.

It was in 2017 that I stepped up my game a bit. I purchased a photocell enabled remote system that would automatically shut down in the morning. I put lights completely around the roof line and on the dormer. This was officially my first “Griswold like” effort where my house was noticeably brighter than anyone else on the the street. This was the first time I wrapped my trees and made a walkway of lights or put lights on my bushes. I also had the lights wrap around the house entirely because I wanted to see light outside of any window.

I also decided to keep those lights up well past the Christmastime. I had to continue to drive the darkness back and thrust joy upon myself.

My next year, I added more lights, changed up the light wrap on the lamp to multicolored and a blindingly bright spiral Christmas tree. Another enhancement was made to my back gate to make entering the home an even greater experience. One that would welcome me and give me a great smile. Having the light truly made coming home late or leaving early a welcoming and warm experience, even when it was ridiculously cold and unpleasant. It helped to take the sting out of life’s unfortunate dealings quite nicely.

It was this year that a coworker friend of mine introduced these “Pixel Lights” to me and showed me some of his creations using these lights and what he did with his house. I was impressed, very, very impressed and this particular sequence was, and still is my favorite.

I knew that I must do something similar but my largest concern was, I didn’t want to toss out my current investment in LED lights that I put into my house. Many discussions of discovery later and I had a plan which I initiated this past September for my own home. I now had a plan for what I was going to do different for my home. I had a very limited idea of how to execute it but I knew what I needed and obtained all the various parts and how I was going to utilize much of this throughout the year, not just for Christmas. I will have more in-depth post on this later but I was able to build.

Bit by bit, the pieces arrived and I started to build my light system. This wasn’t going to be just a dumb box you flip a switch, but rather a Linux powered system that I would breath life into and almost give a kind of personality. It would automate my lights, turn on and off with reliability and maybe even save me some energy (I can’t verify that but I can pretend).

This particular device is a Kulp Lights F8-B connected to a Beagle Bone Black and running Falcon Player which sits on top of a Linux core. I also added a board to turn those Pixel signals to power AC things. In my case, 8 channels of AC light strands and 1 channel for the inflatable Santa.

At this point, I could only get the lights to work in test mode. I tested to see how far I could run the Pixel Strands and maintain fidelity in the lighting quality and I wanted to see how the AC light strands would be implemented. My next step was to understand how to sequence them properly. That was done through this application called xLights. It took several YouTube videos to understand how to set up the layouts to coincide with the physical layout and channels of lights from the controller. I didn’t figure out most of this until the light channels were mounted on the house. I was also at this point where the weather was becoming less cooperative so I had to get the lights up without me fully understanding what I was doing. I also had to make quick fixes of lights along the way that had, for whatever reason left me with a “pixel being out of place“.

The final result, after getting all the Pixel Lights mounted and programmed left me pretty pleased with the results. I now had lights that were much, much more robust that I wouldn’t have to take down that could change for each of the seasons. I had better control over the AC lights and the inflatable Santa and I think the overall aesthetic was vastly improved. There certainly are more lights.

I again changed the wrap on the lamp post but that is because it is now a waterproof RGB light strip to which I can change the color. It will soon get an enhancement with a NodeMCU but that is another discussion. The lights along the roof and the fence are Pixel Lights. The fence lights will come down but the roof lights will stay.

It truly feels bright and happy around my house. The lights turn on when it starts to get dark. Shut down when I am sleeping and are back on before I awaken. I was going to leave it here, but my oldest called me out on my not sequencing the lights to music. I was content and quite happy with what I had but my boy reminded me of my commitment to time the lights to music. I had a few songs in mind but ended up going with the song that inspired me long ago: Trans-Siberian Orchestra’s “Wizards in Winter”. There is a video of that on YouTube. Those were all incandescent lights and probably done with a micro-controller and without the benefit of any sequencing software.

My next step was to break out all the AC powered items into logical groups that I could easily control with xLights. This process added several more extension cords to my already somewhat untidy setup but once it was completed. It turned out much better and introduced a whole new set of fun activities I can have with these Christmas lights.

The xLights application is a little bit daunting to look at when you first start into it. Once you understand the basics, it is pretty easy to navigate your way through and start experimenting with things. This first sequence is basically one big experiment but I like how it turned out.

Most of the time, my lights are on and they don’t do much beyond twinkle and drive back any oppressive darkness from my home. It lights things up around me quite nicely and makes for spending any time outside of the house much more delightful. The light that comes through the windows feels as though it is full of life. They remind me of the hope, joy and optimism of Christmastime. It is an electronic symbol of the light that was brought to this earth so many years ago that carries over into modern western tradition today.

The lights are red, green, blue and Amber. They twinkle and shift position periodically.

Once every twenty minutes, this sequence will start and I am quite pleased with how it turned out. I am happy with it now but after watching it a few times, there are certainly areas for improvement with my yard objects. Specifically, more are needed but I have a plan.

Trans-Siberian Orchestra – Wizards of Winter (2019)

I have a joyful, childlike smile on my face every time my eyes glance outside the window and see the twinkle and I am nearly jumping up and down when I hear the faint sound of that Christmas rock and I can see the lights flash through the curtains. I often run to the front door just to see my very first light sequence and I do not tire of it. Not sure about my neighbors but so far, the feedback has been positive.

Final Thoughts

This wasn’t the cheapest technology adventure I have ever pursued. It’s certainly not the most practical either but I can say with much confidence that this has been good for my soul and I don’t have any bit of remorse on the time and money this cost me. In fact, I am noodling around my ideas for next year already to make it better.

I will put together some sort of short, quick start, guide for putting together a light display for those inclined to do something similar. This is all built on free and open source software which makes the whole project that much sweeter. I have a Linux computer that continually thrust joy upon me and reminds me that no matter what awful things may happen to me, not to roll over and give up but to stand up and slug my way through. It reminds me that there is joy to be had even when the cold, bitter, darkness of life has fallen around you.

For this, I say thank you to anyone that has had even the slightest hand in Linux or any of the tools that has made my life a little better. It truly means a lot to me. You may never know how far reaching your positive contributions have been to people, personally and professionally. So again, thank you.

2001 Ford F-350 Radiator Replacement

My trusty old Diesel powered truck developed another issue, the radiator was leaking coolant and I couldn’t help but think about the many Star Trek: The Next Generation episodes where Geordi La Forge telling the bridge, “We have a coolant leak”

That began my task of gathering things and knowledge to get this process started. I consulted one of the smartest people I know, a buddy of mine that lives locally that is quite literally one of the smartest people I know. He encouraged me that I could do it. He also directed me to a site that provides parts at a much reduced cost. I am all about saving money.

Preparation

In order to replace my leaky radiator, I prepared by making a few purchases and gathered a few items:

  • Purchased a radiator online to save a few bucks
  • Adequate amounts of replacement coolant
  • Coolant system lubricant
  • Buckets to collect the coolant
  • A couple funnels and some tools

I watched a YouTube video and was mentally prepared for the task at hand.

Step 1: Drain The Radiator

In order to remove the radiator, I had to drain it first. There is a little drain at the bottom of the radiator that makes it super easy to open up. I opened up the cap on the overflow to allow for air to flow in as the coolant escapes.

Step 2: Disconnect the Hoses

In order to get to the overflow hose at the top of the radiator, the overflow tank, which is an interesting design to me because it also contains the radiator cap… but it’s not on the radiator… Part of the jack kit also resides at the top of the radiator and integrated into the radiator retention bracket.

Once the brackets are removed, the hose clamps are easily accessible. The hose clamp to the engine return line uses a 5/16 driver while the smaller hose to the overflow is the squeeze kind that a channel lock does a fine job of releasing the compression forces.

The next task was to remove the connections at the bottom of the radiator. Two hoses and two lines to the transmission. I want to note here that I should have removed the hoses before I removed the transmission lines. I didn’t realize that the transmission coolant lines were not filled with coolant but transmission fluid. I should have known better. The fan shroud was was held in place by 2 screws and is retained at the bottom by tabs that fit into slots on the bottom of the radiator.

Step 3: Remove the Radiator

Once the disconnected I allowed the radiator to drain a bit more and I removed it from the truck. The radiator design is rather clever in that there are pegs at the top and bottom of the radiator that retain radiator in its place. It was actually nicely engineered to be easy to service, which makes me think, how often do they expect radiators to be replaced. The only area of difficulty was that the fan shroud had to be pushed out of the way as to make clearance for the connection points. It made for a little bit of struggle to get it out but really, it wasn’t that bad.

Step 4: Install the New Radiator

I pulled the new radiator from its box and made the unfortunate discovery that the radiator was damaged. The side of the radiator was crushed enough that I didn’t feel good about installing it. I wasn’t about to put a damaged radiator and live on hopes and prayers that it works. Since I didn’t want to go another day without my crusty old truck, I called a local parts store, AutoZone, to be exact, and found that they had one radiator in stock, it wasn’t the inexpensive version either, it was their high dollar unit. So much for saving money with the online company.

Step 5: Drive to the Parts Store to Get Another Radiator

I made the trip to get a radiator that wasn’t partially smashed and since I did lose a notable amount of transmission fluid, I picked up a couple quarts. I was pretty sure that I didn’t lose more than a quart but better to have extra on hand than not enough.

Step 6: Install the Radiator, Take 2

Installing the radiator was actually much easier than removing the radiator. Probably due to the fact there was nothing to drain. I started by attaching the fan shroud, then the transmission cooler lines to stop the bleeding of fluid there. Next I put the rest of the brackets in place, bolted the overflow in place so that I could connect that to the lower part of the radiator. I attached the hoses at the top of the shiny new part and began the filling process and double checking all my connections because I was not interested in making any silly mistakes that could lead to a fluid catastrophe. I added two gallons of coolant and started the truck to get the fluids circulating. I added two more gallons of coolant and almost a quart of transmission fluid. The transmission fluid was a bit tricky as I had to shield the fluid from being blown at me by the spinning fan.

What I forgot to do was add the coolant lubricant early on. That was my only mistake

Step 7: Happy Dance

I successfully completed the radiator replacement and had no drips. I am quite happy that I was able to do it myself. I need a “win” in life in this area. Not that I want to go from playing in Linux to playing with Automobiles but I am a strong proponent in self-empowerment and owning your own hardware, in this case, owning my vehicle.

Final Thoughts

I don’t see a future in being a mechanic for me. It’s certainly not my strong suit and does require a greater level of patience than messing with computers, at least for me. I have a greater appreciation for the skill and capabilities of mechanics are are truly are a people with a special talent and grace upon their lives to do the work that they do.

References

2000 F250 Radiator Replacement video on YouTube