Power Cycling PCIe Devices from the Command Line

I hate to say this but Linux software is not perfect. I know, I know, but nothing could possibly be wrong with openSUSE, right? Well, Linux and all the open source tools are created by people and since we are flawed, so are our creations. Sometimes, things can slip through the quality assurance process at openSUSE and however rare, they do happen.

The Problem

One of my problems that has shown it’s ugly head is an issue with the wifi driver. Sometimes, for whatever reason, it cannot authenticate. Another situation is, sometimes, you may have an issue passing a device to a Virtual Machine and it doesn’t come back quite right.

The Solution

In short, if you have a device on the PCI bus that needs to be removed and added again, there are some ways to do that. To get the PCI device ID, run:

/sbin/lspci

Take note of whatever your troublesome device is from here.

Method 1

echo "1" > /sys/bus/pci/devices/$NUMBER/reset

This should reset the device and have it behave, but as you may know from your experience in having used the original Nintendo Entertainment System, sometimes, it just isn’t good enough.

Example

echo "1" > /sys/bus/pci/devices/0000\:03\:00.0/reset

In my case, that will send the wifi network module to reset. It may or may not solve your issue.

Method 2

This one absolutely works. It is a bit more… brute force but it does indeed solve any issues I have.

echo "1" > /sys/bus/pci/devices/$NUMBER/remove
sleep 2
echo "1" > /sys/bus/pci/rescan

The sleep 2 is only necessary if you are copying and pasting into the terminal or creating a script. It is just a pause before it rescans the PCI bus. How I used it and I did create a script for this that I can invoke if I have problems.

Example

echo "1" > /sys/bus/pci/devices/0000\:03\:00.0/remove
sleep 2
echo "1" > /sys/bus/pci/rescan

Final Thoughts

Software isn’t perfect, I have historically had issues on more than one distribution with PCI devices requiring a reset. This method works with openSUSE Tumbleweed in the year 2019. If this should change, I will update this post.

References

https://unix.stackexchange.com/questions/73908/how-to-reset-cycle-power-to-a-pcie-device

Advertisements

Commodore 64 on the Internet with IRC | YouTube Edition

This is nothing more than a placeholder post and an announcement of a somewhat embarrassing example of my poor video editing abilities. I previously created a blathering about getting the Commodore 64 on the Internet with IRC and step by step instructions but under the pressure of one person (see how easily I am swayed). I made a short video about the process.

Feel free to watch if it you wish and if you want more low quality, low budget productions, let me know. I just may get to it. I need more practice with Kdenlive.

New Life to Rock Candy Gamepad for PS3 | Another Repair

I am not one to just toss something when it is broken. I want to give every piece of equipment a shot at another life whenever possible. Somethings do have to go to the big recycler in the sky but not without some kind of fight at my end.

I couple years back when I thrusted myself into the foray of “modern” gaming, I purchased two of these “Rock Candy” Gamepads from a local retailer. This was for my first Steam Game purchase, River City Ransom: Underground. They worked quite well but having kids with passion bubbles very near the surface, gamepads have a tendency to go flying or falling from time to time.

After some time of play, one had a fall too many and the plastic broke that held the batteries in place on one controller. Within a week, the other decided it would no longer turn on. Both controllers were put away into storage, until yesterday.

My oldest son asked if they could be fixed and I suggested that we could take the board from one and put it in the body of the other. He said he wanted to do it. I supplied some tools, provided just a bit of guidance and my 8 year old took the screw driver to task. I guided him on disassembly and used a magnetic bowl to hold the screws so didn’t roll away.

When he started to put it together, he asked how to do it, to which I gave the proper fatherly advice, “just like taking it apart, but in reverse!” Surprisingly, that was enough. I just made sure that the Left and Right Bumpers PCBs was correctly placed. He knew what screws went where and placed everything just right.

I double checked the screws to ensure that they were all snugged up properly, popped in some batteries and we were off to the races. There is only just a bit of confusion now as the blue controller now goes to the green dongle.

In another proud moment, my boy turned to a SNES emulator and played Super Mario All-Stars. Those old games are still fun to play today, even for the youth, which is a testament to the fun-gineering of yeaster-year

Final Thoughts

Technology is certainly a fun thing to play with but it is so much more fun to pass on the joy of owning your technology to your kids. The amount of confidence my boy has earned through this exercise is worth far more than the cost of both of the controllers. I am hoping this sparks a flame for a passion for technology, not just in using but in creating and imagining new ways to use technology. I am quite sure that his abilities that will far surpass my own.

Three Drives on my Dell Latitude E6440 | Cuz Two Isn’t Enough

