Noodlings | BIOS Games Serving the NDI™ Plugin

Another prime number… and no the title doesn’t make sense. It’s just a nonsensical way to string everything together.

19th Noodling on a mid-August night

19 Episodes… 19 is another prime number!

Fun facts about chocolate milk can be found here

BIOS Update Dell Latitude E6440 on Linux

My BIOS was 4 years out of date. I thought it was time to update it. I went to the Dell Support page and noticed that they only had *.exe files available. I sighed and was initially frustrated because my initial supposition was that I was going to have to have a working copy of Windows to do the update. 

AntiMicro | Map Keyboard and Mouse Controls to Gamepad on openSUSE

Installed a game called Pokemon Insurgence on Lutris and there was no way to play the game with a gamepad. Rather than try to fight things, set out for an application that would map the keyboard controls to the WiiU Pro Controller that has become my gamepad of choice.

CPU Downgrade

After receiving this message following a BIOS upgrade, I was forced to purchase a lower powered CPU for my AMD Workstation.

OBS NDI™ Plugin on openSUSE

The NDI plugin offers a fairly easy way to send OBS video signal (presumably other applications can take advantage of this too) to another OBS instance on another machine. This can come in handy for numerous reasons such as splitting up workloads between machines by capturing output from one machine, such as gaming computer, to stream with a dedicated unit that interfaces with YouTube.

BDLL Followup

What have you done that would cause you to lose your Linux card

openSUSE Corner

New Prototype Builds Bringing Leap, SLE Closer Will be Available Soon

The release manager for openSUSE Leap, Lubos Kocman, has updated openSUSE’s develop community on efforts to bring the codes of Leap and SUSE Linux Enterprise closer together.

