Docks and Bays, Accessorizing the Dell Latitude E6440

e6440-01-smI have been using the Dell Latitude E6440 since March of 2017. Since day one, it has been running openSUSE Tumbleweed. Initial production of this laptop was in 2014 and the model was discontinued sometime in 2016. I don’t buy things brand new because I have no need to stay on the “cutting edge” of technology and running Linux substantially extends the life of hardware. Even though it is an older machine, I have to say that the Dell Latitude E6440 is quite possibly the best laptop I have ever used. It really isn’t the best in any one metric of a machine I have used but the cross-section of capabilities and expandability of it makes me appreciate it the most. I will be hard pressed to find something comparable.

It took me 9 years before I replaced my Dell Latitude D630 as my primary machine. I still use the D630 regularly, but it just stays home now in its dock station. From the time I decided that it was time to replace the machine to the moment I committed the cash for a new machine, took me about 18 months. I am slow to make a decision on buying new hardware. I have to really process it out, make sure it is what I want because I am committing to this piece of hardware for a significant period of time.

Serviceability

Inside bottom e6440-02.png

Whatever machine I buy, it has to be serviceable. That means, I need to see screws and the design intent of the manufacturer was that it is mean to be in service for an extended period of time. Since I have been using Dell for quite some time and they tend to be slow to change basic components, like the power supplies, I intended on sticking with the Dell brand and specifically with their Latitude line which is generally certified on some distribution of Linux.

The whole bottom panel of the E6440 removes with only a few screws and leaves everything accessible on the underside of it. Once the panel is off, you have access to the memory and one of the mini-ePCI, one more panel in easily freed up reveals the last two mini-ePCI slots. I am very pleased by how easy it is to work on this machine. I am not sure what I will do with the WWAN labeled slot, maybe nothing, but it’s there.

Inside bottom e6440-02-sm

Dock Station

I like a good computer with a hardy dock station. I realize that this is quickly becoming a thing of the past but a good dock station that I can drop my computer onto that has all the ports on the back that works reliably is a must for me. I like having the dock supply power, access to two other monitors and peripherals all available to me in one simple, quick action. This dock station has worked flawlessly for multiple dock and undock cycles in a single day. The monitors always appear just as they are supposed to and I don’t know if it is a Dell thing or an openSUSE / KDE Plasma thing but this process just works and has worked 100% of the time. I have seen some Thunderbolt docks on Windows 10 work very poorly but it was also not on a Dell.

Dock Station.jpg

My dock station has USB 3, this is not available on all E-Series docks.

Battery

Two options that I know of, a 9-Cell battery and using the dock system, I can add a second 9-cell battery called a “battery slice” which also gives the computer a nice comfortable tilt. The downside, it does make it a bit heavy, especially if you are packing more than one laptop in your bag. Regardless of the added weight, having this capability gives me a very welcome 9 to 10 hours of battery life under low loads. If I am encoding video, that changes things

e6440 Batteries.jpg

Legacy

I do a number of things with older hardware. Just because something has been considered “end of life” by the masses, doesn’t mean that it is obsolete. The most important legacy port, for me, is the serial port, and secondly, the parallel port. PS2 is not as big of a deal but nice to have for testing old hardware. I have a few uses and since I do keep around a lot of old tech, it is handy to have a trusted device for testing the hardware.

Legacy Extender.jpg

3 Drive bays

Can I call them drive bays? Maybe slots? There is an mSATA SSD slot, 2.5″ SSD and I can swap out the optical drive for another 2.5″ mass storage drive. This is very convenient and keeps me from having anything hanging off of the computer when I go mobile. I use the 3rd drive in the caddy for storing my virtual machines. I still use my optical drive because I still buy DVDs. I realize that that this a less common activity for people but I am more than happy to do entertainment this way.

e6440 3rd Drive.jpg

Final Thoughts

There are more powerful, more capable machines that are lighter and newer but this one hits all the reasons I want to drive this one into the ground of uselessness or at least a few more years yet. Heck, maybe longer as the rate of speed increase hasn’t been as dramatic as it has been in the past. Looking at CPUbenchmark.net in the top 10 CPUs available on this site, it is still in the middle of the pack.

This machine really only really lacks one thing and that is a Thunderbolt port. If I could have all these features, plus a thunderbolt port, this computer would be everything I need. Sure, the CPU is a few generations behind and the AMD GPU is not top of the line but for my purposes, it does a fine job. I realize that the traditional dock port is becoming less popular since USB-C / Thunderbolt became a thing. I think it is unfortunate but I largely understand why. For now, I will enjoy my newer yet aging tech and appreciate the capabilities of the E-Series dock system running openSUSE Tumbleweeed nice and reliably.

Related Links

Dell Latitude E6440

Dell Latitude E6440 all on SSDs

Dell Latitude E6440 mSATA Upgrade