This laptop of mine that I purchased just over two years ago has the ability to have 3 storage devices. I have previously described what I’ve done in it with an mSATA and the 2.5″ SSD. Between the two, I have 995 GiB of storage, 101 GiB for root using the mSATA and 894 GiB on the 2.5″ drive. That was fine and all for normal things, but VMs do require a lot of space and so a lot of space I needed. Although I do often use my optical drive, it’s not as often as I use VMs so I decided to get a caddy and install a third drive in this 14″ chassis laptop.

Here is a short video on how simple the process is… and another reason to play around with Kdenlive. In short, adding a hard drive is as simple as:

  • Insert the drive into the caddy
  • Secure the drive using the set-screws but be careful to not over tighten
  • remove optical drive from the computer and insert hard drive (SSD) caddy into bay
  • Bob’s your uncle

Really… why?

The main reason is, I need more space for virtual machines. I’m sure for normal people the two drives is more than adequate but I have to play. Most people would probably just clear out the old virtual machines after they were done but I am guilty of data hording and probably need to get that under control. I also don’t have much interest in wiping or possibly interfering with how my laptop is running as openSUSE Tumbleweed works so fantastically well on it.

My process is, I try out the Linux distribution virtually to obtain some general impressions, test out a few things, check the memory usage and so forth. If I find it exceptionally interesting or want to test a use case, I take it to the next level and put it on some hardware. I find it a more efficient use of my time to do my first round of testing virtually before I meddle with the metal.

It also doesn’t help that I am more likely to use Virt Manager with Qemu which uses Qcow2 drive images and they take up more space than VDI images from VirtualBox. Since I tend to get a better feel for the distribution using Virt Manager, especially with Gnome based desktops, I am more likely able to give them a fair shake. Consequently, I need more storage space.

The drives are all still too full which might mean no matter the amount of storage, I will use it up.

Final Thoughts

Despite the fact this laptop is older, I can’t seem to find another comparable 14″ machine that has the drive flexibility that the Dell Latitude E6440 has. I do wish it had some kind of refresh to allow for a faster CPU with lower power utilization but that is just not the demands of typical users these days. For now, I will continue to use this laptop as I have intended. If I do another modification to this system, it will likely be to upgrade the CPU to the highest performing 35W TDP processor that is available.

References

Hardware Thing Video on YouTube
Dell Latitude E6440 Running openSUSE Tumblewee

Noodlings | Building and Converting

This is my fifth noodling and I did cut a few things. I will be playing with the length but this is about 13 minutes of my nonsense to chip tunes.

The 5th noodling installment can be found here

Commodore 64 IRC Success

I was able to get my Commodore 64 under its own power to access the IRC chat rooms, specifically the BigDaddyLinuxLive room where I was able to chat with such folks as Bill, Popey, Chris and another Allen. It is very satisfying experience. More on that here:

Commodore 64 on the Internet | IRC

Tech in the Courtroom

I recently had jury duty and the courthouse in my small-ish community, Windows 7 which is near end of life. For each bit of evidence, they used CDs and DVDs to store each individual item as evidence.

Building a Computer

I am building a computer for the first time in a very long time. I want to do it on a budget. I received some components at no cost to me, the case and motherboard so that drove the purchasing of the rest of the products.

Motherboard MSI 970A-G43

AMD FX-9590 CPU

Memory, 32 GiB DDR3 1866MHz

Video Card RX570

Storage 6x 2-TiB drives

1000 Watt Power Supply

Rather large case

All for about $350.00

More on this in the future.

Acer AspireOne Netbooks

Recently Set up two AspireOne Notebooks with openSUSE Tumbleweed using the Xfce environment. Initially one had had 1 GiB of RAM but an SSD, the other with 2 GiB of RAM and a slightly faster CPU but with a traditional hard drive.

https://cubiclenate.com/2019/09/29/acer-aspireone-d255-with-opensuse-tumbleweed-xfce/

Making Meringue from Egg Whites

Told after the fact two points of advice, whip the egg whites before you add the sugar, contrary to the directions and questioning whether or not there was any amount of egg yolk.

BDLL Follow Up

Manjaro is the current Distro Challenge… It’s Arch based so…

Eric Adams talked about how people can get “bug apathy” when they experience a problem on Linux or other open source software. know that I am guilty of that.

Bug reporting is something we Linux or free and open source software users should do. The vast majority of the software I don’t pay for, it’s open source and I believe that I have a social contract with these developers and maintainers to either help with the project or donate to it.

BigDaddyLinuxLive | 28 Sep 2019

openSUSE Corner

Tumbleweed Snapshots 20190918 20190920 20190921

PulseAudio 13.0 arrived which improved initial card profile selection for ALSA and improved 5.1 surround audio when set up.

LibreOffice 6.3.2.2 package received some stability tweaks and addressed two CVEs

