Wii Console Repair and Homebrew Hack

Wii_console_Hack.png

The Nintendo Wii, in my belief, was the best video game console ever created. It was a very popular family-unifying gaming counsel. Instead of the typical behavior of the gaming system monopolizing a single person’s time, this brought family together much like you would have on family game night. A vehicle of interaction. The Wii moved game night from from the dining room table into the living room.

I have had a Wii since… I think 2009 or 2010 and at some point in time the Optical Drive stopped reading discs. The machine was relegated to streaming Netflix and Amazon Prime videos only, but that changed recently as I wanted to crack open those dusty Wii game cases once again.

After doing some research I found that there are two types of drives that can be used in the Wii; One that is Wii discs only and the other that does Wii and GameCube discs. The latter being more expensive but regardless, I purchased a drive that was GameCube compatible of approximately $20 on eBay.

I have yet to play a GameCube game on the Wii but I plan to give one a spin, eventually.

If you would like to repair your Wii, see this video, it worked very well for me. Lots of little steps but nothing complex. To put it back together, just reverse the steps. My advice on taking it apart is to take a piece of tape, place it sticky side up and use that as a kind of timeline for screws you remove so when you go in reverse you don’t grab the wrong screw.

The only real issues I had with the disassembly / assembly process were screws in precarious places.

DSC06582.JPG

And ensuring that the rubber grommet for the DVD drive was properly assembled onto the chassis. Rubber has a way of doing what it wants which isn’t always what you want.

Wii Repair-03.jpg

Once the machine was back together, it was working just as expected but since Nintendo has abandoned this piece of hardware, it was time to make some improvements to it.

Expanding the Capabilities

Since I do like the Wii very much, it makes me a bit sad about it’s state of abandonment but that is the way of things. I set out to expand the capabilities beyond what Nintendo envisioned so that I can do more with this machine. Very clever people have made it easy to add homebrew software to the Wii through what is call the Homebrew Channel.

The first step was to do a non-hardware modification. Using LetterBomb to enable the Homebrew requires only an SD Card and some way of transferring data to it. In my case, a Linux Laptop. Once you extract the contents and put it on the SD Card as outlined here, put it back in the Wii. There you will have a new message in the Message system on the Wii. Upon opening the LetterBomb in Messages, the system will drop down to a console and run a script that will add the Homebrew capabilities. It’s pretty simple and it sets the system up without any further user intervention.

Wii Media Center

There is no point in having the Homebrew Channel without homebrew software. My first task was to add the capability to Watch DVDs. A feature that Nintendo, irritatingly, decided not to include. To install the Wii Media Center follow this link:

http://www.wiimc.org/documentation/

I chose the New install of the WiiMC and simultaneously installed the WiiMC Channel 2.0. I downloaded the files to my Wii project folder on my computer and extracted the Zips.

Since I am using KDE Plasma, I extracted the zips as such using the Dolphin File Manager:

  • Right-click > Extract > Extract Archive Here, Autodetect Subfolder
  • That created a folder called apps and two subfolders: wiimc and wiimc-channel-installer
  • Copy the extracted folders into the apps folder on the SD Card used for the Wii.

On the Wii, Open the Homebrew Channel run the applications you just copied over. Just that simple.

WiiMC Start Pic

Now, I am able to play DVDs, seemingly without any issues. I have played a few DVDs, yes, I still buy DVDs. So far, I have only noticed one DVD with an issue. When I popped in “Star Wars: The Last Jedi”, I did get some herky-jerky playback, I am assuming due to the encryption used on the disc.

I can now play media files directly from a USB Drive or SD Card but it has proven itself to be a bit touch-and-go. Some files played very well and others not so well. I will have to investigate further about which files played better than others. At this point, I don’t know if it is the file format or the resolution of the video.

Next Steps

I intend on expanding my Wii’s capabilities into more of a retro gaming console. I have purchased a few games from the Wii Store back in the day but as of today, the selection has become very limited they have already stopped accepting payment for more credits on the Wii Shop Channel. The only solution I see is fit, going forward, is using the Homebrew Application method of adding emulators and games. I have been told that the Wii makes a great retro gaming station and I plan to follow up on that portion of my exploration of the Wii Homebrew Applications.

Final Thoughts