openSUSE Tumbleweed on Dell Latitude E6440

Dell Latitude Dock Station

Dell Battery Slice

Dell Legacy Extender

CPUbenchmark.net Intel Core i7-4610M

Advertisements

HP Touchpad with Plasma Mobile and openSUSE — Fall Time Blathering

HP_TouchPad_Title-2.png

After working with Plasma Mobile on the Nexus 5X and although it is not quite ready for prime time, it is nearly there. It is so close, I can taste it and I am very ready to see Plasma Mobile as all I see on my mobile. I am also continually seeing interest on the aging HP Touchpad. It too is a fine piece of hardware that is still very capable and now, I can’t help but wonder how much work it would be to port Plasma Mobile to that hardware. I see that there has already been work with the Halium Project for the HP Touchpad. Unfortunately, my understanding at what goes on at the base hardware level is EXTREMELY limited.

Plasma Mobile Experience

Nexus 5X-PlasmaMoble-01The look and feel of Plasma Mobile is pretty great. Like all things Plasma, it is highly customizable. What that means to me, I can make my Mobile experience exactly the way I want, not something dictated by a corporation as to how they intend for me to use my technology.

So then I thought, I know Plasma Mobile is still in early stages, many things are still being taken from Plasma Desktop but that really should only require some adjustments. Over time, Plasma Mobile, much like the Desktop Counterpart could very well end up being the nicest, cleanest and yet most customiziable interface ever.

The HP Touchpad

HP_TouchPad-12-LineageOS.pngThe Touchpad, by today’s standards is not spectacular, but it isn’t terrible either. Its CPU is a dual core Scorpion clocked at 1200 MHz. It has 1 GiB of RAM and either 16 or 32 GiB of storage. It is certainly adequate for many tasks. I can’t help but think how fantastic this Touchpad would be with proper Linux, access to the breadth of open source software.

HaliumThe good news is, the possibility of having a working Plasma Mobile interface on the HP Touchpad may be closer to reality than not. According to the Halium Project on GitHub, three have already been tests completed successfully. This is, unfortunately far outside my skill sets so there isn’t much I can offer here but I am watching the project with great interest.

How Useful Could It Be?

kontactI know multimedia is the thing… streaming Netflix, watching YouTube and GPU intensive games is the common usage for tablets but that is not what I am interested in doing with it. There are far more interesting and productive activities. Using the Touchpad as my window into my digital recipe collection, reference technical documents, access to Kontact, the KDE Personal Information Manager, or at least parts of it for time and task management.

HP Touchpad with Plasma Mobile and openSUSE

opensuse-logo2Then I did some more thinking. I have only begun dabbling in the fantastic Open Build Service, but what if that system could be used to build an openSUSE Tumbleweed distribution specific to the HP Touchpad, tested by the openSUSE openQA and released in a similar rolling snapshot to the regular openSUSE Tumbleweed. Even with a fraction of the stability, reliability of upgrades and the breadth of software, this would be a fantastic improvement as compared to what is available today. It would be a gigantic library of goodness with many the most useful tools readily available.

Now What?

Even though the HP Touchpad is far past its end of life, I continue to use it on a daily basis. I am very interested in seeing the HP Touchpad get a more genuine Linux upgrade and would like to toy with it now but I have to personally determine, do I want to take my HP Touchpad out of service? Would I even have the time test and experiment on it or do I continue to use it as it is? It is very usable today and works mostly well but a project like this might give it enough life for perhaps several more years and be more useful than it is now. For now, I will keep tabs on it but maybe in the very near future I will be able tip my toes in this arena.

Further Reading

Halium for HP Touchpad Project on GitHub

HP Touchpad Specifications

Open Build Service

Halium Project

open QA

openSUSE Tumbleweed Home

HP Touchpad in 2018

Plasma Mobile installation on Nexus 5X

KDE Kontact Personal Information Manager

Plasma Mobile installation on Nexus 5X

PlasmaMobile-00

I have been watching Plasma Mobile for a little while and have tested it in a virtual machine but haven’t made it a priority to get some real hardware to test it on until now. I recently broke my Samsung Galaxy 5S… again… but in many ways it was falling apart. I could not unlock the bootloader and every consecutive update from Samsung made the phone less usable. It would get hot and chew through the battery quickly but be incredibly slow. Looking at the battery usage it was always the Android System that was on top of the list. The last time it was used was when navigating to a destination, the phone became unresponsive, the screen went black and was incredibly hot.

Recently, it was announced that KDE Connect is available for Plasma Mobile which was the tipping point for me to say, it is time to test Plasma Mobile on something other than a virtual machine. So, I purchased Nexus 5X on ebay for $80, I figured, why not.

Nexus 5X-Android

Using this guide, Unlock for Beginners, as my base, I put this together as a distilled version of the guide that can be used on openSUSE but probably any other distribution of Linux as well.