Bash has been updated from 5.0 to 5.0.11 wich includes a minor update to bash to change POSIX mode behavior.

The Mesa 3D graphics library was updated to 19.1.7 wich fixed a Kwin compositor crash as well as cleaned up a few other bugs

The Python development tool Swig 4.0.1 added Python 3.8 support and fixed some regressions that were introduced in the 4.0.0 major release.

Plymouth added a time delay of 8 seconds to fit an AMD graphics card for graphical boot animation.

Mozilla Thunderbird was updated to 68.1.0 which eliminated some bugs, one of which is a CVE-2019-11739 that allowed for a Covert Content Attack on S/MIME encryption.

The file searching utility, Catfish 1.4.10, added some new features and cosmetically improved the application menu to make better use of space, padding and margins.

The snapshot reviewer gives a score for 20190918 of 90 for moderately stable; 20190920 a score of a stable 95 and 20190921 a stable 97.

Co-Conference Logo Competition for 2020

LibreOffice and openSUSE communities are having a joint conference next year in Nuremburg, German. For this special conference, they are having a logo competition. A logo is believed essential for the conference and they want to visualize both communities during this co-conference. LibreOffice will celebrate its 10-year anniversary and openSUSE will celebrate its 15-year anniversary during the conference.

Co-Conference Logo Competition for 2020 Post

Election Committee Set to Open Vote on Project Name

There have been discussions about the “openSUSE Project logo & name change” that started in June 2019 on the openSUSE Project mailing list. The Election Committee received a request from the Board to conduct a vote whereby openSUSE members can indicate whether they are for or against the project name change.

The voting will start on Oct. 10 and end on Oct. 31, which will provide three weeks for members to vote. The result will be announced on Nov. 1.

The voting exercise is limited to openSUSE members only.

Commodore 64 on the Internet | IRC

The Commodore 64 was my first computer and as such, now holds a special place in my heart and probably forever more, or at least until I lose my mind completely. In all the years I had a C64, I never visited a BBS as I didn’t get that bit of tech until I got my Commodore Amiga 600. Due to the wonders of the Internet, and a global effort to keep these old machines relevant from guys like The 8-Bit Guy, Perifractic Retro Recipes, Retro Man Cave, Dan Wood, LGR and so many others, I was inspired to take the time to make my Commodore 64 more than just a stroll down vintage lane for me. I have seen others make use of it for writing and developing new games and such for it but how could I incorporate it into my life was the question. That answer, IRC, it must do IRC.

So, lets use the “scientific method” on this as I make my kids do it, so why not force myself to do the same.

Purpose

Make use of my beloved Commodore 64, my first computer, in some practical way. I am going to use “practical” fast an loose for this. I have seen many examples of using the Commodore 64 in some sort of networked fashion but I wanted to see if I could have it serve a specific purpose. Chat on IRC, Connected through the Ethernet into my home network using it’s own power and capability.

Hypothesis

I think I am able to get the Commodore 64 to access the IRC function on the Internet without having to telnet into another server as a bridge to make it happen. I also think this is going to be a bit of a headache and everything is going to fight me along the way.

Materials

Here is my list of “materials” in order to conduct this experiment.

Commodore 64

This computer has a whopping 64K of memory to which, in it’s time was an extraordinary amount of memory, generally about 16 times that of its contemporaries at the time. If you know anything about the Commodore 64, nothing I am going to tell you here will be new. If you don’t know much about the commodore 64, this is a great video on YouTube with a great breakdown of the chip design.

SD2IEC drive

Purchased from The Future Was 8-Bit, this is a fantastic device that came included with an 8 GiB SD Card filled with all kinds of goodness. It is a joy to use and makes for reliving the Commodore 64 history so much more enjoyable. Although, you don’t get to enjoy the warm purring the 1541 5¼” Floppy Drive, this is a more practical and sustainable solution. If you purchase newer software for the C64, they usually build it to be compatible with this device. It was a great deal and allowed me to be able to use the .d81 image Contiki OS image that will be described below.

RR-Net MK3

This is a 10Mbit network card from icomp.de that comes form a rather long line of similarly designed devices. This is said to work with Contiki, Codenet and WarpCopy. The nice feature of this card is that it can be used as a stand alone or on a Carrier Card so that you can add this “feature” to another device like the MMC Replay or Chameleon. This will not work with a C128, SX-64 and very old C64 main boards. I don’t have a “very old” main board (just really old), so this works fine with my computer.

Wired Ethernet line

There really isn’t much to report here. I just made a cable and strung it from my router over to the Commodore 64. It is neat to see the flashing activity light when it’s running and doing it’s network activity.

CRT display

Why a CRT? To be more genuine to the period in which it came from? No, it is because it is what I have and it should also be noted that this is an old SVGA, CAD monitor that I once used for such activities. Now it serves are more noble function as my “retro corner” display. I have a ViewSonic that converts the S-Video and Composite signals to SVGA.