Looking at the dates of many of the Homebrew software titles, it looks like much of it is not being maintained or at least hasn’t been updated in several years. My guess is that the Wii is falling out of popularity, even for the homebrew scene. It is unfortunate because I believe to still be a very capable entertainment platform. I do hope that Netflix continues to support the Wii as a platform for streaming as I know Amazon Prime is planning to discontinue their service sometime in 2018. Very soon all that will be left to use on the Wii will be the original optical media titles and the large array of Homebrew software. As it goes with technology, this too has been superseded by the new and shiny so this fine piece of hardware is slowly being abandoned.

External References

Disassemble Wii YouTube Video

LetterBomb Homebrew Exploit

WiiMC Documentation

Dell Latitude E6440 all on SSDs

e6440-01-sm

I have wanted to upgrade the 500 GB SSHD hybrid drive in my Dell Latitude E6440 since I purchased it but i just wasn’t prepared to spend the asking dollars for a new SSD. The only adequate solution I determined reasonable was to go with a used SSD and just accept the risk that goes with used.

After much searching and bidding, I purchased a Micron M500 with 960GB SSD which ends up being 894GiB of storage. When it comes to SSDs this is NOT, by any stretch, considered top of the line. Here are the specs that many seem to be fixated.

  • Sequential 128KB READ: Up to 500 MB/s
  • Sequential 128KB WRITE: Up to 400 MB/s
  • Random 4KB READ: Up to 80,000 IOPS
  • Random 4KB WRITE: Up to 80,000 IOPS
  • READ/WRITE latency: 5ms/25ms (MAX)

Not the most performant drive but certainly much faster than the SSHD that I was using. If you are interested, here are the full specifications from Micron on this line of drives.

Since I already put the root and swap file system on a 128 GB mSATA SSD with very positive results, I was encouraged about how this upgrade was going to go. I could expect better performance with less power usage.

s-l1600

In preparation for upgrading, I did what any reasonably prudent, Linux using, data conscious, user would do. I backed up the contents of my home directory, well, another snapshot using Back In Time.

Performing the Modification

The great thing about every Dell Latitude I have ever owned is the ease of serviceability of the machines. No crazy tools are needed or long list of instructions to perform a simple modification. Just a small Phillips screw driver.

IMG_20180512_081253811.jpg

Two screws and the drive can be removed from it’s bay. The drive is held in place by these isolation rubber rails and a caddy cover. I appreciate this design, it is easily assembled, the rails have a nice, snug interference fit, and the caddy cover is held in place with a clip and screw.

SSD drive assembly

Troubles I Had

I am not sure what I did wrong but I couldn’t get the system to not look for the, to-be-replaced SSHD. I tried unmounting the drive before a reboot but still, it would continue to wait for the drive. The system would get stuck looking for the old drive and fsck didn’t correct the issue. I became impatient so I just decided to do a complete re-installation of the openSUSE Tumblweed, because I was too lazy to keep searching for a solution. There is probably a great simple solution that just escaped me.

Restoring the Data

There was a bit of a struggle in understanding how to restore the data from Back In Time into my home directory but once it was done, everything was back to normal. It took a bit longer than I expected but everything restored, all the files and settings. Like it never even happened…

A quick check of the SMART monitoring tools:

smartctl -a /dev/sda