Going through this, it took me a bit to really understand and take a course of action so to make this easier for someone of similar goals. I am running this on openSUSE Tumbleweed but the instructions for Leap should be the same. It really was a rather painless process so this doesn’t write-up doesn’t have much for trouble shooting.

Download the Tools

After some extensive reading and poking around, I chose the minimal method to perform this task. Instead of the full Android SDK, just the ADB Tools.

First step was to download the ADB/Fastboot (platform-tools)

I put it in my Projects folder.

~/Projects/adb/

In that folder, extracted the downloaded zip file, which is easy to do with KDE Plasma’s file manager, Dolphin. If you would like to do it in the terminal (your version may vary):

unzip platform-tools_r28.0.1-linux.zip -d platform-tools

Next, navigate to the folder, platform-tools and executed:

./adb version

which gave the output

Android Debug Bridge version 1.0.40
Version 4986621
Installed as /home/cubiclenate/Projects/adb/platform-tools/adb

Activate Developer Mode on the Nexus 5X

Navigate to: Settings > System > About phone

Scroll to the bottom of the list and tap Build Number 7 times. It will give you a countdown of how many more times you need to tap it after a few taps

Enable adb/USB Debugging

Navigate to: Settings > System > Developer options

There should be three toggles that are on:

A toggle at the top of the screen that should be On

Toggle OEM unlocking to On

Nexus 5X-Developer Options

Scroll down to the Debugging section and ensure that USB debugging is toggled On.

Prepare Desktop Linux

On my openSUSE machine, check to see if you have a plugdev group.

cut -d: -f1 /etc/group | sort | grep plugdev

If you don’t see plugdev returned, add it.

sudo groupadd plugdev

Then add your username to the plugdev group

sudo usermod -aG plugdev $LOGNAME

Logout and log back in for the group changes to take affect

Flash the Phone

Send the command to reboot into the Fastboot Mode

./adb reboot bootloader

The phone will reboot into this screen:

Nexus 5X-Fastboot

Note the PRODUCT NAME is bullhead. More on that later.

Just to verify, I checked that I could do the fastboot thing

./fastboot devices

And it gave me the output

00493e6b7693cba7        fastboot

I have no idea if I should leaving that number is a security risk or not but in this case, I’m not terrible worried.

Next step was to perform the oem unlock and make this phone do some complaining

./fastboot oem unlock

Nexus 5X-Unlock Bootloader

Select YES to Unlock the bootloader on the Mobile.

It should give you very encouraging output similar to this:

OKAY [301.881s]
Finished. Total time: 301.881s

Point of No Return

This process will erase the complete memory of the Nexus 5X. If that matters to you, be sure to back up everything that matters to you.

./fastboot format cache

Output should be similar to this:

Couldn’t parse erase-block-size ‘0x’.
Couldn’t parse logical-block-size ‘0x’.
Creating filesystem with parameters:
Size: 100663296
Block size: 4096
Blocks per group: 32768
Inodes per group: 6144
Inode size: 256
Journal blocks: 1024
Label:
Blocks: 24576
Block groups: 1
Reserved block group size: 7
Created filesystem with 11/6144 inodes and 1422/24576 blocks
target reported max download size of 536870912 bytes
erasing ‘cache’…
OKAY [  0.081s]
sending ‘cache’ (5688 KB)…
OKAY [  0.214s]
writing ‘cache’…
OKAY [  0.063s]
finished. total time: 0.357s

Then format the User Data:

./fastboot format userdata

With the output similar to this:

mke2fs 1.44.3 (10-July-2018)
Creating filesystem with 6661115 4k blocks and 1667904 inodes
Filesystem UUID: fea22557-b249-45e8-aca6-3230969b647b
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000

Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

Sending ‘userdata’ (4272 KB)                       OKAY [  0.181s]
Writing ‘userdata’                                 OKAY [  0.064s]
Finished. Total time: 0.388s

Now your phone is ready to flash Plasma Mobile. Though, it can also be noted that if you want to install custom firmware, that could be done as well.

Flashing Plasma Mobile

For this initial foray into Plasma Mobile, I used the the Neon Architecture reference.

In my ~/Projects folder I created a subdirectory PlasmaMobile

mkdir PlasmaMobile

Then pulled the latest Plasma Mobile flashing tool from GitHub

git clone https://github.com/plasma-phone-packaging/pm-flashtool.git

Changed directory to the location of flashtool

cd pm-flashtool

While still in fastboot mode, in terminal, Executed pm-flash

./pm-flash

This required a bit of interaction. It is important that you do not install the wrong image on the phone, something about bricking the device… which is bad.