Contiki OS

Software package that is accessible from here on GitHub that comes in a few different builds. I used the .d81 image as that would eliminate the need to swap disks, or at least the risk of me screwing up the process of disk swapping should that become necessary.

Procedure

Assemble the components, plug the computer into a working Ethernet line and attempt to get online to chat in an IRC room. The intent here is to use the Commodore 64 as the client, not to use any other machine as a spring board.

Results

The results are mixed but I am going to break it down a bit so that you can replicate it and adjust the process to fit your situation.

Since I have the SD2IEC, I used the .d81 image and put it on the root directory of my SD Card that is in my SD2IEC. Why the root directory? Just to make it quicker to access it.

With the RR-Net MK3 installed in the cartridge port, the start screen is quite different, displaying information about the card. With the SD2IEC connected and the SD Card inserted, I loaded the drive management software which is a simple interface for navigating the contents of the drive. After all, it is 8 GiB of storage so the traditional methods are a bit cumbersome in this regard.

There are two applications that you have to run before you can begin doing the IRC you have to set up what is the “Ethernet device” and set the IP Addresses.

I am not sure if it is critical to do them in any particular order but I started with ETHCONFIG to set the Ethernet device.

Once it is set, all you can do is power cycle the machine to perform the next step. That means, enjoying the lackadaisical loading times of the Commodore 64. Even with an SD Card… not real fast.

Next was to run IPCONFIG to define the IP addresses of the Contiki OS. To navigate up and down in the fields, use the F5 and F7 keys. ENTER to select Save & Close

After this ready prompt, you will have to power cycle the machine once again to load the IRC application. The first run of this, I went for just IRC as opposed to IRC80 as that 80 means column and I like the C64 font.

When the application completes loading from the SD Card, you are the prompted for the IRC server and nickname. Using F5 and F7 to navigate up and down will take you to each of the fields and RETURN to Connect. I want to note here that you must write your IRC nickname in all lowercase and numbers. If you use any uppercase numbers, the IRC server will not be able to recognize the characters.

It will take just a bit but you will see the typical IRC “chatter” fly past on the screen.

Well… I wouldn’t say “fly past” for this. More like trot steadily through. To join a channel enter

/join #<room name here>

In my case, I decided to join the #bigdaddylinuxlive room because, why not? I know the people there, they are friendly and I knew that someone would get a kick out of it.

I made some observations that whatever you type into the prompt, whatever case it is, will be displayed as all uppercase.

I further compared it against what I see in comparison between the Qt based IRC application Konversation. How would it be displayed to “normal” or I guess, “modern” clients.

I was able to see that the Commodore 64 client could only send all lowercase characters, display it locally as Uppercase characters but be able to receive a mix of characters. I thought it all to be quite interesting.

I did test the 80 column mode of the IRC client. It did indeed work and was readable but but I have had it crash on me a few times. I can’t say as to why so I have decided to stick with the 40 column mode for now.

It should also be noted that the screen scrolling is quite a bit slower in this mode. Not terrible, just quite noticeable. The

Conclusion

The Commodore 64 is very much able to, under it’s own, power, unmodified with the additional components is able to access the Internet and perform communication in IRC chat rooms. It does work better in 40 column mode than it does 80 column but is very usable.

Getting online with the Commodore 64 to hang out in IRC chatrooms is really quite a satisfying experience. The fact that it is a computer from an age before the internet and when BBS systems were in their early stages, having the ability to plug an Ethernet line into it and with a little configuration was able to get onto the World Wide Web… of sorts, at least a part of it.

Final Thoughts

I am impressed that I am able to do this much with an unmodified Commodore 64. I am quite impressed that with 64 KiB of RAM, it is still a productive and usable tool. It is quite single purpose but absolutely useful.

I want to note that the web browser does work in this Contiki OS but not with HTTPS so that is out. It does make requests as you would expect and I think I just may revisit the rest of this on another blathering at some point in time.

Future plans, I really want to be able to telnet into a Linux machine with the Commodore 64, I have some other hardware and software I want to try out with this machine to see what other greatness can become of it.

References

Contiki OS for 6502 based computers from GitHub
25c3: The Ultimate Commodore 64 Talk
RR-Net MK3 from icomp.de
The Future Was 8-Bit SD2IEC Drive

Intellivision | A New, Family Friendly, Console

intellivision 2020

I grew up with the Atari, Intellivision and Commdore 64, I still have them and they still get some play time. Anytime I see some sort of related retro tech, I am immediately interested in knowing more. Recently, I stumbled upon a new Commodore 64 main board, now I have stumbled up on this, a new console from Intellivision. It is scheduled to launch  on 10 October 2020 at the price of US $149 – $179.