Tumbleweed Roundup

  • 20200805 Stable 99
    • MozillaThunderbird (68.10.0 -> 68.11.0)
      • Several CVEs addressed
    • transactional-update (2.22 -> 2.23)
      • Subpackages: transactional-update-zypp-config
      • Version 2.23
      • Add “run” command to be able to execute a single command in a new snapshot
      • Add “–drop-if-no-change” option to discard snapshots if no changes were performed (BETA, required for Salt integration)
      • Removed previous CaaSP Salt support (gh#openSUSE/transactional-update#33)
      • Avoid “file not found” message on systems without /var subvol
  • 20200810 Score of a moderate 84
    • epiphany (3.36.3 -> 3.36.4)
    • gcc10 (10.2.1+git465 -> 10.2.1+git501)
    • gnome-mines (3.36.0 -> 3.36.1)
    • kernel-source (5.7.11 -> 5.8.0)
    • squid
    • zypper-lifecycle-plugin (0.6.1490613702.a925823 -> 0.6.1596796104.87bdab7)

https://review.tumbleweed.boombatower.com/

Computer History Retrospective

Computer Chronicles – Fifth Generation Computers (1984)

The pioneers in the field talk about 5th generation computers capable of Artificial Intelligence and heuristic learning; giving computers context. In 1984, computers were already being used to make knowledge based decisions.

The Computer Chronicles – Fifth Generation Computers (1984)

Final Thoughts

Take some time to have fun. Good, clean wholesome fun. Go for a walk, enjoy the weather on any day that it is possible. Take some time to cherish each moment, whether it is good or bad, find the positive in the situation and make it a point to say “thank you” as often as possible.

OBS NDI™ Plugin on openSUSE

The NDI plugin offers a fairly easy way to send OBS video signal (presumably other applications can take advantage of this too) to another OBS instance on another machine. This can come in handy for numerous reasons such as splitting up workloads between machines by capturing output from one machine, such as gaming computer, to stream with a dedicated unit that interfaces with YouTube. This has advantages in that you can move the machine doing the heavy lifting into another room or across the room as to not hear the fans and so forth. In my case, my primary machine is getting long in the tooth. I prefer the setup I have as far as the screen layout and height of the computer as well as the location. I use my AMD Desktop / server / workstation machine to talk to YouTube or Twitch directly with that OBS instance and record locally in effect freeing up my laptop from quite a bit of the workload.

The Challenge

At the time of writing, there isn’t an RPM available and the instructions out there along with what to expect seems lacking at best, so, I thought I would take what I know and compile it into one easy, step-by-step guide here for openSUSE. Your mileage may vary depending on your distribution.

Installation

For starters, you need to get the software packages from GitHub.

https://github.com/Palakis/obs-ndi/releases

Download the following:

The version numbers may have changed but you should get the “libndi*” and “obs-ndi*” packages

This is a Debian package meant for Debian/Ubuntu so you may be thinking, “how am I supposed to use this?” …and that is a reasonable question. The solution is a tool that is not often talked about. It is also likely not recommended by most people but I am not most people. That tool is called “Alien“.

To install Alien, navigate here and just click on the appropriate experimental package for your version of openSUSE:

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

Alternatively, you can use the terminal method, which will very a bit between distributions

Tumbleweed

sudo zypper ar https://download.opensuse.org/repositories/utilities/openSUSE_Factory/ utilties
sudo zypper ref
sudo zypper install alien

Leap 15.2

sudo zypper ar https://download.opensuse.org/repositories/utilities/openSUSE_Leap_15.2/ utilties
sudo zypper ref
sudo zypper install alien

To explain each of the lines that I am expecting you to put in the terminal because you should NEVER just trust some random commands on the internet. First of all, I stand behind this as CubicleNate, and I do my best to not be wrong and I’d like to keep doing these things. You can also reacho ut to me directly using any of these methods.

Once the installation of Alien is complete. You will have to take the two deb packages previously downloaded and convert them.

Using a terminal, navigate to the location of the downloaded packages and run the following

sudo alien -r libndi*.deb  
sudo alien -r obs-ndi*.deb  
sudo zypper in ./libndi*.rpm obs-ndi*.rpm

Now your are ready to set up OBS!

OBS Setup

Using this reference, I made the adjustments to my firewall but it didn’t work. Perhaps I am missing something and I would love to edit this article accordingly but opening up both tcp and udp ports 5960 through 5968 as well as having the mDNS port active did not allow me to utilize the NDI plugin with firewalld active. Either the documentation is out of date, in correct or there is a user error on my part and I couldn’t find the appropriate logs to tell me otherwise. Therefore, I just deactivated the firewall on both the source and destination machines.

sudo systemctl stop firewall

This is the point where you should be sorely disappointed with these instructions but again, I would like to improve this and will gladly listen to any input.

The next step is to open up OBS-Studio (v25 and latter is required) on both machines. On the source machine, go to Tools > NDI™ Output settings

Then set the output preferences. In my case, I had not interest in sending the “Preview Output” only the “Main Output” and label it with the hostname; just in case I might do this with another machine.

On the Destination OBS machine, you have to add the NDI Source. This is just one of the many options you have available as a source.

For the source name, select the drop-down and the appropriate available source. I didn’t mess with any of the other settings so your mileage may vary on this portion of the instructions as well.

And that is it. Your NDI Source is just another input like a webcam or video signal and you are off to the streaming or production races.

Final Thoughts

The whole firewall thing has me a bummed out a bit. I have wrestled around with it far too long but at least I know that lowering my “shields” will allow for transporters to work. Not ideal but I am within my firewalled off house, I just happen to like security in layers.

I want to note that the latency on this is VERY low. I mean incredibly low. I have tested this by playing a game on one machine and using the output on another machine with almost no latency perceived. It is quite the incredible technical miracle and I am quite grateful.

I also want to make the vintage computer tie-in. The NDI plugin is developed by Newtek, the makers of the Video Toaster that was very popular on the “big box” line of Amiga computers from the 1990s. So, in a way, I feel like I have a little bit of that incredible Video Toaster tech on my openSUSE machine.

References

OBS-NDI on GitHub
https://obsproject.com/forum/resources/obs-ndi-newtek-ndi™-integration-into-obs-studio.528/updates
NDI Problem Solving PDF

AntiMicro | Map Keyboard and Mouse Controls to Gamepad on openSUSE

Installed a game called Pokemon Insurgence on Lutris and there was no way to play the game with a gamepad. Rather than try to fight things, set out for an application that would map the keyboard controls to the WiiU Pro Controller that has become my gamepad of choice.

I know I heard it was possible on a podcast some time ago and since I was probably doing something else and didn’t have a notebook handy to write down whatever it was, I began my search and found this AntiMicro as a solution.

A quick note, this is not a comprehensive and exhaustive analysis of all of its features. I am covering just a portion of the features.

Installation

AntiMicro is in the official repositories for both Leap and Tumbleweed. To do the graphical click method, navigate here:

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

Alternatively, you can install it through the more exciting and personally gratifying method of the terminal:

sudo zypper install antimicro

For other distributions, search “antimicro” in your favorite software management system.

The Problem Game

The game I wanted to set up to use a controller is Pokémon Insurgence. I observed my oldest child watching a play through on the YouTube and he spoke of interest in the game. I found the game on the Lutris site with an easy installation process.

The game I wanted to set up to use a controller is Pokémon Insurgence. I observed my oldest child watching a play through on the YouTube and he spoke of interest in the game. I found the game on the Lutris site with an easy installation process.

https://lutris.net/games/pokemon-insurgence/

The issue is, there was no way to have this game use any control pad. Only the keyboard. I thought this annoying and didn’t play the game… until AntiMicro, that is!

Configuration

The configuration of AntiMicro is incredibly straight forward. So much so that this little write-up is almost unnecessary but I thought I would share my experience anyway. When the application starts up and the system is absent any controllers, you will be presented with this screen.

What is pretty fantastic is that when you do activate, or plug in a controller, there isn’t any fiddling required. The application immediately reacts and presents some straight forward options.

I turned on my Wii U Pro Controller, my controller of choice on those periodic cases that I decide to play a game. The application immediately presented options.

At this point, you can push buttons on the controller and identify the buttons and in this process, I did discover that the A and B are swapped as well as the X and Y. I looked at the Controller Mapping configuration and it looks like the physical locations are correct but the labels seem to be incorrect.

I would call this a small papercut issue but it is indeed an issue. So beware of the labels and make sure that the button and the action are correct. It is best to verify.

I took some screen shots of the input configuration portion of Pokémon Insurgence so I could map the keys out.

For the arrow key configuration, you can very easily map it all onto the DPad and the joystick of your choice. I set both to control the movement of the character. There is, kindly, a present drop-down to make this selection.

Each of the other keys can be assigned but do take note that you assign the correct key to the correct button and verify labels. When you select the button, you can then select the corresponding key.

Not relevant for this game but just to make note, you can also map mouse movements which, I see as being valuable if you want to configure a controller to manage mouse movements without using the Steam to do so.

After completing and subsequently tweaking my button selection. I was able to play a solid 10 minutes of Pokémon Insurgence on my Linux machine quite happily. At this rate, I might get through it in the next 6 years or so.

What I Like

The configuration is splendidly simple to set up. It is very intuitive and does as you would expect. I appreciate how easy it is to set up and get going with it.

The on screen information about what you are doing is very appreciated. Rather than digging through help or readme files, the important information presents itself.

Finally, this is a Qt application so it integrates nicely into Plasma and my dark theme looks great. It is as though the interface was tested against Breeze dark as there were not any unreadable bits to the application.

What I Don’t Like

The one little papercut of the reversal of some buttons is unfortunate but not a deal breaker. It’s only important if you actually read the buttons and not go by the action flash.

The mouse controls isn’t exactly as I was hoping. The movement of the cursor didn’t exactly have the variable movements I was expecting but there are so many options, there is, perhaps one that would give a kind of gradient movement. So, this is not really a knock on the application as the default is probably best for most users. I would say, this is a knock on me for not being satisfied with what is likely a sane default.

Final Thoughts

AntiMicro is a fantastic application, especially if you play old DOS games or other emulated games that don’t have adequate controller support. This also has the bonus feature of being able to easily map your controller to act as a mouse which may be a nice addition to a media set-top box for the living room.

I am glad I stumbled on this and I wish I could give attribution to where I recently heard about it but seeing as I don’t recall, I will miss the opportunity to link to that source. If I do find this I will add an edit.

If you have some games that don’t play nice with controllers, try AntiMicro, it just may give that old game a fresh coat of paint.

References

https://software.opensuse.org/package/antimicro
https://github.com/AntiMicro/antimicro

Noodlings | Hardware is for the Terminal

18 is such an adult number. Perhaps I am truly becoming a grown up podcast here.

18th Noodling of mid-summer musings

18 Episodes… 18 is a fun number. Divisible by 2, 3, 6 and 9. The age you can vote in the United States.

LG 29″ UltraWide | Monitor Upgrade and Configuration on Linux

I have historically made my hardware decisions based on price, generally I get what I can get for as low or as reasonable as possible. Basically, I go for free or near-free and fabri-cobble something together. After seeing some other computer setups, I have really thought that I want to be able to function more effectively and efficiently than I had been. One of the areas that I have been less than happy has been my monitor layout. I have been pushing 3 displays with my Dell Latitude E6440 and for the most part, it has been meeting my needs but there were some work flows that have not been working out so well.

Tmux Terminal Desktop

I can’t say that I ever spent my childhood wishing I had the ultimate terminal desktop but the more I have played on Linux, the more I have spent time in the terminal and I really can’t explain why I find it so charming. Perhaps it is the low memory usage of the applications? The clever modern implementation of certain terminal applications? I can’t really say, but there is something incredibly charming about the terminal.

Turn off Monitor using CLI

This is another gift to future me from present me. I made the mistake of not properly writing this down before so I had to search for the answer. The problem is, sometimes, it seems as though Plasma is not shutting off my external screens consistently. I can’t say why but I have a suspicion that it is due to a specific communication application as I can almost guarantee that it is preventing my screens from turning off. I don’t have definitive proof of this so I am not going to put it in writing.

BDLL Followup

Keyboards and mechanical keyboard talk

openSUSE Corner

Release Team to have retrospective meeting about openSUSE Leap 15.2

Members of the openSUSE community had two retrospective meeting on the release of openSUSE Leap 15.2 after receiving feedback from the recent survey.

Leap 15.2 Install party @ GOLEM – A quick report

Italian Linux users did an openSUSE Leap 15.2 Launch Party, at the local LUG (it’s called GOLEM, it’s in a small town in central Italy), and Dario Faggioli made a quick report.

Tumbleweed Roundup

  • 20200730 Stable 99
    • MozillaFirefox (78.0.2 -> 79.0) Numerous CVEs addressed
    • snapper (0.8.11 -> 0.8.12)
      • Subpackages: libsnapper5 snapper-zypp-plugin
      • fixed error when using mksubvolume to create /tmp (bsc#1174401)
    • yast2 (4.3.17 -> 4.3.19)
  • 20200731 Stable 99
    • ghostscript
    • kernel-source (5.7.9 -> 5.7.11)
      • iwlwifi: Make some Killer Wireless-AC 1550 cards work again (bnc#1012628).
      • dpaa_eth: Fix one possible memleak in dpaa_eth_probe (bnc#1012628).
      • m68k: nommu: register start of the memory with memblock (bnc#1012628).
      • m68k: mm: fix node memblock init (bnc#1012628).
      • clk: qcom: gcc: Add GPU and NPU clocks for SM8150 (bnc#1012628).
      • ALSA USB-audio bug fix, driver improvements for realtek audio
      • Improvements to USB Serial
      • Intel_th added support for Jasper Lake CPU
  • 20200803 Pending Score of a Stable 93
    • aaa_base (84.87+git20200708.f5e90d7 -> 84.87+git20200507.e2243a4)
      • Too many improvements to list but suffice to say, lots of code cleanup and bug fixes
    • adwaita-qt (1.1.1 -> 1.1.4)
    • dnsmasq (2.81 -> 2.82)
    • polkit (0.116 -> 0.117)
      • memory management fixes
      • read-only-root-fs (1.0+git20200121.5ed8d15 -> 1.0+git20200730.1243fd0)
    • As an aside, bluetooth audio is properly working again.
  • 20200804 pending Stable 97
    • iso-codes (4.4 -> 4.5.0)
    • ncurses (6.2.20200613 -> 6.2.20200711)
      • fixed pound sign mapping in acsc
      • additional changes for building with visual Studio C++

Computer History Retrospective

Computer Chronicles – Printers

At this time, printers were divided up in two classes, impact and non-impact. Emerging technology in in laser printers was being developed.

Final Thoughts

Life can be full of surprises, sometimes you can get a curve-ball thrown at you. It might really throw a wrench in your plans and mess up your plans in life.

Don’t put it off, don’t ignore it. Face that challenge head on. Begin immediately on unwinding the bailiwick. I promise you won’t regret that decision.

Turn off Monitor using CLI

This is another gift to future me from present me. I made the mistake of not properly writing this down before so I had to search for the answer. The problem is, sometimes, it seems as though Plasma is not shutting off my external screens consistently. I can’t say why but I have a suspicion that it is due to a specific communication application as I can almost guarantee that it is preventing my screens from turning off. I don’t have definitive proof of this so I am not going to put it in writing.

My intent is to have a shortcut for turning off all my screens instead of just locking them and hoping that the desktop environment will do its job of turning them off. I do want to point out that when I was using Windows, both 7 and 10, I had this problem too so it is absolutely not an issue with Desktop Linux.

It is fun being able to understand how to talk to a Linux machine through the terminal using the CLI (Command Line Interface). The more you know about how to work with it, the more you will ultimately enjoy your journey in Linux. Here is my solution.

The Commands

The commands I found out there in the vastness of the world wide web lead me to this that I have tested on multiple machines. Two were running Tumbleweed with Plasma and the other Leap 15.2 with Plasma.

xset -display :0 dpms force off

The other command is to force the screen on. This is useful as I have had issues where after undocking my machine, my screen would forget to turn on. I can’t say the reason why but this could also use a Global Shortcut

xset -display :0 dpms force on

The Script

I created a little shell script for turning off my screen called screenoff.sh. I can’t say for sure how all distributions handle this but I have a bin directory in my home folder, so this is where I have chosen to place this script. ~/bin

Using nano, I created a bash script for this.

nano ~/bin/screenoff.sh

Then filled it in with this information

#!/bin/bash

sleep 1
xset -display :0 dpms force off

The purpose of the sleep 1 line is to give me a chance to get my hand away form the keyboard and mouse so I don’t inadvertently cause the desktop environment to wake the screen.

Next I made the file executable. There are many ways to do it but since we are playing in the terminal:

chmod +x ~/bin/screenoff.sh

To test this out, using krunner or open a terminal and type screenoff.sh should turn off your screen. If not, something is wrong and maybe we can figure it out…

Custom Shortcut

It is not real practical to open up krunner or a terminal just to shut off the screen when I have the power to create a custom shortcut in Plasma. Here is how to do it. First open up System Settings and choose the shortcuts module. Your system settings may look a bit different but I am sure you can figure it out. I have faith in you.

Next you have to select the “Custom Shortcuts” submodule.

At the bottom of the list there is an Edit button with a down arrow. Select that > New > Global Shortcut > Command/URL

Name it whatever makes sense for you. I chose the name “Screen Off” to make it pretty clear. Set your shortcut. I chose Meta+Alt+O.

Next, Select the Action tab and enter the path of the script you just created. In my case, it is:
~/bin/screenoff.sh

Select Apply and test it out!

Final Thoughts

Plasma is real easy to customize to your liking. I am very happy with this small modification to make my desktop experience a bit more suited to my personal taste. I don’t expect that this is a very common use case but since I know I am an edge case in much of what I do, this helps me to remember and hopefully there will be at least one person that can use or adapt this to their own case.

I am not a terminal expert so if there is any way that this can be improved, please contact me or comment below

References

Terminal Applications
https://askubuntu.com/questions/62858/turn-off-monitor-using-command-line
https://unix.stackexchange.com/questions/16815/what-does-display-0-0-actually-mean

Tmux Desktop on openSUSE Linux

I can’t say that I ever spent my childhood wishing I had the ultimate terminal desktop but the more I have played on Linux, the more I have spent time in the terminal and I really can’t explain why I find it so charming. Perhaps it is the low memory usage of the applications? The clever modern implementation of certain terminal applications? I can’t really say, but there is something incredibly charming about the terminal.

My pursuit of having a terminal based “desktop” was Inspired by Linux Unplugged Presentation. A rather nice article and I fell into this hole of terminal excitement

Build your own Desktop in the Terminal Linux Unplugged Article

After some exploration and some fiddling. I have put together a little resource for today me and future me. Hopefully this has some interest for you and I am open to other suggestions for making my Terminal based Desktop even better.

Tmux Terminal Desktop

The possibilities are seemingly endless as the bandwidth required to sustain this is really quite low.

LG 29″ UltraWide | Monitor Upgrade and Configuration on Linux

I have historically made my hardware decisions based on price, generally I get what I can get for as low or as reasonable as possible. Basically, I go for free or near-free and fabri-cobble something together. After seeing some other computer setups, I have really thought that I want to be able to function more effectively and efficiently than I had been. One of the areas that I have been less than happy has been my monitor layout. I have been pushing 3 displays with my Dell Latitude E6440 and for the most part, it has been meeting my needs but there were some work flows that have not been working out so well.

What I had before was a kind of ah-hoc solution. I started with one monitor than wanted more screen real estate so I placed it off to one side because that is just what made sense at the time.

What I had here was a laptop screen with 1920×1080 (FDH) resolution. A monitor directly above with a resolution of 1440×900 (WXGA+) and off to the top right a screen with the resolution of 1280×1024 (SXGA). Both of those monitors I purchased for $10 each from a company upgrading everything. I was pretty happy as going from one monitor to a second was fantastic and adding a third made it even better.

The problem I ran into was that the monitor above was not Full HD and sometimes it made for some usability issues with certain applications. That was compounded by having a monitor to the right with a physically slightly taller display but pixel wise, quite a bit taller and it just made things weird when moving from monitor to monitor.

The solution presented to me by my e-friend, Mauro Gaspari is ultimately what I started to pursue when he sent me a picture of his screen setup on Telegram. What he had (probably still has) is a 1440p monitor. I had never seen such a thing, it was so clean and made so much sense, especially with the ability to tile windows. So, began my search and measuring to see what was feasable. Fast forward to about eight months later, I purchased the LG 29WK50S-P. This is a 2560×1080, 29″ with a 60Hz refresh rate.

Initially I wanted to go with a 3440×1440 (WQHD) screen but I couldn’t get one at the size and price I wanted. Since I don’t have a whole lot of space and the distance it will be away from my face, any bigger than 29″ diagonal would take up too much space. I also didn’t want to spend a whole lot so what I payed was $179.10 for this monitor and I am quite happy with the price. Sure, more than the $10 I spent on the last monitor but a heck of a lot more pixels.

Features

The description of this this monitor is a 29 Inch Class 21:9 UltraWide® Full HD IPS LED Monitor with AMD FreeSync. It has the following features

  • AMD FreeSync™ Technology
  • Dynamic Action Sync
  • Black Stabilizer
  • OnScreen Control
  • Smart Energy Saving
  • Screen Split to give you different picture choices with the monitor.

None of these features were all that important to me. What I was most concerned about was the resolution and VESA mount. The split screen feature, to which I mostly don’t care about, is intriguing as I could use the second display input and do some testing on other distributions with another computer.

I really wasn’t asking for much in a monitor, really. I am going to take advantage of the AMD FreeSync at this time either but it is nice to know it’s there.

Initial Setup

I have been spoiled in openSUSE Linux for years and years. I haven’t really had to fiddle with anything to get my computer to use hardware. I expected this ultra-wide monitor to be just as un-fiddly but it wasn’t. For whatever reason. The display didn’t recognize to computer its proper resolution.

I don’t know why if it is because it falls under the “other” resolution category or if there is some other issue. I am running Tumbleweed so I do have the latest drivers and since this monitor has been around for a while, I wasn’t expecting any issues.

The Plasma Display Settings didn’t give me the option of 2560×1080 at all, a quick DuckDuckGo search which brought me to the solution to my troubles here on the openSUSE forum. I started out by using some “old school” xrandr commands.

First I started out by defining a new mode:

xrandr --newmode "2560x1080_60.00"  230.76  2560 2728 3000 3440  1080 1081 1084 1118  -HSync +Vsync

Then I added a mode to the specific output.

xrandr --addmode HDMI-3 2560x1080_60.00

Then I sent the command to change the mode of the screen

xrandr --output HDMI-3 --mode 2560x1080_60.00

This worked but it is not a permanent solution as the next time I were to reboot, I would lose these settings. That made it time to do an Xorg configuration file for this monitor. Thankfully, it is just one simple text document.

Permanent Solution

Using the handy dandy terminal, once again, I navigated to the appropriate folder

cd /etc/X11/xorg.conf.d/

Then instead of creating a standard type of file that could be overwritten like “50-monitor.conf“, I created a custom one for this particular monitor.

sudo nano 49-LG29WK50S.conf

There is not much in this configuration file, just the modeline and preferred mode along with the Identifier of HDMI-3:

Section "Monitor"
   Identifier "HDMI-3"
   Modeline "2560x1080_60.00"  230.76  2560 2728 3000 3440  1080 1081 1084 1118  -HSync +Vsync
   Option "PreferredMode" "2560x1080_60.00"
EndSection

This allowed for the Plasma Display module to now have the proper mode available in the drop down and for me to do arrange the screen properly.

And now doing something like video editing feels a lot cleaner and the width only makes this task so much nicer to accomplish.

It’s not a perfect setup but it is a more perfect setup than what I had. What is nice is that I can very easily tile windows and jump to different applications without playing the, “where did I go” game.

I don’t know if I have any games yet that take advantage of the ultra-wide screen layout but from a productivity standpoint, this is fantastic.

I have been using it as the monitor with which I do CAD and I do like the wider display much better as the side menus are never in the way of the model itself. Also, the extended design history is almost entirely seen on larger models too.

Final Thoughts

Although the DPI is not the same between the laptop and the ultra-wide, I am happy with it. I don’t even know if I would want this monitor smaller or if maybe it is time to go up to a 15″ laptops screen. That would make the DPI closer to being the same between the laptop and the monitor. I am happy with it after one day of usage and over time, I am sure I will find irritations with the setup.

I want to note that I didn’t go for the curved screen. I don’t think I am quite ready for such a “radical” idea of having a screen curved towards me. Would it have been better? Maybe, I can’t really say and maybe the next screen I purchase will be curved so that I can compare. The way I see it, going from 16:9 resolution to 64:27 (21:9) was enough of a jump. Adding another bit of unfamiliarity of a curve in the display might have just thrown me off (insert smile emoji).

I have more “testing” to do with the monitor but for the $179.10 I spent on it, I think it was worth it. The contrast is nice, the brightness is nice, everything is very pleasing. This might very well be one of the best technology purchases I have made. I much prefer this to the ad-hoc, fabri-cobbled setup I previously had.

References

Ultrawide Monitor Help on the openSUSE Forum
LG 29WK50S-P Ultrawide LED Monitor product page
Display Resolutions on Wikipedia

Noodlings | Designing, Replacing and Configuring

A prime number podcast but not a prime podcast

17th Noodling of technical musings

I’d like to say something interesting about the number 17, it’s a prime number, the last year you are a minor in the United States, perhaps other places… Team 17 was a great video game house in the 90s that made the game Worms, that was cool. Played that quite a lot some years back…

Fusion 360 Architectural Design

Used Fusion 360 on Linux to help me design a major renovation project. I need a new space for my dusty projects, a place to make wood and metal chips and other non-electronics friendly tasks like welding.

MechBoard64 | Replacement Commodore 64 Keyboard

Modern replacement keyboard project for the Commodore 64. Not in production but all the plans to build your own are available.

Zoom Meeting Large UI Elements | Fix

Over-sized UI elements

TUXEDO Pulse 15 | Possible AMD Linux Laptop Upgrade

First New Piece of Hardware that excites me and just may be my next laptop

BDLL Followup

  • Ubuntu Cinnamon Remix is struggling with their process to become an official distribution due to 3rd party packages
  • FerenOS reaches 5 years
  • Community feedback, concerning getting into Network Administrator, get your hands on, buy some cheap used equipment, get the Debian network administrator handbook. Get real equipment seems like the best way to learn.
  • For me, Ocular for reading. For managing ebooks, I use Calibre. Folio was talked about but it looks to Gnome.

openSUSE Corner

openSUSE + LibreOffice Virtual Conference Extends Call for Papers

Organizers of the openSUSE + LibreOffice Virtual Conference are extending the Call for Papers to August 4. Participants can submit talks for the live conference past the original deadline of July 21 for the next two weeks. The conference is scheduled to take place online from Oct. 15. – 17.

The length of the talks that can be submitted are either a 15-minute short talk, a 30-minute normal talk and/or a 60-minute work group session. Organizers believe shortening the talks will keep attendees engaged for the duration of the online conference.

The conference will have technical talks about LibreOffice, openSUSE, open source, cloud, containers and more. Extra time for Questions and Answers after each talk is possible and the talks will be recorded. The conference will schedule frequent breaks for networking and socializing.

The conference will be using a live conferencing platform and will allow presenters with limited bandwidth to play a talk they recorded should they wish not to present a live talk. The presenter will have the possibility to control the video as well as pause, rewind and fast-forward it.

Attendees can customize their own schedule by adding sessions they would like to participate in once the platform is ready. More information about the platform will be available in future news articles.

Organizers have online, live conference sponsorship packages available. Interested parties should contact ddemaio (at) opensuse.org for more information.

Release Team Asks for Feedback on openSUSE Leap “15.2”

The openSUSE release team is would like feedback from users, developers and stakeholders about the release of the of community-developed openSUSE Leap 15.2 through a survey. The survey is available at https://survey.opensuse.org. openSUSE Leap 15.2 was released on July 2. The survey centers on these two questions: what went well and what didn’t go well?

Tumbleweed Roundup

  • 20200728 Pending Stable 99
    • ffmpeg-4
    • sudo (1.9.1 -> 1.9.2)
      Subpackages: sudo-plugin-python
  • 20200727 Pending Stable 99
    • yast2 (4.3.15 -> 4.3.17)
  • 20200726 Pending Stable 99
    • Mesa (20.1.3 -> 20.1.4)
    • Mesa-drivers (20.1.3 -> 20.1.4)
    • fourth bugfix release for the 20.1 branch
    • just a few fixes here and there, nothing major
    • gnome-disk-utility (3.36.1 -> 3.36.3)
    • Fix creating partitions by using special parameter when requesting the maximal partition size.
    • Updated translations.
  • 20200724 Stable 97
    • NetworkManager (1.24.2 -> 1.26.0)
    • flatpak (1.6.4 -> 1.8.1)
    • kernel-firmware (20200702 -> 20200716)
    • pipewire
    • Subpackages: libpipewire-0_3-0 pipewire-modules pipewire-spa-plugins-0_2 pipewire-spa-tools pipewire-tools
  • 20200721 Stable 94
    • MozillaFirefox
    • Add mozilla-libavcodec58_91.patch to link against updated soversion of libavcodec (58.91) with ffmpeg >= 4.3.
      libzypp (17.24.0 -> 17.24.1)
      Fix bsc#1174011 auth=basic ignored in some cases (bsc#1174011)
      Proactively send credentials if the URL specifes ‘?auth=basic’ and a username.
    • ZYPP_MEDIA_CURL_DEBUG: Strip credentials in header log (bsc#1174011)
    • version 17.24.1 (22)
  • 20200720 Stable 95
    • kernel-source (5.7.7 -> 5.7.9) Numerous fixes
      protect ring accesses with READ- and WRITE_ONCE
      KVM: arm64: vgic-v4: Plug race between non-residency and v4.1 doorbell (bnc#1012628).

Computer History Retrospective

Computer Chronicles – Microchip Technology

Value of computers today is enormous and this put that into some of its perspective.

Final Thoughts

It is never good to live in fear. The world is indeed a dangerous place, filled with so many things that reWe are often focused on the negative in the world. The things that are bad or could be improved and often become far too resentful as a consequence. If we spend more time focusing on the miracles that bring us the technology and comforts we get to enjoy day in and day out. I think the world would be a better place

TUXEDO Pulse 15 | Possible AMD Linux Laptop Upgrade

My main machine a Dell Latitude E6440 has very happily been chugging away and meeting my needs very reliably. For most tasks, I don’t have any issues. I do probably push it by keeping too many tabs open far too frequently but for the things I need to do, CAD, video editing office tasks, VMs this silly CubicleNate.com site, I am very happy with the performance. I think where I am having trouble is that now that I have had a taste of high-resource application multitasking, now I want more of it. Also, the Server / workstation that I built last year has further wet my appetite for more power.

I have looked at Tuxedo Computers several times and have been very interested by their many offerings. Looking at the 10th Generation Intel machines, I found the prospect of super long battery life with greater processing power compelling but not compelling enough. The difference in performance of the integrated GPUs vs the onboard AMD of my current laptop wasn’t enough of a difference to get me to make the purchase. I wanted more of a leap frog than a hop forward if I am going to make a major purchase.

Then I have this article pop up in my Twitter feed. Now I am intrigued as this wasn’t just a few percentage points faster than my current machine. This was almost 6 times the CPU power and although uncertain the GPU performance increase, I am quite certain that the RX Vega 7 will do far better than the Radeon HD 8600M Series GPU I am currently enjoying.

Exciting Features

I am going to outline the features that mean the most to me. Everyone is a bit different so I will illustrate the most compelling aspects of this machine that get me ready to open up my Bitwarden client to punch in my payment information.

CPU

For starters, this is an all AMD laptop. Nothing against Intel, outside of the Spectre and Meltdown issues, I have enjoyed great performance and Linux compatibility over the years. Even now, I am quite satisfied with my 4th Generation Intel. What an all AMD laptop means to me is no funny hybrid graphic commands to utilize the more powerful GPU. By default, having a Vega 7 paired with the Ryzen 7 CPU with 8 cores and 16 threads means a LOT more that I can do and in less time. Specifically, more efficiently working in 3D design, such as Fusion 360 and rendering audio and video files. I shouldn’t complain too much, generally my rendering takes about 1 minute for each minute of video but the more effects I layer on the longer this can take.

GPU

Maybe I should have lumped this into the previous paragraph but I do want to highlight my reasons for a better GPU. For starters, Gaming. I don’t do a lot of it, but when I do, I find that my GPU is a bit lacking for the newer games. I don’t need superb graphics but I would like to be able to play some of the newer titles without having my graphics turned all the way down to the lowest setting to keep up. Obviously that is not all the games but the “Triple-A” titles are just not possible.

“Psss, that is why you built the new server / workstation system”

“Shhhhh, let’s not talk about that computer right now!”

CubicleNate talking to CubicleNate

Whenever I want to use the AMD GPU in my E6440, I have to invoke “DRI_PRIME=1” to activate it and it can be annoying to do it for all the applications that draw on GPU resources. Admittedly, that is not a huge deal but convenience is worth something.

Memory

I don’t tax my memory all that often but I tend to as I have said earlier that once I got a taste for taxing application multitasking, I have wanted to do more of it. Maybe I don’t need to but I have been known to use up the 16 GiB of RAM on my system quite regularly. This machine has a max of 64 GiB and since that number sounds great, I just may want to have a “Linux 64” system to compliment the Commodore 64. See what I did there, 64 GiB of RAM and 64 KiB of RAM?

(Insert eye roll)

Seriously though, I would like to have a bit higher ceiling to work with when doing more complicated tasks and that additional memory should keep me quite satisfied for the next several years.

Battery

The battery performance of this machine looks to be about 10 hours under normal office loads. Now, that is not much more than what I have with my E6440 on a good battery as I get between 6 and 8 hours, depending, but 10 hours is nothing to sneeze at. The battery is also user replaceable in this machine as well. Not as easy as a couple retaining latches on my E6440 but I can live with having to employ a screw driver to remove the lithium-polymer battery, so long as it doesn’t require a heat gun and careful prying to get it out. The question I have here is, “how easy will it be to get a replacement battery?”

Ports

Here is where many machines fall on their face. For the most part, ports on newer machines are loathsome. Possibly the most egregious design I have seen has been Apple laptops. It is as though they have no thought or concern in what users will need. I have seen all brands with this shortcoming. This machine is fairly well equipped and I would be comfortable in saying is far better than most.

It has 1 – USB 3.2 Generation 1 Type-C that can also be used to deliver power. That is great because it opens me up for having a universal USB-C type dock station, which Tuxedo Computers also sells. It seemingly is not DisplayPort capable but I am okay with that. Two ports would have been nice but one is good.

There are 2 – USB 3.2 Gen1 Typ-A ports. I am rather accustomed to the 4 I have on my Latitude but I do NOT currently have a USB-C port so the world of USB-C is out of reach at this time. There is 1 – USB 2.0 Type-A and I wish that this would be a USB 3 instead but the reality is, this is fine, really. I mostly have USB 2 type devices and things like Mice and controllers waste that USB 3 port so I am fine with this.

1x HDMI 2.0 that has output capabilities I don’t fully understand but it can do 4k. I don’t own any 4K anything so this is not a huge deal to me. I am more concerned about having multiple screens that I can plug into the dock station. I will have to get some kind of HDMI to SVGA adapter I keep in my computer bag for the eventuality that I run into a display with that standard.

This has a real RJ45 Gigabit LAN port. So HUGE win here. I can’t have a machine without a real port. Not having a real LAN port is just silly to me.
This has a real 2-in-1 Headphone/Headset (Headphone & Microphone) port. I do use this still even though I have many Bluetooth audio things

It also has a micro-SD Card-Reader. I would prefer a real SD Card slot but I can live with this. Supposedly there is an adapter to read 8 other card formats but the only two for which I am interested is the Large SD Cards and Compact Flash.

Honorable Mentions

It has all the other standard options of the day like Webcam, sound card, speakers and internal storage. I will probably just go with the 2000 GB option as to not have to mess with that in the future. I mean, maybe not, maybe I can live with just 1000 GB but that would be a storage downgrade from current machine.

Concerns

I am a bit concerned by the change in keyboard layout would change how I use tiling on Plasma. This is a small issue and thinking about it, I actually may be able to use it more effectively as there are more keys near by that I could more sensibly configure to take advantage of the tiling features.

Getting more power supplies is my other concern. I can’t have just one or two. I need to have several but there is that USB-C option that everyone is seemingly excited about these days. I do have several Dell Power Supplies and I don’t want to just retire the lot. I wonder if they would be compatible.

Tuxedo Computers is in Germany, I am in the US. I am a bit concerned by the customer service issues I may have. Specifically, replacement parts, like batteries, or should I monkey something up. This is a small concern as I prefer to work on my own machines and assuming I upgrade my E6440 one more time, I could easily fall back to it should this Rysen machine have issues… and I think that is the path that I need to take.

What I wish it had

There are two things I wish the computer had. The first, a TrackPoint, as you see on the Dell Latitudes and ThinkPads. I am quite accustomed to using it regularly when I am mobile with my computer. Perhaps I could become used to using the track pad only, not sure, but this is the only thing that would be difficult. With that TrackPoint comes three physical buttons beneath it. I do like physical buttons too.

Secondly, I wish it had a built in smart card reader. This is not a huge deal and external USB models will work fine, it is just that there is something incredibly convenient in having a built in device so it is always ready to be used. My last 13 years of Dell Latitudes have had them built in and working great in Linux.

Final Thoughts

After a lot of thinking and pondering. I am not going to make the plunge… yet. I have to call myself out right here and remind myself that I previously said that I would buy an all AMD Linux laptop when they became available. My reason for not making the plunge yet is I can squeeze a bit more out of my E6440, I just purchased a new battery for it and the price of 4th Gen CPUs are rather low right now so I am going to extract a bit more performance out of this machine before I replace it. I may make this Tuxedo Pulse 15 a Christmas gift to myself, or maybe Santa will send one my way to end 2020 on a positive note.

Dell has been good to me for nearly two decades and I will never say a new Dell is a bad way to go, but with the changes in the power supply connection, my reasons for staying Dell have become fewer. They new keyboard layouts from Dell are also enough of a difference that I will have to alter some of my shortcut key sequences anyway. The two major reasons for staying with Dell are the lack of TrackPoint and Smart Card devices.

The part that truly interests me most is that I can buy a laptop, from manufacturer that has openSUSE Linux on it. Sure, it’s Leap and I would end up putting Tumbleweed on it but having a computer, from factory, with openSUSE brings about a kind of excitement. I haven’t ever purchased a Linux laptop before, let alone an openSUSE Linux laptop. I would certainly call this a “flagship” experience and for my first [factory] Linux laptop, this sounds like a great way to go.

References

Tuxedo Computers Unveils the Tuxedo Pulse 15 Linux Ultrabook with AMD Ryzen 4000H Series
Tuxedo Pulse 15 Details and Configuration
Dell Latitude E6440
Fusion 360 on openSUSE Linux | Review
Building an AMD Server and Game Machine out of Yester-Year’s Parts
openSUSE.org

Fusion 360 on Linux | Architectural Design Blathering

I have previously reviewed Fusion 360 and have since been gaining experience using it. I find it to be a very capable CAD application package that I rather enjoy using it too. Since most of my design experience has been using PTC Creo, I have had to relearn a lot of tools but the process has been fun (sometimes frustrating but mostly fun). To be absolutely clear, I have no architectural design experience. I am building this out of observation from hands-on experience.

These are my musings about it after spending several hours on it, understanding how to design a more complex assembly. For this project, I set my units to inches and I worked at designing my ideal garage with the idea that I am renovating the existing structure. I have many unanswered questions about the structure I am digitally assembling this at the time of writing but I hope to do updates on it as the project progresses.

I started out by placing the two walls I have to keep of my existing garage (over sized crappy shed). As I am “grandfathered in” to the current location so tearing it down and rebuilding would not be possible.

For the remaining two walls, made primitives based on the size, none of the details of the structure which consists of the Length and height of the walls along with the opening for the garage door. At this time, the details are not real important. I just need to have my limits set using the existing walls. The plan is to widen, lengthen and heighten the building to make it useful.

Keep in mind that none of this has yet been approved so much of this design might change. I may have also over-built or under-built aspects of this as I also have yet to have a professional look it over before I submit the permit.

Interface considerations

The vast majority of my experience doing mechanical design has been using Creo which is a fantastic parametric modeler. The big difference with Fusion 360 is, everything is parametric, including the assembly process, inclusive of each position change. Every time you move a component or body, that is another feature. I wasn’t really paying attention to this so it made my design a bit of a mess. What I learned in the process of laying out my garage was that I should have had a better idea of the structural requirements prior to placing the first 6×6 posts. Some basic calculations before placing the first post would have been smart. I ended up stepping back the design and laying out the footprint as a sketch because I didn’t take into account the basic lumber dimensions for plywood.

I had far, far too many “reposition features” in my history which made editing the history rather time consuming. The upshot is that I was able to correct all the weirdness I put into the model by stepping through it and clearing out all the extra moves. I certainly won’t make this mistake again in the future.

The ease of setting the material appearance makes designing a lot more fun. There are many options for appearance from wood, to paint to metals. Since I am working with digital wood, I went with pine, ultimately. I would have chosen a “pressure treated” pine but that wasn’t an option so pine will do.

Right-Click menu for appearance options

Although Fusion 360 has datums, they don’t work in exactly the same way as they do in Creo. I had to make many changes in the way I created interface points. At this time, I do feel like Creo has a more powerful datum plane, axis and point system but I haven’t put nearly as much time in Fusion 360 as I have Creo. Maybe I am wrong on this and my lack of knowledge about the application is the issue and there are, perhaps, functions I have yet to discover.

This is to illustrate were I made excessive lengths and widths in the footprint of this design. I can not only save a lot in materials by shaving off a few inches but I can also save in time as well not making excessive cuts. I am quite certain I won’t miss those few inches.

I really like the pattern tool in Fusion 360. The process of adding components and bodies is very straight forward and intuitive. You have the option of setting an overall length and number of features to pattern or the spacing and total quantity. You can easily pattern in two dimensions which is super handy for laying out the floor decking in this design.

Another neat aspect of the pattern function is that you can turn off / suppress specific instances. Although not pictured yet. The pull-down staircase will interrupt two of the floor joists and the decking so I will adjust the design when I get the dimensions for that component.

This roof might be overbuilt. I have to yet review it with an expert.

Another super neat-o feature in Fusion 360 is the ease of creating copies of components. In this case, if I make any modifications to the short or long walls. The copy will also update. Whether or not that works for you depends on your design intent.

Where that came in handy was when closing the space between the roof and the top of that knee-wall. I only had to create the wall once on one side with the gusset supports and the opposite side automatically updated which made the design process very enjoyable. I expected that I was going to have to mirror the changes manually but that was not the case.

I am at a stopping point with this design as I have to figure out what I want to do for the “skin” of this garage. I have options and I have to determine what I am going to do with my house so that the exteriors match. The thought of regretting a color choice and siding style makes me very uneasy so I must get this figured out before I buy the siding.

I am quite happy with the current stage of development. I have worked out a lot of my questions through the process of laying it out. I may have over designed much of it, or maybe not. I am not a builder but I have assisted with many other building projects so I am basing this off of my past observations.

As an aside. The Fusion 360 Android App is really quite nice. I have only used it for viewing thus far. There are measuring tools and annotation tools for design collaboration. There is much to learn about this mobile app yet but the novelty of it is certainly strong.

Final Thoughts

I really don’t know if Fusion 360 was ever intended on being used for “architectural design” or not but I had fun doing it. I can very easily made modification and extract the necessary dimensions as needed when I go to build this. Having the mobile application is nice for just looking at it as well and as I am picking up the lumber for it, I can look at the 3D model very easily and verify whatever it is I am thinking about.

I am still only scratching the surface of Fusion 360. The more I use it, the more I like it. I am very happy by the ease of use, and resource utilization of this application. It doesn’t tax my aging system much and the fact that the tools are intuitive makes working on projects very enjoyable.

References

Fusion 360 Lutris Installation
Fusion 360 on openSUSE Linux | Review
Fusion 360 Overview on Autodesk.com