+ CACHEDIR=cache
+ echo ‘Waiting for device to be in the fastboot mode’
Waiting for device to be in the fastboot mode
+ fastboot getvar product
product: bullhead
finished. total time: 0.020s
++ fastboot getvar product
++ head -1
++ awk ‘-F: ‘ ‘{print $2}’
+ DEVICE_NAME=bullhead
+ confirm ‘Connected device is bullhead, is that correct? [y/N]’
+ read -r -p ‘Connected device is bullhead, is that correct? [y/N] ‘ response
Connected device is bullhead, is that correct? [y/N]

I input y then hit enter as this is a bullhead device which is verified on the Fastboot Mode.

Unfortunately, due to my lack of prep work, I ended up on a Google Splash screen. Thanks to the fine folks on the Plasma Mobile Telegram group I was instructed to run the Flash-Vendor application to put the correct driver blob that would be compatible with Plasma Mobile

./flash-vendor

As soon as it completed, the phone rebooted and very shortly thereafter, I was greeted with a snazzy looking Plasma Mobile desktop. My initial impressions are very positive. I like the look and feel. The application menu is a different take from what you would see on Android but perfectly functional.

Nexus 5X-PlasmaMoble-01.jpg

The settings tool is similar to what you would see on the Plasma Desktop with real customization options. The kind of options that bring an ear-to-ear smile to your face.

Instead of Google Play, the application manager is Discover. This manages your updates as well of which I was told I had 309 updates waiting for me…. but I learned that updating in this manner is not yet supported, so don’t do that.

The authentication dialog feels like it isn’t really meant for mobile but I can overlook that small bit.

The network manager is by far the best network manager I have ever seen on a Mobile. I will admit, I am quite biased about this bit as I think the Plasma Desktop Network Manager is the best I’ve seen yet.

PlasmaMobile-Network Manager.jpg

I have only one issue, at the time of this writing, that prevents me from using this full time. I cannot actually place any calls with it. I am sure that the fix is forthcoming or maybe the problem is entirely with me. Once I have that hammered out, I will update this accordingly.

Final Thoughts

I am just now exploring the fine offerings of Plasma Mobile what it can do and what it can not do. The scope of this blathering is just the installation of Plasma Mobile on the Nexus 5X. I will continue to noodle around with it in hopes of making it my full-time daily driver mobile device in the very near future.

If you have a compatible device and some time to experiment, I recommend this as a fine afternoon activity. Perhaps you can even help out with the project and further the cause of having a truly free and open platform on your mobile.

References

Plasma-Mobile Project Site

XRA Developers Forum, Nexus-5X How To For Beginners Guide

platform-tools-latest-linux.zip

Neon Architecture Reference

Nexus 5X specifications on GSM Arena

openSUSE Tumbleweed on HP Pavilion 15

HP Pavilion-15-00-TW.pngI make no bones about the fact I am a Linux geek and try to make myself available to anyone with tech questions, but I typically will shy away from putting hands on to fix any Windows issues. I just don’t have the time or patience to mess with it. I was approached by a lady in my church with a brand new laptop telling me she wants me to install Linux on it. We talked about what software she uses and the only application I don’t have a solution for (outside of using a VM) is iTunes. Though, it looks like this may be a non-issue as she only uses it on her phone.

The computer is an HP Pavilion 15-cs0034cl with very nice specifications. Much nicer than most of the hardware I own.

Specifications

  • Intel Core i7-8550 @ 1.80GHz
  • 12 GiB of RAM
  • Intel UHD Graphics 630 (Kabylake GT2)
  • Nvidia GeForce MX130
  • Glossy 1920 x 1080 touch screen
  • 2x USB 3 Ports
  • 1 USB-C
  • HDMI
  • A REAL Ethernet port, Realtek RTL8111/8168/8411
  • Intel Corporation Wireless 7265
  • SD Card Reader
  • 1 TB Hard Drive (yes, spinning rust)

Install

I prepared the installation USB Flash Drive by downloading and imaging the drive.

To start out, it is necessary to Access the BIOS: F10

Upon entering the BIOS, was a bit underwhelmed by the interface. It has that early 2000s look to it; mostly blue and gray. It also doesn’t have the breadth of options you would see on a Dell Latitude series of machines. Even one from 10 plus years ago.

In order to access the boot options, arrow over to Boot System Configuration and press enter, then arrow down to Boot Options and press enter.

HP Pavilion-15-01-Bios.jpg

Ensure the following to get the system to boot from the USB Drive:

  • USB Boot is Enabled
  • Secure Boot is Enabled
  • UEFI Boot Order, moved USB Diskette on Key/USB Hard Drive to the top of the list

Save and Exit, and began the installation process.

The install was without issue. In order to make this work, I removed the largest partition and, formatted the EFI partition but left the Microsoft Reserved Partition and Diagnostic Partition intact.