I am very intrigued in this as for me personally, the game I enjoyed the most was “B-17 Bomber” with the voice synthesis module and secondarily, “Burger Time.” I have many, many logged hours on this console.

intellivision-01-sm

Interesting Facts About the Intellivision

This sparked me to do some reading about the original system. Until recently, I was unaware of several things. It was the first 16-bit console. The CPU was a General Instrument CP1600 clocking in at about 2 Mhz. It had a 3-channel sound chip with a noise generator which was essentially “borrowed” from arcade machines of the time.

The Intellivision was the very first game console to offer “downlodable content” through their PlayCable service. The adapter connected into the Intellivision cartridge port which added the capability of downloading games through a cable TV subscription.

Intellivision-02-Cartridge Port-sm.png

The Intellivision also kicked off the first “Console War” against its rival, the Atari. I think they are all friends now. Not sure if there is still a war going on between the modern consoles or if they all get along. I’m a bit disconnected there and I don’t care to research it.

In a sense, the Intellivision started us down a path that makes me generally dislike so much about the industry, downloadable content… console wars… irritating commercials… But I still have much admiration and a warm place in my heart for the Intellivision.

New Console Specifications That Caught my Eye

Not surprisingly, All games are targeted and rated for E as in Everyone. They are going to resurrect the PlayCable of sorts as games are downloadable at the price of $2.99 to $7.00. Instead of a cartridge, they are including WiFi and Ethernet Connectivity. The launch will include several build-in reimagined Intellivision classics and at least 20 more games through the Intellivision Online Store.

It comes with 2 Bluetooth controllers with wireless onboard charging but the system is capable of up to 8 players. Each controller has a 3.5 in, 2:3 aspect ratio, color touchscreen, speaker and microphone. There will be a free downloadable application which will enable mobile phone usage as additional controllers.

This system will have an “Expansion Interface” and the ability to purchase additional software, presumably to include 3rd party. Although, not explicitly written the authors of the additional software, I am sure there will be an SDK released at some point. There isn’t any mention of the specifications of the Expansion Interface but I do hope it is something that is industry standard.

Why I am interested

My initial interest stems from the fact that it is a nod to the technology I grew up with. The creators of this machine are not only taking cues from the original but are taking modern technology and concepts that are interesting. On one side, the controllers for the Intellivision were great because of the matrix of buttons and interactions with games, on the other side, they were also kind of clunky and you had to look down at them a lot, even after you got used to them because you couldn’t feel were specific buttons were unless you didn’t have the game-specific overlay on the controller. This touch screen enabled controller, although wireless, might be just as great and useless and regardless, I think it will be fun to play. Including your mobile device as additional controllers could make for some very interesting game play too. I am very interested in how they accomplish this.

Wii No Longer SupportedSince there is software that can be downloaded, what I am really hoping, although have no reason to believe it to be available, is a video streaming box as well. Currently, I still use my Wii to watch Netflix until the end of the month and will have to replace it at some point.

The Nintendo Wii was, in my estimation, the best gaming console ever produced with the Wii U being a very close second. Perhaps a slightly different execution of the Gamepad could have made the Wii U brilliant. This new Intellivision could potentially have something like 8 Gamepads with none of them being the required primary controller. This could be the direction the Wii should have gone.

I really want this to be a media streaming device with some kind if similar interaction I have between my Android phone with KDE Connect to the Plasma Desktop. The specific feature is using the mobile phone as an input device to the computer. Something like that would be pretty fantastic and handy. This would also make the Intellivision the most compelling new gaming console I have yet seen.

Final Thoughts

I am a fan of pretty much any kind of retro tech. The particular systems that interest me most are those that were influential in my youth. The Intellivision was not as influential as the Commodore 64 but it is a system that brings a giant smile to my face.

I am going to be watching this project with great interest. I am hoping that it will develop into the product with the feature sets I desire enough to spring that $149 – $179 for the machine. I am very interested in seeing how they can make it old and new in the same stroke. So far, they are saying what I want to hear and I am excited.

Further Reading

Intellivision Entertainment

General Instrument CP1600 at Wikipedia

Ultimate 64 | A New Commodore 64 main board

KDE Connect – Mobile and Desktop Convergence

Nintendo is Suspending Netflix Service to the Wii

KDE Connect Remote Keyboard

Ultimate 64 | A New Commodore 64 main board

i heart commodore-64

I am a Commodore 64 enthusiast. It is still my favorite computer system ever made. My childhood initiation into the computer world was through this machine. I dreamed of making an “Ultimate” Commodore 64 with sketches and specs with all kinds of nonsense. Today, my Commodore 64 sits beside me in my SuperCubicle with an SD2IEC drive from TheFutureWas8bit.com and an Ethernet adapter from Individual Computers. There is a back-burner project that has been on going with my C64. I hope to be able to get all that to a point that it is worth talking about.

 