=== START OF INFORMATION SECTION ===
Model Family: Crucial/Micron MX1/2/300, M5/600, 1100 Client SSDs
Device Model: Micron_M500_MTFDDAK960MAV
Firmware Version: MU05
User Capacity: 960,197,124,096 bytes [960 GB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: Solid State Device
Form Factor: 2.5 inches
Device is: In smartctl database [for details use: -P show]
ATA Version is: ACS-2, ATA8-ACS T13/1699-D revision 6
SATA Version is: SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: Mon May 21 10:10:56 2018 EDT
SMART support is: Available – device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

My favorite line is the last one that says the test result: “PASSED.”

Experience

I am running openSUSE Tumbleweed with KDE Plasma as my desktop environment. The aAverage energy consumption before the upgrade, using the SSHD plus the mSATA drive was 21 watts; under similar loads with the mSATA and the 2.5″ SSD, I am consuming about 17 watts. These numbers, are of course, just estimates at approximate similar loads. It is not a very well controlled power study. Between the two drives I now have a total of 945 GiB of storage available; the most I have had on a laptop.

Opening up Steam is much quicker than before. Starting a game does indeed load a lot quicker than it did on the SSHD. I didn’t take any before and after benchmarks but there is most certainly the feeling of increased speed in everything. The computer was no slouch before but now there is an increased sharpness in using it.

The computer is oddly quite with only the fan left as a moving part. However, the only time I notice there is a fan is when my hand goes past he vent and I can feel a little warmth coming from it. Logging in isn’t quite instantaneous, I do have to wait a few moments but I blame much of that on the fact I heavily use the Akonadi storage service for personal information management. I have more information than most people likely save but suffice to say, the machine starts very quickly.

I didn’t take any external thermal readings from the computer before the upgrade but it feels like the thing does operate a bit cooler. It is only an impression.

Final Thoughts

This Dell Latitude E6440 seems to have an extra boost of speed, as to be expected. What I didn’t expect was how much I notice the censorial changes of using this laptop now. I have used other solid state only machines before and didn’t think much of them. Perhaps their less than stellar keyboards out weighed the silence of their operation or possible that I use this machine more than most. Regardless, I appreciate the change.

Was the upgrade worth the price I paid for the drive? So far, yes, very much, indeed it was worth it, but as I did buy it used, and although it passed the health self-assessment, I don’t really know how long it is actually going to last. For now, it’s pretty great and I don’t think I would want to go back to “spinning rust” for storage.

External Links

Micron M500 Specs

Back In Time

128 GB mSATA SSD

My Dell Latitude E6440

Using a 3.5″ Floppy with openSUSE Linux in 2018

floppy.png

I recently came upon two needs for needing to use a 3.5″ floppy in Linux. First was to go through this stack of disks to recover any data off of them. Secondly, in my latest effort to dig up the musical talents I once used regularly about two decades ago, I acquired a Korg N364 that has a 3.5″ floppy drive on it and I wanted to transfer data on and off of it.

USB Floppy Drive

The great news is, openSUSE Tumbleweed running KDE Plasma recognized and utilized the drive immediately but oddly, I could not write to the drive. My first task was to go through the stack of floppies and copy all the data off and archive it. I found some great files from the 90s that I rescued from bit-rot.

Floppy drive on E6440

The problem I ran into was my inability to write to disk. So much so that I even called into the Ask Noah Show. With some poking around and help from the IRC channel, I tried a few things:

sudo mount -o remount,rw /run/media/user/disk

Which was seemingly successful as it did remount the disk. I had one particular disk that I could not modify its contents. I had to double check that the disk was write enabled as it seems that I can’t remember what I did in the 90s to write protect or enable a disk.

back of floppy disk
Write-enabled disk

My next step was to format some of the problem / unreadable disks. I tried to format the disk from KFloppy with this error

Internal error: device not correctly defined.

I can’t be sure as running KFloppy in terminal didn’t yield much more information.

Fortunately, I am able to format the floppy disks in terminal with this:

sudo /sbin/mkfs.vfat /dev/sdc

This seems to have worked for most of my disks but it looks like some of the disks are far too degraded which seems to be the source of my problems. To correct the issue which has only been somewhat successful I ran this in terminal to fix the file system:

sudo fsck /dev/sdc

Even though the output looks unsuccessful, it actually was quite successful.

fsck from util-linux 2.31.1
e2fsck 1.43.9 (8-Feb-2018)
ext2fs_open2: Bad magic number in super-block
fsck.ext2: Superblock invalid, trying backup blocks…
fsck.ext2: Bad magic number in super-block while trying to open /dev/sdc

The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>

I wouldn’t trust any critical data on this disk but I am able to transfer files back and forth without issue and I tried several files including making directories, so I am quite sure it is working well enough, at least for my purposes.

Floppy Drives are Cool

Many of our modern Solid state devices just lack something special to them that I don’t know how to capture in words. You just can’t have fun with USB flash drives like this hugely creative and industrious techy did with 3.5″ floppies.

Conclusion

The issue with KFloppy maybe that it is likely expecting a non-USB floppy, meaning, it is looking for the floppy drive at /dev/fd0 or /dev/fd1. The USB floppy disk mounts as an /dev/sdc on my system since it is being attached to the computer via the USB bus.

I don’t know how much I am actually going to use the floppy drive but I do have some more disks to at least pull data from. I wasn’t able to transfer any data to the Korg N364 due to a floppy drive failure but that is another project for another time.

Additional Information

nixCraft | How To format floppy disks, Zip disk in Linux

KDE Utilities – KFloppy

 

Snappy Packages on openSUSE Tumbleweed

openSUSE Snappy

I don’t see much on the webs about people using Snaps on openSUSE nor have I seen any experiences by openSUSE Users with Snaps so I thought I would see how it goes for me.

First off, the word “snap” appears in too many projects. A quick software search on opensuse.org gets you:

  • snapd
  • rsnap
  • snappy
  • snapper
  • esnappy
  • tarsnap

For this project, snapd is the right answer.

I prefer to use the openSUSE Packaging system for all my software but the idea of having a universal packaging system is seemingly a great idea and I can see this as a very practical method for 3rd party software distribution. Right now, we have three universal packaging formats: AppImage, SnapCraft and Flatpak. I have now used them all but for now I am going to focus on using Snaps.

Installation

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

Using the “Experimental” package System:Snappy One-Click install

At the time of writing, I installed version 2.23.5. The install was without incident, as to be expected with openSUSE.

First run

I went to the SnapCraft home page and just wanted to check out a “featured application” and chose to try out Minecraft. I figure, if something is going to fail, it will be a game that requires 3D acceleration, and sound.

https://snapcraft.io/minecraft

For my first experience, I am already pleased to see that right at the top of the page there is the command to copy and paste into a terminal to install the software.

sudo snap install minecraft

It is simply beautiful that this can all be done in in the terminal too. No silly GUI front end required. Simple, straight forward, copy from the page and paste into terminal.

Unfortunately, I had to do some troubleshooting. I received an error when trying to install Minecraft.

error: cannot communicate with server: Post http://localhost/v2/snaps/minecraft: dial unix /run/snapd.socket: connect: no such file or directory

A quick search told me to check the status of the snapd daemon:

systemctl status snapd

The output from that:

● snapd.service – Snappy daemon
Loaded: loaded (/usr/lib/systemd/system/snapd.service; disabled; vendor preset: disabled)
Active: inactive (dead)

That told me I needed to start the service

sudo systemctl start snapd

Checked the status, once again:

snapd.service – Snappy daemon
Loaded: loaded (/usr/lib/systemd/system/snapd.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2018-05-11 11:21:40 EDT; 2s ago
Main PID: 7611 (snapd)
Tasks: 10 (limit: 4915)
CGroup: /system.slice/snapd.service
└─7611 /usr/lib/snapd/snapd

I wanted to be sure that the service starts at system boot, as well so I executed this:

sudo systemctl enable snapd

With the nice to see, somewhat interesting output:

Created symlink /etc/systemd/system/multi-user.target.wants/snapd.service → /usr/lib/systemd/system/snapd.service.

This is where I say the unpopular statement: SystemD is Awesome to use.

Now I could try to install Minecraft once again and received this upon completion:

minecraft latest from ‘snapcrafters’ installed

Success!

The first run launcher popped up and the next round of installation (presumably) commenced.

Screenshot_20180511_121456

I was interested in seeing the command the snapy package added in my applications menu and here it is.

env BAMF_DESKTOP_FILE_HINT=/var/lib/snapd/desktop/applications/minecraft_minecraft.desktop /snap/bin/minecraft

First run, and it worked as expected but since everything defaults to the Intel GPU on my system, I wanted to test offloading Minecraft to the AMD GPU. It works well with Steam, Descent and any emulators, so now I wanted to see if I prepend the same command “DRI_PRIME=1” if it would work as well.

It did and did so glitch free.

Screenshot_20180515_083037.png

Conclusion

Although Snaps, or Snappy or Snapcraft is considered an experimental package in openSUSE, it seems to work perfectly fine within Tumblweed. There was just a bit of extra leg work required to start and enable the daemon but outside of that, it seems to work smashingly.

This is my first experience and I will continue to play with this as well as Flatpak and AppImage. My preferred method of software installation is still using the openSUSE software repositories but it is great to see that the option of Snaps are [nearly] effortless to get going.

See Also

openSUSE Project

SnapCraft Daemon Installation for openSUSE

Minecraft Snap Package

 

Adobe Acrobat Pro Alternative with XFA Extension on openSUSE | Master PDF Editor

Edit-pdfFor better or worse the PDF format seems to have become the de facto standard in digital documents. Generally, when I just want to view or quickly bang-out a form on a PDF, the KDE Plasma default Okular works just fine. The problem I have run into is with US government forms that have a XFA extension. Outside of that Okular is very capable. Features:

  • It has several supported formats: PDF, PS, Tiff, CHM, DjVu, Images, DVI, XPS, ODT, Fiction Book, Comic Book, Plucker, EPub, Fax
  • Thumbnails sidebar
  • Annotations support

In my search for not running a Windows VM to fill out an XFA encumbered form, I have recently stumbled upon a solution that is working really well for me.

Master PDF Editor

This is a real good looking application by Code Industry. It has a very easy to use, familiar feeling, User Interface. The application seems to be efficiently written as it literally pops right open as nice and quick as you would get from Okular. If you load it from menu or krunner, you are greeted with a friendly start page. I greatly appreciate that this is a Qt 5 application as it looks good with the rest of my dark themed desktop.

Screenshot_20180426_141326

Installation

It is mighty wonderful that the company lets you use it for free. It is a feature reduced version but allows you the opportunity to use it at no cost. For openSUSE Leap and Tumbleweed, I selected the CentOS/Redhat 7.x + version is it built on Qt5. Download the RPM and install it as you would any other sand alone package.

Personally, I like the zypper terminal method:

zypper in ~/Downloads/master-pdf-editor-4.3.89_qt5.x86_64.rpm

Alternatively, right-click Open with Discover or Open with Install/Remove Software works well too.

What is wrong with the default PDF options?

The main reason for my search for a different PDF reader was for the XFA extension that seems to be popular in government use on Forms. Even the built-in reader on Firefox and Chrome give me this little gem of an error.

Screenshot_20180428_225511

For a specific part-time job of mine, I need to be able to interact with PDFs properly and I would really prefer not to start up a Windows VM just to type out a few things in Adobe Reader. I would just install Adobe Reader but it is too old and unmaintained in Linux so it is hit but mostly miss if it will actually work not to mention the weird system tray icon it leaves me that requires me to kill the process to get rid of it.

If you like Master PDF Editor, it is not an expensive application to fork over some cash towards. My determination for whether or not I was going to commit to purchasing it was how stable it was and did it have all the features I wanted. While I can get by on using Okular for most things, there is something to be said for a more “feature complete” application like Master PDF Editor. Also, I have no problem paying for commercial Linux software. If it does it’s job, I am more than happy to pay for it.

Another handy feature in this application is the ability to digitally sign documents from a .pfx/.p12 certificate. Creating one may be a bit of a challenge but it is a nice feature to have.

Although it is not a feature I use regularly, having Optical Character Recognition (OCR) is great to have when you do need it. I tested it out and it is very good. Not 100% but close enough to be incredibly useful. English was installed by default on mine and I have 70 other language options available if I so choose. Another neat feature is the ability to go manually go through the OCR process to ensure correctness.

Master_PDF_Editor_OCR-01

Since I manage all of my documents, not in a physical filing cabinet but by a digital one, I need to be able to organize and combine different PDF Documents. My method of storage isn’t anything fancy, just a folder of records that is divided in a way that makes most sense to me. I often have to combine or remove pages out of a collection pages and this software makes it easy to complete.

A lesser needed but nice to have feature is the ability to create your own fallible, PDF documents. If you have used other form creators, you won’t find this foreign at all. It has the features I have used before but form creation is not my one of my strong suits. That is an art, in of itself that I do not posses the skill or patience to craft beautifully.

Features I use regularly

Adding and removing PDF pages from a file and save them for archival purposes. Something I cannot do from Okular easily. Since I try to minimize the amount of physical documents that I keep down to only the “must be original” documents. I scan and store the rest. You may ask, how often do I review these documents? ANSWER: More of then than I would like to admit. Also, do you know how liberating it is to not have a full 4 drawer filing cabinet?

Secondly, I use this program with any PDF documents that have the XFA extension. This is also a “feature” that keeps me using PDFs more than I would like. There is a continent “Click to Highlight Fields” in the upper right-hand corner of the application window and away you can go filling these things out.

Final Thoughts

I very happily forked over the cash to be able to do the work I want to do in Linux. I also want to be able to support the developers and make Linux a viable platform to target. I hate hearing from commercial vendors in my field of work that they just don’t have the demand to develop on Linux. Code Industry is taking a risk by developing for Linux and I certainly don’t want them to give up and say there is no market for Linux Desktop.

Screenshot_20180426_215701

If you would like to give Master PDF Editor a try, there is a free no obligation version that you can try out. Download the free version of Master PDF Editor and see what you think of it. Even though I don’t need the paid features on this software, I want to support the developer so I kicked them the cash for the registered version. I hope they continue to develop and improve this product. It’s already great and I am hoping it becomes even greater.

External Links

Okular PDF Reader

Code Industry Home Page

Get Master PDF Editor from Code Industry