Drive Layout

  • 260.00 MiB for /boot/efi
  • 12.00 GiB Swap
    • I left this at 12 GiB so that should the owner of this machine require suspending to disk, the space is available. Many distros do not ship with this feature turned on but openSUSE does and it seemingly works fine on this machine.
  • 25.00 GiB / (root)
  • 0.86 TiB /home

Nvidia Graphics

To install the Nvidia drivers, taking advantage of the hybrid Intel / Nvidia technolgy, I used the openSUSE Wiki as a reference. It is very nicely laid out, step-by-step.

The Nvidia drivers certainly are an exercise in frustration. Maybe other distributions have the hybrid setups more dialed in but it is installed and usable. Realistically, this machine is not ever going to have to use the Nvidia graphics but it’s nice to know it’s there.

 

Additional Software

I installed my Basic Application List of the multimedia codecs and the Google Chrome browser. I don’t have a lack of faith in Firefox but I know this particular user is more accustomed to Google Chrome.

I also transferred a simple script and .desktop file I put together to assist in keeping the system properly updated with little effort.

What I like

This is a nice solid system that feels quality. I think I like the touch screen but at the same time just seems like a novel feature. The system is fast, thin and light weight. The keyboard isn’t bad and quite possibly one of the HP keyboards I have ever used.

The screen has a unique pivot point that tilts the laptop just a bit when it is opened.

HP Pavilion-15-02-pivot.png

Conveniently, this machine has an Intel Wireless NIC so there wasn’t any effort needed to get it operational. Outside of the Nvidia GPU, there wasn’t any fiddling required on this machine to get everything working.

The screen is really sharp and crisp looking. Based on the screen and keyboard alone, I could certainly use this as a daily driver.

What Don’t Like

I would prefer to have an AMD GPU as it is easier to use for the hybrid function. AMD has also open sourced their drivers so there is nothing that has to be done to get the needed performance out of your system. I still like having an optical media drive, tho admittedly, I am not using one as often as I used to but I still prefer having one built in.

I also don’t like people touching my screen…

Final Thoughts

I wasn’t able to test the USB-C port as I don’t have anything that to plug into it. Everything for this machine works right out of the gate. I would recommend this machine for most people as it will do what most people need. I only tested Tux Racer on this machine and it ran smashingly well, without any screen tearing or glitching.

I will be likely supporting this machine for quite a while but I don’t mind helping others get off of the proprietary software wagon. I am a big believer in owning your own hardware, having something that is more secure on a platform you can trust.

Here is to hoping this conversion to Linux goes well!

References

Base Application List

openSUSE Wiki on NVIDIA Bumblebee

Simple Tumbleweed Distribution Upgrade Script

RasberryPi Info Center

Rpi3_boardI have a RaspberryPi that is doing absolutely nothing. I got it to dink around with it but it just hasn’t been all that useful to me. I much prefer the x86 platform for, pretty much everything. Not so recently, my church expressed a need for a slideshow like machine for things, events, announcements, pictures and the like. Since I have a Pi3 doing absolutely nothing this sounded like a great fit.

Project Requirements

  • Low or no maintenance device that just rotates through a selection of pictures and a given interval
  • Add and remove content from the directory without the slide show software either skipping or borking
  • Be able to FTP into the Pi to drop pictures onto it.

I downloaded Rasbpian and to play along with the written recommendations, I downloaded the image writer, Etcher.

The Etcher AppImage is built against 32 bit architecture so some additional software was required for openSUSE Tumbleweed on a 64 bit architecture

sudo zypper install libXtst6-32bit libXss1-32bit gconf2-32bit

To start out, I needed to make sure I could remotely access this Pi through Secure Shell. I checked the status of the service

systemctl status ssh

I’m going to pause here just to say, Systemd rocks. What a great service for controlling services on Linux via the terminal. It makes using the terminal on different distributions quite comfortable.

The service was “dead” so I started and enabled the ssh service

sudo systemctl start ssh
sudo systemctl enable ssh

After much searching about, I landed on feh as the application to play a slideshow.

sudo apt-get install feh

To test it out, I needed to transfer some pictures to the Pi. Using my favorite file manager, Dolphin.

File Transfer to RPi

After the files had transferred. Ran a test command to see if it worked

feh -Y -x -q -D 5 -B black -F -Z -r /home/pi/Pictures/

And it worked smashingly… except if I added pictures it wouldn’t automatically update the images displayed and eventually, after taking away too many pictures the application borked. Upon scanning through the man pages…

man feh

I discovered an option,

-R, --reload int

This would allow for reloading the directory at a specified interval, int, in seconds. I set it for 15 seconds and gave it another series of successful tests, adding and removing images remotely.

feh -Y -x -q -D 5 -B black -F -Z -R 15 -r /home/pi/Pictures/

An explanation of the options:

-Y : Hide the mouse pointer

-x : Create borderless window

-q : quite, don’t report non-fatal errors