Recently, I stumbled upon this very interesting bit of hardware. It is a replacement main board for the Commodore 64. It’s called the Ultimate 64. According to the site, it is a hardware implementation using FPGA of the entire C64 and it includes the Ultimate-II+ solution so a kind of all-in-one machine with the latest “enhancements” as it were.

ultimate64-motherboard-sm

Features

No more is there an RF modulated output. The original component remains but now there is an HDMI output. There is even a mode to emulate the CRT feel on a modern screen. That probably won’t be how I’d use it but most certainly the HDMI output will be used.

An upgraded yet compatible audio system is built in. It has an 8 voice SID implementation as well as 7 voices of sampled audio in 8 or 16-bit samples of up to 48 kHz sample rate. There are open slots to put in original SID chips if you so choose.

ultimate64-sid-sm

It still accepts cartridges and you can set the machine to have the RAM Expansion Unit (REU) of up to 16 MB. How they get that to work is a mystery to me since the 6510 can only address 64KB of RAM. Some sort of bank switching… I guess… according to this. How they do that sounds like some magic to me.

A bunch of C64 cartridge emulations to include the Epyx Fastloader, Retro Replay and many others.

Flexible Freezer menu that allows you to select, mount and create D64 (the native Commodore 64 disk images).

Most importantly, are the little upgrades that make me smile, 3 USB ports, Ethernet and even Wifi. I am interested in seeing what fantastic software creations will come of these little upgrades, especially those that would make use of Commodore 64 networking.

ultimate64-ports-sm

It can still make use of the original disk drives, if you so choose. Also note, there is no userport on this board. There are headers, however so that you can either create a cable to userport or eventually one will be released.

Commodore 64 Unix

Although it hasn’t been updated since 2004, there is a project on Sourceforge called LUnix, meaning, Little Unix. It is a preemptive multitasking operating system for the Commodore 64 and Commodore 128 with dynamic memory management. It supports TCP/IP networking has a terminal with basic support for shell scripts and quite a lot more. It gives me pause to think, there is much, much more than my C64 can do, especially if you were to run it on a modernized implementation like the Ultimate 64.

I did try running the latest version, v0.21 but I got a kernel panic. Due to a lack of time, this is something I will revisit at another time.

IMG_20190107_161808.jpg

Final Thoughts

I am really excited to see this rather fantastic bit of innovation for the Commodore 64. This certainly keeps the platform alive much longer and maybe even see it morphed into something that is even more capable without losing the charm of the original machine. I will be interested in seeing what new and wonderful creations will come of this enhanced breed of Commodore 64s. Today, I have two disabled machines due to hardware failures I cannot diagnose. I am thinking the Ultimate 64 might be my course of action to get one of those machines operational once again. Every house needs at least two functional Commodore 64s, right?

Further Reading

https://ultimate64.com/Ultimate-64

https://www.thefuturewas8bit.com/

https://icomp.de/

LUnix Project Site on Sourceforge.net

https://en.wikipedia.org/wiki/Commodore_REU

Commodore 64 CubicleNate Page

openSUSE Linux on a Dell Inspiron 3646 | Low Budget Multimedia Configuration for a Small Church

Churches generally have no budget for technology and frankly, I don’t think that a church should really avoid spending on technology as much as possible. I’m sure this isn’t a view many people share but it is my view. I believe it using whatever is available whenever possible and only making upgrades or purchasing new hardware when it is absolutely necessary.

There are several pieces of equipment in varying states of age and functionality. I haven’t sorted out everything, yet, and it is also not completely on my shoulders, as another tech and audio enthusiast in the church, Phil, has taken care of the audio equipment. It is all a work in progress.

My focus, for now, is to restore multimedia capabilities of the computer, Dell Inspiron 3646 and even improve it somewhat. Upon my initial assessment, I knew what my first steps were.

The Problems

Dell Inspiron 3646-04-System.jpgThe machine originally came equipped with Windows 10 which would annoyingly upgrade at the the most inopportune time and using it on under powered hardware is often problematic. The few times I spent any amount of time on the machine, it didn’t perform very well but it was working and I wasn’t really interested in thrusting the greatness of Linux on those not ready for it.

At some point in time, the system fell into disarray and I was recently asked to see what I could do to make the computer functional. Phil had already made the sound system functional enough to be used so it was my turn to make the computer functional.

Like it or not, sometimes your volunteers have things come up and just don’t make it in one day leaving the available workers short handed. Back in my days of childhood, multimedia meant slide show or overhead projector, but it’s hard to convinced a 20 something pastor that the right investment with no budget is a slide projector…

The Limitations

A budget of zero, or rather, whatever I am willing to dig up to make improvements. Since I had already been informed there is no budget for any upgrades or equipment, I was only going to do what was necessary to make the computer system as functional as possible. I already knew, with the power and capabilities of Linux, I could make substantial improvements very easily.

Here is the hardware I have to work with:

  • Dell Inspiron 3646
  • Intel Celeron CPU J1800 @ 2.41 GHz
  • 4GB RAM
  • Single Head Video Output
  • A bunch of other audio equipment with which to integrate

Preparing the Installation

I prepared a USB drive with openSUSE Leap 15.0. I downloaded the ISO from here and put the image on an ISO using SUSE Studio Imagewriter. Once the image completed writing, I inserted the drive into the Dell Inspiron 3646 and powered it up.

In order to access the BIOS, when the machine is going through the POST process and you are greeted with the Dell Logo, press F2. Since openSUSE is capable of handling secure boot without issue, I didn’t have to change anything. I just wanted to be sure that the BIOS was picking up the USB drive and I wanted to see the main screen so I could record the main bits of the hardware.

Dell Inspiron 3546-01-BIOS

I set this machine up with KDE Plasma because, is there really another choice? I mean, yes, of course there is but I didn’t want to have to fiddle with anything to get the features I wanted so my only real choice was of course going to be Plasma.

Since I like what I like when setting up the partitions, I did it manually to my preferences. I prefer the swap partition over the swap file and I am using BTRFS on root with snapshots enabled. BTRFS has been a rock solid performer in this capacity. I use XFS on /home. I was going to use Ext4 but the only reason for that would be for Dropbox compatibility and frankly, I just stopped using Dropbox due to their technical shortcomings.

Dell Inspiron 3546-02-partitions

After boot up, the system was all set. It required a few more software packages, firstly, the Plasma Browser Integration. In terminal:

sudo zypper install plasma-browser-integration

It actually may not be necessary to have to explicitly install this software package as the desktop it is supposed to automatically ask you if you want it installed.

Next I installed the Plasma Add-on for Firefox.

Plasma Integration Add-on

Finally, I installed all the Codecs and VLC into this machine using my multimedia codecs and VLC player instructions for Leap 15.0.

The last bit to configure was KDE Connect. Initially just with my Android phone, mostly for demonstration purposes. I also was presented with an opportunity to do a “live test” as well.

After some tests, it all worked just as expected and the machine performed much better than it did previously… exceptionally better… Not to belabor the point but before the machine was rather sluggish and I didn’t expect anything fantastic but this machine really does perform fantastically well.

Changes and Upgrades

This machine has only one VGA output and it was previously set up with a splitter cable that when plugged into both the monitor and the projector, the output would shut down. I don’t know if that is how it has been used or not but I determined it needed a proper splitter. I picked one up, hooked it up and I now have a unified output between the screen and projector.

VGA Splitter.jpg

I actually thought that this machine was going to require more memory to function well enough but it isn’t necessary at this time. This machine isn’t being taxed at all. KDE Plasma, even with all the fun I was running did not tax the machine at all.

How it’s working now

I am sure that there are a few more “bugs” to be worked out, mostly with the human to machine interaction. Mostly, I need to properly document the process of turning it on and off the system properly as well as how to pair Android phones or tablets to allow other workers to use the KDE Connect features. I have helped two people completely unfamiliar with KDE Connect, use it and it be impressed with it.

The feature that stood out the most was the ability to share a YouTube URL from the phone directly to the computer to have it open immediately and play. A feature I have enjoy for quite some time and have become quite accustomed was new and exciting to the unfamiliar. The multimedia controls, also quite handy and when I demonstrated the ability to use the phone to switch slides on LibreOffice Impress using only the volume keys, all well received

I still need to create some documentation to allow anyone to be able to use it without my direct intervention. For now, I am going to make myself available to help people become accustomed to this “new” system.

Future upgrades

Since some of the volunteers do Add a dedicated “burner” tablet so that volunteers don’t need to install KDE Connect on their phones. After I was reviewing some of my photographs, I noticed that there is an HDMI port on this computer. I am going to see about adapting that port to VGA and for multi head capability. The next upgrade would be a memory upgrade. 4 GiB of RAM, although good enough for now it would be nice to to have just a bit more. I haven’t opened the machine up but I am guessing there are at least 2 slots and one of them filled and the other is open. Of course, I need to check for certain before I start buying hardware.

Not directly related to this computer, there is a need to make further refinements to the attached sound system and determine what the issue is with the lighting control system.

Final Thoughts

The Dell Inspiron 3646 is a fine machine that, in my estimation has many years of service ahead of it. I have to say, once again, how amazing it is how much more efficient Linux is than Windows on less capable machine. The  computer’s functionality would greatly improved with a second display.