-D : Delay between slides

-B : background for transparent images “black” is the value

-F : Fullscreen

-Z : Zoom pictures to screen size in full screen

-R : Reload the file list, after a period of time in seconds

-r : Recursively expand any directories in the path

It all behaved just as I had hoped it would, so much so that I had that natural dose of endorphins for this little success. It was good to see that the Pi was doing just what I needed it to do.

Add FTP Service

Since it is likely there will be a Windows machine accessing the Pi, I wanted to make adding and removing images is as simple as possible. The best solution, I find, is to set up an ftp server. I tried using sftp but that is not something the Windows file manager can do.

I decided that I would go with proftp as that is the one for which I am most familiar.

sudo apt-get install proftpd-basic

Checked the status of the server, post install

systemctl status proftpd

The service reported that it was running and active. Should that not be the case for you simply run this to start and enable the service:

sudo systemctl start ssh
sudo systemctl enable ssh

Since this is an internal ftp server on a RaspberryPi with no need for multiple users. The default “pi” user was adequate and I used those credentials for ftp access.

Autostart Slideshow on Boot

I didn’t want to have to have anyone fiddle with the Pi should it lose power. It just needs to work. A script was necessary.

Created the folder bin in the home directory, because, that is just where I like to stick my scripts.

mkdir ~/bin

Changed Directory into that folder

cd ~/bin

Created script with all the right bits in my slideshow

nano slideshow.sh

Copy and paste this into the nano editor

#!/bin/bash

feh -Y -x -q -D 8 -B black -F -Z -R 120 -r /home/pi/Pictures/

Save it: Ctrl+o, Enter

Exit nano: Ctrl+x

Next you have to make the script executable

chmod +x slideshow.sh

Now it is possible to run the command in terminal

Since I want this thing to basically just be an appliance where you plug it in and it just does its thing. I need to make this script run when the RaspberryPi starts up.

To do this, I will use my trusty nano editor to edit the desktop startup

nano ~/.config/lxsession/LXDE-pi/autostart

Scroll to the bottom of this script and add this to the very end:

@/home/pi/bin/slideshow.sh

Save and Exit

Reboot the machine to test.

sudo systemctl reboot

Success.

Disable Screen Blanking

As I was testing the slide show program, I discovered that the screen blanks out after a period of time. That is an unacceptable state for this device. Sure, it makes it energy star compliant but it makes it real hard for people to see information from it. The fix is easy, though, it would have been easier if it was a point and click option in Raspbian.

Back in the terminal:

sudo nano /etc/lightdm/lightdm.conf

Look for the heading

[Seat:*]

At the end of that rather large block of “options” add this line:

xserver-command=X -s 0 -dpms

Reboot the machine and test to see if it performs as expected. For me, this worked exactly as expected and I now call the project complete

Syncthing Addition

In order to keep things a bit simpler for the interested parties. I added Syncthing to the RaspberryPi. Just Syncthing, not the GTK GUI. The problem with the setup was that the browser would open up and cover up the slideshow, which, do an average observer could look like an error. The solution, was another autostart modification:

nano ~/.config/lxsession/LXDE-pi/autostart

I added this line:

@/usr/bin/syncthing/binary -no-browser

Now, should the RaspberryPi be rebooted, the Syncthing WebGUI will not sit in front of feh.

Final Thoughts

I am very glad the Internet exists with so many others describing how they solved their problems. I feel like I cheated because I was able to pick different solutions and mash them up to satisfy my requirements for a properly fitting and robust solution.

RPi3_slideshow

With rebooting the machine, I am rather impressed by how quickly the system goes from off to playing the slide show. A testiment to the work of the RaspberryPi folks hard work.

This was my first RaspberryPi experience and after completing the project, I am mostly happy with the whole process but ultimately, I think I would have preferred setting this all up on an x86 based machine. There were numerous little unique Pi niggles that I found annoying that kind of reminded me of noodling around in Linux circa 2005. At the same time, it was kind of a nice throwback to the last decade in working through a myriad of challenges to have a properly working computer.

For the technical adventurous, I highly recommend playing around with Raspberry Pi devices. It is certainly a great little hobby machine to perform special tasks. At the end of this project, I can think of several other things that I would like to do with a Raspberry Pi or similar device to solve other problems that come to mind.

References

Instructables Easy Raspberry Pi Screensaver Slideshow

Raspbian Download

Etcher

feh – Linux man page

How to Disable the Blank Screen on Raspberry Pi (Raspbian)

ProFTP.org

openSUSE Leap 15.0 Early Adoption Experience

Dell Latitude D830 openSUSE Leap 15.0-sm

I have a “sidekick” machine in my cubicle that has been happily running openSUSE Leap since I started using it. It is a recovered Dell Latitude D830 with an Intel Core 2 Duo T9300 CPU at 2.50 GHz, 4 GiB of RAM and the Nvidia Quatro NVS 140M. It just has a standard hard disk drive for storage. I put this unit back together 3 years ago only expecting to get a year or two of use out of it. Thankfully, the way Linux, and specifically openSUSE rolls the distribution, I have far extended the life of this machine.

Since this hardware is older everything is generally supported out of the box without any tweaking. I have decided, for now, to not use the proprietary drivers and see if Nouveau will work using KDE Plasma and not lock up on me.

Installation

I downloaded the DVD Image (now released as an official version) and used SUSE ImageWriter to write it to a USB. Like virtually every other openSUSE installation, it was pretty uneventful. I did choose to do a “Nuke and pave” for this installation as I wanted to set everything up from scratch. There have been a number of changes in openSUSE since the last static release, namely, the BTRFS subvolume structure, the location of the RPM Database move and SuSEfirewall2  migration to the new firewalld. I also experimented with a number of applications on this system and just wanted to have a fresh start.

Outside of the warning of the usage of Nouveau drivers with KDE Plasma, there as nothing to note on the installation process.

First Run

To start out, I needed to ensure that I covered my bases for my preferences. Since I like to add a little Oxygen Theme into the Breeze Theme I immediately ran this in terminal:

sudo zypper install oxygen5

I also like Konqueror and one of it’s specific features, the File Size View.

 sudo zypper install konqueror konqueror-plugins

Then I added the Multimedia Codecs along with VLC Player.

So far, everything seems to be working just as expected and the Nouveau drivers are holding up. I will continue to use them until I have any issues

Dell Latitude D830 Leap 15.0 20180523.png

One Week Later

I have since updated the machine to the current release version and I am still operating, trouble free. The System seems to be humming away well with the Nouveau drivers. I have tested many things I know would have caused the graphics drivers to bug out and crash X. At this point, there hasn’t been any weirdness whatsoever. The compositor is running just fine without any glitching. I have been using this machine in the same mannor as I had previously used it under openSUSE Leap 42.3 with the propriatary Nvidia drivers. Should I have an issue, I will see if the propriatary drivers fix it.

What I Like

After installing the necessary packages, all of my system settings were just as I wanted them to be. I didn’t have to fiddle around with any settings. KDE Plasma 5.12 is the Long Term Support version of the Environment and I know that from my expeirience with the transition to 5.12, it is more memory efficient than previous versions. In only one week, I haven’t run into any issues where Swap Space was needed. In monitoring the memory usage, I fluctuated between 2.8 GiB to 3.4 GiB in usage with Firefox being biggest memory hog. This has prompted me to start playing around with the Falkon web browser which I downloaded here. So far so good but I need more time to use and play with it before I can say more.

What I don’t Like

So far, I haven’t found any issues, but it has only been a week that I have been using it. Maybe, I could say, I don’t like that openSUSE doesn’t have wider adoption as it is technically very sound and very stable. I am hoping with the release of openSUSE Leap 15.0 that it will reach a wider audience.

Conclusion

openSUSE Leap 15.0 has been polished up very nicely. It it very much an incramental improvement over 42.3. The software selection meets my needs and if the software you want is not in the official repository, there is likely a repository available on the Open Build Service.

Since most of my systems are pretty low-end, I have them generally set up for specific purposes. Although I can happily run openSUSE the way I want with 2 GiB of RAM, I have come to the conclusion that in order to have a real positive experience, you need to have at least 4 GiB of RAM.

This Dell Latitude D830 is now 11 years old. It is far past it’s end of life but thanks to the all the fine engineers involved from kernel development, the applicaitons all the way to package maintainers and testers, this computer still remains very useful and not quite obsolete. I am impressed with the stability open source Nouveau graphics drivers which gives me a lot of confidence that as Nvidia abaondons the older hardware, I have options. I just may get several more years out of this machine.

Further Reading

openSUSE Leap Download

SUSE Imagewriter

Falkon Web Browser

Falkon Web Browser Download for openSUSE

Multimedia Codecs along with VLC Player

KDE Breeze Theme with Oxygen Enhancements

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

 

Panasonic CF-19 Toughbook | Touch Panel Calibration

panasonic-cf-19-toughbook

I don’t have loads of experience with using a touch screen interfaces on Linux but every setup to date has not required any fiddling around in any of the configuration files for proper operation. Thankfully, the folks at Panasonic made the CF-19 with some one-off technology to offer me that experience of understanding how to tweak and configure the touch panel interface.

The Problem

Everything about this machine configured perfectly from the openSUSE installer. Not a single component required extra prodding to use. Even the touch panel was recognized and somewhat usable, however the further away from the center of the screen you would touch, the further off the pointer was from where you touched.

Calibration Attempt One