The sound system to which it is connected and the lighting controller are going to need a bit more attention. I am not sure exactly where to start or if I should even be the one to touch it. There is an annoying 60 Hz hum that needs to be eliminated. Then there is the matter with the lighting controller. Currently, it does nothing, no lights work. I am not sure yet where the breakdown is but I will figure it out eventually.

This is only the first in many steps to slowly making the information system situation in the church better. This is not the “main effort” in the church which is perfect for me. No budget, no attention and no one else that interest in finding solutions.

External Links

openSUSE Leap Download

http://philoangelo.blogspot.com/

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

https://en.wikipedia.org/wiki/Power-on_self-test

Multimedia Codecs Terminal

 

ltunify | Tool for working with Logitech Unifying receivers and devices on openSUSE

I recently became increasingly annoyed using the Touchpad portion of this wireless keyboard. Touchpads just are not as efficient as a real mouse. The touchpad is fine for very simple navigation but for doing anything that requires much traversing around the screen combined with much left and right-mouse button clicking is almost unusable. Maybe if this keyboard had real left and right mouse buttons, this wouldn’t be so bad.

Microsoft Wireless Keyboard Touchpad.jpg

I happened to have an orphaned Logitech receiver doing nothing in one of my many drawers of horded electronics. All I needed was a mouse to pair up with it. Since this one is one of those Logitech Unifying Receivers, all I needed was a Logitech mouse that was compatible with it. I went to my favorite place to buy used electronics, eBay, to get the cheapest thing I could find. I came upon a Logitech M185 Wireless Mouse which I ended up winning for $3.00, so a great deal.

Logitech Unifying Receiver and M185 Mouse.jpg

Next, I had to pair this newly acquired mouse with my Unifying Receiver. To do so, I needed to install the Ltunify application.

Installation

Like nearly everything on openSUSE, installing software through the official, experimental or community repositories is easy to do. The easiest method is using the one-click installation from here:

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

Or if you prefer the terminal, which I happen to, you will have to add a repository then install the application.

Repository for Tumbleweed

sudo zypper ar http://download.opensuse.org/repositories/hardware/openSUSE_Tumbleweed/ Hardware

Repository for Leap 15.1

sudo zypper ar http://download.opensuse.org/repositories/hardware/openSUSE_Leap_15.1/ Hardware

Repository for Leap 15.0

sudo zypper ar http://download.opensuse.org/repositories/hardware/openSUSE_Leap_15.0/ Hardware

Refresh all repositories

sudo zypper ref

Install the application

sudo zypper in ltunify

Application Usage

Once the application is installed, I just typed ltunify -h in the terminal to see the help and gain some understanding on how to use this.

# ltunify -h
Usage: ltunify [options] cmd [cmd options]
Logitech Unifying tool version
Copyright (C) 2013 Peter Wu <lekensteyn@gmail.com>

Generic options:
-d, –device path Bypass detection, specify custom hidraw device.
-D Print debugging information
-h, –help Show this help message

Commands:
list – show all paired devices
pair [timeout] – Try to pair within “timeout” seconds (1 to 255,
default 0 which is an alias for 30s)
unpair idx – Unpair device
info idx – Show more detailed information for a device
receiver-info – Show information about the receiver
In the above lines, “idx” refers to the device number shown in the
first column of the list command (between 1 and 6). Alternatively, you
can use the following names (case-insensitive):
Keyboard Mouse Numpad Presenter Trackball Touchpad

From here I could see that this was going to be super simple. As root, I ran this

ltunify pair

Then turned the mouse on immediately. As soon as the mouse paired the terminal returned to the command prompt. To verify the mouse was paired, I ran the command

ltunify list

To which I was happy to see that the new mouse was now paired along with the broken mouse I once had.

Devices count: 2
Connected devices:
idx=1   Mouse   Performance MX
idx=2   Mouse   M185

To remove that device no longer being used, that is just as easy as pairing

ltunify unpair 1

Now my receiver is happily paired exclusively with the new mouse for my Kitchen Command Center Computer and I am no longer encumbered by a buttonless touchpad, navigating around a spreadsheet, document or anything of that nature.

Final Thoughts

Logitech is pretty awesome for having this Unifying Receiver device. It makes losing a dongle to a Logitech mouse or keyboard not such a big deal. It even frees up ports as you can have one receiver paired with 6 devices. That, in my opinion, makes Logitech devices more valuable than others and so long as they keep up with this convenient-for-the-user focus. They will keep my business.

Further Reading

ltunify from software.opensuse.org

Logitech Unifying Receiver

Kitchen Command Center Computer: Dell Inspiron 20 3048 All-In-One Desktop

ltunify on GitHub