Doing some searching on the webs, I came upon this tool called xinput_calibrator that creates a set of rules in xorg.conf.d folder (/etc/X11/xorg.conf.d/). It was a such a straight forward approach that I was sure it would work. Running it displays a screen with 4 cross-hair points of which you use the stylus to touch each of them. When it completes, you have a nice little configuration file to drop into xorg.conf.d. Unfortunately, it didn’t work at all.

Calibration Attempt Two

This method was not as easily understood or accomplished and brought with it a good share of trial and error.

First, I needed to find the input name of the touch panel. This was accomplished in my favorite terminal, Konsole:

> xinput list

⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Fujitsu Component USB Touch Panel id=9 [slave pointer (2)]
⎜ ↳ ImPS/2 Generic Wheel Mouse id=11 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=10 [slave keyboard (3)]
↳ Panasonic Laptop Support id=12 [slave keyboard (3)]

Now that I identified that the touch panel was identified, I needed to find further information about the touch panel itself

> xinput list-props “Fujitsu Component USB Touch Panel”

Device ‘Fujitsu Component USB Touch Panel’:
Device Enabled (143): 1
Coordinate Transformation Matrix (145): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Natural Scrolling Enabled (280): 0
libinput Natural Scrolling Enabled Default (281): 0
libinput Calibration Matrix (282): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Calibration Matrix Default (283): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Left Handed Enabled (284): 0
libinput Left Handed Enabled Default (285): 0
libinput Middle Emulation Enabled (286): 0
libinput Middle Emulation Enabled Default (287): 0
libinput Send Events Modes Available (263): 1, 0
libinput Send Events Mode Enabled (264): 0, 0
libinput Send Events Mode Enabled Default (265): 0, 0
Device Node (266): “/dev/input/event6”
Device Product ID (267): 1072, 1282
libinput Drag Lock Buttons (288): <no items>
libinput Horizontal Scroll Enabled (289): 1

I had to modify the line containing the Coordinate Transformation Matrix:

Coordinate Transformation Matrix (145): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000

Some of those comma separated values corresponded to specific properties of the panel matrix. What I learned about those nine numbers that seem to matter:

Touch_area_width, 0, touch_x_offset, 0, touch_area_height, touch_y_offset, 0, 0, 1

I used some trial and error to get this to line up correctly. The best way I knew how to accomplish it was to concentrate on one axis at a time. First adjust the offset and then the width or height.

This is what I ended up with:

1.115, 0, -0.073, 0, 1.14, -0.04, 0, 0, 1

Using nano, I created a little script and called it fujitsu_touch_panel.sh

#!/bin/sh

# Coordinate touch panel to screen

xinput set-prop “Fujitsu Component USB Touch Panel” –type=float “Coordinate Transformation Matrix” 1.115 0 -0.073 0 1.14 -0.04 0 0 1

Saved it and made it executable:

chmod +x ~/bin/fujitsu_touch_panel.sh

Then I moved it to the root directory in a location that seems to make sense… to me:

sudo cp ~/bin/fujitsu_touch_panel.sh /usr/local/bin

I tried several things to get this script to start as soon as the login screen manager, SDDM, started but that was without success. I was advised to try this location: /usr/share/sddm/scripts/. I tired several things, all didn’t work. Perhaps it just may work for someone else and if they are successful, I would be more than happy to edit this post with a better way. Feel free to comment below or contact me.

What I ended up doing was to add a script on startup of KDE Plasma.

System Settings > Startup and Shutdown > Autostart

Select Add Script… and entered the location of the script:

/usr/local/bin/fujitsu_touch_panel.sh

Screenshot_20180422_093443Next, I needed an onscreen keyboard to use. Not that I am a fan of those, as I think they are all terrible, I needed one just to be functional.

sudo zypper in kvkbd

I had to change the color scheme to Dark, because the default was not to my liking, nor was it usable.

Screenshot_20180422_093912.png

It is kind of fun putting this computer into tablet mode and poking around on it with the stylus and also makes me think about how nice KDE Plasma works with a touch interface. It certainly would have been much more fun to play with this if it were a multi-touch interface instead but still, fun and very usable. I certainly prefer a real keyboard but I see the value of this setup.

Final Thoughts

This is a fine little machine that is great for taking to less hospitable (to electronics) type of environments. The keyboard is just a bit cramped for my liking and the touchpad is a bit on the small side. The touch screen, once properly calibrated works wonderfully and even better with a stylus. I will find out this year how well they hold up in a “field” type environment and perhaps blather about that experience.

This is yet another fine case of where openSUSE just works on hardware with very little fussing about. Aside from the touch panel calibration, everything else about this machine works perfectly.

External Links

https://wiki.archlinux.org/index.php/Calibrating_Touchscreen

https://wiki.archlinux.org/index.php/Touchscreen

https://forums.opensuse.org/showthread.php/429517-Can-t-calibrate-touchscreen