Dell XPS 13, problems with WiFi

A couple of months ago I bought a Dell XPS 13. I’m still very happy with the laptop, particularly given the target use that I have for it, but I have started noticing a list of problems that do bother me more than a little bit.

The first problem is something that I have spoken of in the original post and updated a couple of times: the firmware (“BIOS”) update. While the firmware is actually published through LVFS by Dell, either Antergos or Arch Linux have some configuration issue with EFI and the System Partition, that cause the EFI shim not to be able to find the right capsule. I ended up just running the update manually twice now, since I didn’t want to spare time to fix the packaging of the firmware updater, and trying with different firmware updates is not easy.

Also, while the new firmware updates made the electrical whining noise effectively disappear, making the laptop very nice to use in quiet hotel rooms (not all hotel rooms are quiet), it seems to have triggered more WiFi problems. Indeed, it got to the point that I could not use the laptop at home at all. I’m not sure what exactly was the problem, but my Linksys WRT1900ACv2 seems to trigger known problems with the WiFi card on this model.

At first I thought it would be a problem with using Arch Linux rather than Dell’s own Ubuntu image, that appeared to have separate Qualcomm drivers for the ath10k card. But it turns out the same error pops up repeated in Dell forums and LaunchPad too. A colleague with the same laptop suggested to just replace the card, getting rid of the whole set of problems introduced by the ath10k driver. Indeed, even looking around the Windows users websites, the recommendation appear to be the same: just replace your card.

The funny bit is that I only really noticed this when I came back from my long August trips, because since I bought the laptop, I hadn’t spent more than a few days at home at that point. I have been in Helsinki, Vancouver and Seattle, used the laptop in airports, lounges, hotels and cafes, as well as my office. And none of those places had any issue with my laptop. I used the laptop extensively to livetweet SREcon Europe from the USENIX wireless at the hotel, and it had no problem whatsoever.

My current theory for this is that there is some mostly-unused feature that is triggered by high-performance access point like the one I have at home, that runs LEDE, and as such is not something you’ll encounter in the wild. This also would explain why the Windows sites that I found referencing the problem are suggesting the card replacement — your average Windows user is unlikely to know how to do so or interested in a solution that does not involve shipping the device back to Dell, and to be fair they probably have a point, why on earth are they selling laptops with crappy WiFi cards?

So anyway my solution to this was to order an Intel 8265 wireless card which includes the same 802.11ac dual-band support and Bluetooth 4.2, and is the same format as the ath10k that the laptop comes with. It feels a bit strange having to open up a new laptop to replace a component, but since this is the serviceable version of Dell, it was not a horrible experience (my Vostro laptop still has a terrible 802.11g 2.4GHz-only card on it, but I can’t replace it easily).

Moving onto something else, the USB-C dock is working great, although I found out the hard way that if you ask Plasma, or whatever else it is that I ended up asking it to, not to put the laptop to sleep the moment the lid is closed, if the power is connected (which I need to make sure I can use the laptop “docked” onto my usual work-from-home setup), it also does not go to sleep if the power is subsequently disconnected. So the short version is that I now usually run the laptop without the power connected unless it’s already running low, and I can easily stay a whole day at a conference without charging, which is great!

Speaking of charging, turns out that the Apple 65W USB-C charger also works great with the XPS 13. Unfortunately it comes without a cable, and particularly with Apple USB-C cable your mileage may vary. It seems to be fine with the Google Pixel phone cable though. I have not tried measuring how much power and which power mode it uses, among other things because I wouldn’t know how to query the USB-C controller to get that information. If you have suggestions I’m all ears.

Otherwise the laptop appears to be working great for me. I only wish I could wake it up from sleep without opening it, when using it docked, but that’s also a minor feature.

The remaining problems are software. For instance Plasma sometimes crashes when I dock the laptop, and the new monitor comes online. And I can’t reboot while docked because the external keyboard (connected on the USB-C dock) is not able to type in the password for the full-disk encryption. Again this is a bother but not a big deal.

New laptop: Dell XPS 13 9360 “Developer Edition”

Since, as I announced some time ago, I’m moving to London in a few months, I’ve been spending the past few weeks organizing the move, deciding what I’ll be bringing with me and what I won’t. One of the things I decided to do was trying to figure out which hardware I would want with me, as I keep collecting hardware both for my own special projects and just out of curiosity.

I decided that having so many laptops as I have right now is a bad idea, and it is due time to consolidate on one or two machines if possible. In particular, my ZenBook has been showing its age, with only 4GB of RAM, and my older Latitude which is now over seven years old does not have a working battery anymore (but with 8GB of RAM it would actually been quite usable!), plus it’s way too bulky for me to keep travelling with, given my usual schedule. Indeed, to be able to have something I can play with on the road, I ended up buying an IdeaPad last year.

So thanks to the lowered value of the Sterling (which I won’t be particularly happy about once I start living there), I decided to get myself a new laptop. I decided for the Dell XPS 13, which is not quite an Ultrabook but it’s also quite handy and small. The killer feature of it for me has been having a USB-C connector and being able to charge through it, since my work laptop is a HP Chromebook 13, which also charges over USB-C, and that gives me the ability to travel with a single power brick.

I ordered it from Dell UK, delivered it to Northern Ireland then reshipped to me, and it arrived this past Friday. The configuration I bought is the i7, 16GB, QHD (3200×1800) display with Ubuntu (rather than Windows 10). I turned it on at the office, as I wanted to make sure it was all in one piece and working, and the first surprise was the musical intro that it started up with. I’m not sure if it’s Ubuntu’s or Dell’s but it’s annoying. I couldn’t skip it with the Esc button, and I didn’t figure out how to make it shut the heck up (although that may have been me not figuring out yet that the function keys are bound to special meanings first).

I also found myself confused by the fact that Dell only provided the BIOS (well, EFI) update file in MS-DOS/Windows format. Turns out that not only the firmware itself can read the file natively (after all EFI uses PE itself), but also Dells is providing the firmware through the LVFS service, that you may remember from Richard Hughes’s blog. The latest firmware for this device is not currently available, but it should be relatively soon.

Update (2017-07-26): The new firmware was release on LVFS and I tried updating it with the fwupd tool. Unfortunately the Arch Linux package does not work at all on my Antergos install. I’m not sure if it’s because the Antergos install changes some subtle parameter from the EFI install of Arch Linux itself, or because the package is completely broken. In particular it looks like the expected paths within the EFI System Partition (ESP) are completely messed up, and fwupd does not appear to identify them dynamically. Sigh.

The hardware of the laptop is pretty impressive, although I’m not a fan of the empty space near the top, that looks to me like an easy catch for cables and ties, which make me afraid for its integrity. The device is also quite denser than I was expecting: it’s quite heavier than the Zenbook, although it packs much more of a punch. The borderless screen is gorgeous but it also means the webcam is in the bottom corner of the screen rather than at the top, likely making it awkward to have a videocall. The keyboard is a bit tricky to get used to, because it’s not quite as good as the one in the ZenBook, but it’s still fairly good quality.

By the way, one of the first thing I did was replacing the Ubuntu install with an install of Antergos (which is effectively Arch Linux with an easier installer). This did mean disabling Secure Boot, but I guess I’ll have to live with it until we get a better idea of how to do Secure Boot properly on Linux and full-disk encryption.

Once I got home, I did what I do with my work laptop too: I connected it to my Anker USB-C dock, and it seemed to work alright. Except for some video corruption here and there, particularly on Konsole. Then I started noticing the lack of sound — but that turned out to be a red herring. The answer is that both the on-board speakers and the HDMI audio output are wired through the same sound interface, just appear as different “profiles”.

It wasn’t until I was already compiling webkitgtk for an hour that I noticed that the laptop wasn’t actually charging, and I thought the problem was with the dock. Instead the answered turned out to be that the HP Chromebook 13 charger is not compatible with the XPS 13, while the Chromebook Pixel charger worked fine. Why the difference? I’m not sure, I guess I need to figure out a way to inspect what is seen by the USB-C bus to figure out what the problem is with that charger. It should not be a problem of wattage, as both the HP charger and the original Dell charger provided with the laptop are 45W.

Speaking of the USB-C dock, there is a funny situation: if the laptop boots with it connected, and the lid closed, it does not appear to return the monitor on (all is fine if it boots with it disconnected). Also, it looks like the default DM provided by Antergos only shows the login page on the laptop’s screen, making it hard to log in at all. And in the usual mess that multi-screen support is with modern Linux desktops, Plasma needs to be killed and restarted to switch between the two monitors. Sigh!

As for the screen corruption that I have noted earlier, it seems to be fixed by one of these two options: upgrading to Linux 4.12 (from Arch Linux testing repository) or changing the compositor’s setting from OpenGL 2.0 to OpenGL 3.1. I think it may be the latter but I have no intention to try this out yet.

It looks like I’ll be very happy with this laptop, I just need to figure out some new workflows so that I don’t feel out of place not having Gentoo on my “workstation”.

Also, to keep with my usual Star Trek host naming, this new laptop is named everett after the (non-canon) USS Everett, which is the same class (Nova-class) as my previous laptop, which was named equinox.

Having an use for UEFI: Windows 7 as a second OS

This is not your average Linux-focused post, I’ m sorry if you were expecting one.

As I said lately, I’m now in Los Angeles, and while my dayjob involves working with a Gentoo-based firmware (and a Flash-written interface), I also have to complete a few tasks for customers at home, one of which requires me to use Windows 7 and Visual Studio 2008, both of which I own a license of … but in Italy.

While my original plan was to use TeamViewer (of which I also have a license — no kidding I know the value of Free Software, given how much I must spend on proprietary software to perform the task that FLOSS is unable to), but unfortunately the same router crash that caused Yamato’s unavailability has caused me to lose access to the laptop I used for this task.

This became even more troublesome considering that while my Dell laptop came with a Windows 7 Professional license, I decided to not install it back last time I decided to repartition it, and even more importantly, when I came here to the US I replaced the 250GB SATA hard drive with a 64GB SSD which is entirely dedicated to my Gentoo installation.

How to solve this situation? Well, seems like I did set me up with the single component to handle this properly: an eSATAp-to-SATA cable, a passive adapter, which can be used in combined eSATA/USB ports, which my laptop has (incidentally, that works just fine if you boot the system with it connected; it also works fine if you resume with it connected… but Linux seems not to have a way to rescan the bus properly, making it unsuitable for hotplug), The other part to this task is of course having the product keys (the Windows 7 one is under my battery, the Visual Studio one is on my NAS, which means a friend of mine can access it), and the discs… luckily, Microsoft’s official ISO files are available, even though you have to hunt for the Windows 7 ones, as they are not public. Visual Studio 2008 and the SP1 are available as downloads, the first as a 90 days convertible trial, which is fine.

My idea was to hope for the best, install Windows on the secondary disk, and then re-install grub2, through SysRescue, to be able to boot from the external drive. Well, it turns out it was much more easy than that. For whatever reason, my laptop can keep booting UEFI and non-UEFI modes without having to reconfigure the firmware every time, just by using F12 to choose the different boot device. So I started the Windows installation in UEFI mode, and watched it progress (I already knew that the firmware can easily boot from the external harddrive, as the eSATA interface only shows it on a different AHCI host, but it’s initialized the same way as the internal one).

After the first installation step was completed, I was honestly surprised to find out that… Windows didn’t even touch grub2! Instead, what it did was create its own EFI boot partition on the secondary harddrive, leaving the main harddrive totally clean… I just have to select “Windows Boot Manager” from the F12 menu, and Windows 7 boots and doesn’t give anything about being on a physically external drive. Even their performance score system is not showing any difference from having it internal (although I’m sure it would show the difference if it was Windows on the SSD).

Of course this is not to say that Microsoft’s software is not the usual stinking stuff… but at least they can leverage UEFI, with all its faults, to make for something… and luckily, they no longer want to be the sole owners of my laptop to just let me use their stuff for one job.

Okay, so Dell wasn’t that much a mistake…

You might remember that a couple of years ago I ranted about my choice of a Dell laptop — I have not found the time until now to write a full retraction of that post, but you might have guessed that I’m not that bothered by the laptop anymore.

Indeed, after a few rough months, the laptop is working quite nicely nowadays; not only the issues with PME I reported were solved a version of the kernel in or two, but also nowadays gentoo-sources have a (patched) experimental driver for the touchpad that lets me disable it exactly like I wish to. After a firmware upgrade (which is unfortunately only available for Windows, but it’s a small price to pay), both the contactful and the contactless smartcard reader interfaces work fine, the SD card reader works nicely with modern kernel, and so does the soundcard (both speakers and microphones). Even the HSDPA modem (that I bought last year, separately, and was quite easy to set up!) works fine on Linux, even though I haven’t found a way to set up the GPS, or to read/send SMS, not that I care about the latter.

Indeed I haven’t run Windows in there for quite a bit, especially since last time I tried to repartition it I couldn’t get grub2 and Windows 7 to play well together, so I just let it “rotting” for the moment, and I’m now honestly considering whether I want to keep Windows 7 in there – it has a few uses for me at customers’, other than updating BIOS and various devices’ firmware – or just install an SSD and be done with it. Third option would be to find an HDD-in-Optical-Bay adapter and get an SSD for Linux and a (pluggable) HDD for Windows 7.

Anyway, after all this I’m pretty happy with Dell, to the point that I both started suggesting it for my customers, and got a few more things from them (namely a Vostro 3750 laptop to use for Windows development, and an U2711 monitor). Why did I change my mind so completely? Mostly because I have seen how other vendors seem to make it more and more inconvenient to use them for anything but looking at facebook.

Take HP: I had to downgrade a laptop for a customer last week, from Vista to XP. It was not the first time I did that, and not the first time I had to do so to an HP laptop.. but this time it got even worse than usual. Let’s ignore the fact that HP pretends that a ton of their “softpaq” packages only work on Vista (while they contain the XP drivers as well); at the end of the day, the BIOS is enforcing some stupid policy on the HDA-based soundcard… I was able to get it running by using the devcon.exe command from Microsoft and making it reset the PCI ID of the soundcard at each Windows startup, which makes it work nicely.

Or take Gigabyte, which usually has a decent support for Linux: yesterday I built a computer for a friend of mine, with a Gigabyte GA-970A-UD3 motherboard; he’s running Windows 7 there, but as usual I wanted to write down the list of components and settings with lshw, so I plugged in my usual SysRescueCD thumbdrive and … it didn’t boot. The same goes for the CD-Rom version; FreeDOS and Windows 7 boot cleanly, so my first guess is that there is something wrong, or at least different, in the way Syslinux boots. Contrarily to the kind of replies I received on twitter, I don’t think that Gigabyte is “not supporting Linux” given that they do list Linux support on their website for this board, more likely there is something funky with SysLinux.

But today’s hall of shame entry is quite enraging: Packard Bell (which has been bought by Acer a few years back) has a netbook line that is called “dot”; an acquaintance of mine received a “dot S” device that is actually a DOT_SE3/W-100IT, which comes with 1GB of RAM, and he asked me if I could get more RAM on it. Sure usually I can — in this case the maximum available is 2GB. He brought the device to me and I tried to find how to open it…

There are no instructions, it’s hard to find anything; DuckDuckGo does not find anything useful, while Google’s “did you mean?” feature made it impossible to find something related to SE3, with many more sources for SE2 and simple S instructions. It goes without saying that neither is anywhere near similar to this one. At the end of the day it seems like the only way you have to access the backside panel under which the memory is, is to disassemble almost the whole motherboard. Not going to.

Where did I disappear? A collection of random status reports

Before people end up thinking I’ve been hiding, or was eaten by the grues while thoroughly labelling my cables – by the way, a huge thanks goes to kondor6c! By running this cleanup operation I finally understood why Yamato and Raven had problems when power was cut: by mistake the AP bridge connecting me to the rest of the network was not connected behind the UPS – I would just like to quickly point out that the reason why I seem less active than usual is that I’m unfortunately forced to spend a lot of time on a daily job right now, namely writing a final report on LScube which will serve as a basis for the future documentation and, hopefully new website.

Speaking about documentation, I’ve been receiving a number of requests to make Autotools Mythbuster available as a single download — I plan on doing so as soon as I can find enough free time to work on that in a relaxing environment.

You might remember though, that originally intended to work on the guide on something nearing full time under compensation; this was not a matter of simple greed but the fact that, to keep it relevant and up to date, it requires more time than I could afford to give it without something paying my bills. Given that, I plan on adding an offline Flattr barcode on the cover when I’ll make it available in PDF.

If you wish to see this happening sooner rather than later, you can generally resort my priorities by showing your appreciation for the guide — it really doesn’t matter how much your flattr is worth, any bit helps and knowing you do want to see the guide extended and available for download is important to me.

Next up in line on the list of things I have to let you know is that in my Portage overlay you can now find a patched, hacked version of pcsc-lite making the libusb device discovery feign being libhal. The reason is a bit far-fetched, but if you remember my pcsc-lite changes Gentoo is dropping HAL support whenever possible; unfortunately pcsc-lite considers HAL the current discovery and libusb the “legacy” one, with the future moving to libudev as soon as Ludovic has a plan for it. In the interim, libusb should work fine for most situations.. fortunately (or not, depends on the point of view) I hit one of those situations where libhal was the only way to get it working properly.

In particular, after a security device firmware update (which has to happen strictly under Windows, dang!), my laptop – of which I have to review the opinion, the only things not working properly right now are the touchpad, for which work is underway, and the fingerprint reader, that seems to be a lost cause – now exposes the RFID contactless smartcard reader as a CCID device. For those not speaking cryptogeek, this means that the interface is the standard one and pcsc-lite can use it through the usual app-crypt/ccid driver it uses already to access the “usual” chipcards. Unfortunately, since the device is compound and exposes the two CCID interfaces on a single address, it has been working correctly only with libhal, as that was the only way to tell the CCID driver to look for a given interface. My patch works this around, and compound devices are seen correctly; I’m waiting to hear from Ludovic whether it would be safe to apply it in Gentoo for all the other users.

So I’m not gone, just very very very busy. But I’m around by mail mostly.

I so much hate brand computers

You might probably know already that I actually get a good deal of my funds as a computer technician, cleaning up and supporting Windows computers for homes and small offices. Sometimes, this also has the good side effect of having people introduced to the new (for them) world of Free Software. On the other hand, the money comes handy especially given that tinderboxing costs and I’m definitely not paid for most of the work I do there.

Beside actually supporting boxes that are already there, from time to time I also build new boxes for friends who ask for my help to choose a new box, cheap and powerful enough for their needs (and I have to say that between AMD and Intel, prices lately really dropped on desktops).

What actually is my personal bane is with brand computers: HP, Acer, Toshiba, you name it, I most likely detest it. I have already ranted about the stupid way that HP has to allow you create the so-called recovery media; but this is nothing compared to the stupidity I encountered with a 2005 Toshiba laptop of a family friend.

Incidentally, my Dell Latitude came with a standard Windows 7 install DVD, and a separate one with software and drivers… thanks Dell!

First of all, the (valid) XP Home license it’s provided with only works with the Toshiba media, as it’s a System-Locked Preinstallation — basically one huge lock-in that forces you to use the original CD (or DVD) the computer comes with to restore, even though you could easily install from a standard (vanilla) CD or a slipstreamed one. Unfortunately, the Toshiba media in this case wasn’t a complex set of CDs that need to be installed in a given order or anything like that; rather it is a single, huge DVD with a Norton Ghost image of the already-installed system. Oh well.

The problem is that the “preinstall” does not come with simply Windows and a few installed Toshiba-branded components, but rather with a truckload of content of all sorts: Norton Internet Security, Adobe Reader 7, Macromedia Flash (yes, Macromedia, and it’s not even uninstallable because the MSI that you’d have to use to run the uninstall is not present in the system)… just what you need to get a headache that you won’t forget for a month or so. About an hour after completing the imaging of the “preinstalled” system, I was able to get the system in a clean enough state so that I could actually start installing the real stuff that is needed.

I got to say, this actually makes me think something good of Microsoft as, for what I know, they stopped using multiple media on the 6.x series (which, I remind you includes Windows 7), and instead use the product code itself to decide what to install on the system.

What actually depresses me quite a while, though, is what one of my most recent customers told me that they only buy brand-name PCs because that way they “risk less incompatibilities between hardware”… considering that I had an HP computer refused to work at all with its recovery media and worked fine when installed manually, a couple of Dell boxes that that, while having the same model number required half-different installs, one with a Radeon card that doesn’t work with the official ATI drivers and require instead the Dell-provided ones, and requires the monitor to be installed with its own drivers otherwise it fails to reach the correct resolution…

Well, in the past three years I built around ten computes that eventually went to run Windows all the time; beside some idiotic hardware manufacturers with captcha-counter-captcha and interminable license agreements, I really didn’t have much trouble; okay so once or twice things didn’t work just smoothly until I updated the BIOS, but that’s not something that brand-name computers are absolutely exempt from. For instance – and I hope it was just a mistake in lshw – on an Acer laptop I had to replace the harddrive on, only after updating the BIOS lshw shown me the data regarding the Level 2 cache; before it was only showing me the level 1 cache; both time I was booting from the same SysRescueCD USB key.

And then people tell me that Linux has bad hardware support… I’d say not; sure it’s picky… but what it’s picky about is mostly the stuff that brand name computers try to shove on you!

On Windows and hardware support

I have blogged before about my part-time job as an external support technician for small businesses and people with near to no computer skills to be able to deal with their systems. Actually, this encompasses almost all of my posts related to Windows since, while I have used it for development and test a few times, I definitely don’t enjoy using it, or even keeping it around at all.

While, as I said, I don’t enjoy using Windows at all, it is true that I have my own licenses of it; yes plural. One I bought for various kind of work, and was a pre-ordered Windows 7 Ultimate license (which I paid less than half what the running price in Italy was, thanks Amazon); the other was given to me with the infamous Dell laptop — getting Ubuntu instead of Windows on that laptop wasn’t a choice from the website, and the call-centre would have given me a sloppier laptop for a 20% extra of price, the “cost” of the license was negative then; not nice, but a fact of life.

The Ultimate license is tied to an installation within a virtual machine (alas, also paid for), while the other is on the laptop itself, mostly because I need(ed) it to update the system’s BIOS and the smartcard reader’s firmware. From time to time I feel enough energy to half-waste my time with it and look if Dell released some new update — I still hope in something that can make the fingerprint reader speak a standardish protocol that some Linux software can make use of. Last time I did that, a number of drivers were updated and I wanted to get them all at once; Dell allows you to use some software of theirs to do so, but it only works with Internet Explorer or Firefox, not Chrome (which is my browser of choice nowadays). Oh well.

As usual for BTO computers, the Dell page provides a few options for drivers that aren’t really present on the unit itself; contrarily with my experience with other vendors (more on that in a moment), Dell only provided a few, and all that they provided was a “not there” option, rather than a “one out of many” option. All in all, it wasn’t as painful as other rebuilds I ran.

On the other hand, yesterday I picked up an HP laptop, not for a job but for a friend of mine, or rather for my friend’s mother. It’s a pretty recent laptop, it’s as powerful as my own Dell (same CPU, much bigger hard disk, ATI graphics card — this is the only thing I envy of that laptop), and came with Windows 7 Home Premium 64-bit preinstalled. Unfortunately, since it was bought, a number of problems came up.

The one reason why I was asked to look at it was that they were unable to install Windows Live Messenger on that system. I wouldn’t have minded suggesting use of Pidgin – I did convert a number of friends to that, and thanks to GTalk & Facebook a few have totally abandoned the Microsoft messenger network – the problem came down to be quite more complex: Windows Update just didn’t want to work. At a first glance the system seemed to be infected by some virus of sorts.

Interestingly enough, they didn’t call me first; I was actually the third choice; the HP tech support was called first, and they insisted that a recovery (nicer word for “format and reinstall”) was needed; a local shop tech was called as well, he insisted on installing a number of other software on the box, including Nero and the Kaspersky antivirus, but didn’t solve the problem, suggesting instead a downgrade to XP (which is silly nowadays, as much as you might find yourself more comfortable with that, running XP in 2010 on a 64-bit capable multicore machine is asking for trouble).

Anyway, I agreed with the HP techs that a recovery was needed, and took the laptop home for backing it up before install, but not before asking whether they or the techs created the recovery media.

While Dell provided me with old school DVDs with the operating system and the drivers, HP ships their laptop with a recovery partition on the disk, and some tools to eventually create recovery media. When I first tried to get a Linux-running laptop rather than the MacBook Pro I was using since 2005 or so, I got a Compaq cheap-o laptop with Vista, so I knew the drill: the recovery media was either in a silly number of CDs or in two DVDs, it could be created once only, as afterwards the software stopped providing the option. Of course nothing stopped me at the time from making a copy of the two DVDs in form of ISOs and burning another pair of them — still wondering who in which department of HP came up with such a backwards idea.

Funnily enough, the techs didn’t create a recovery media set because “there’s the partition, that’s better”, which is a lame excuse for “couldn’t be arsed” — not only the partition can be infected because it’s accessible by the standard operating system, but also you cannot rely on it if your harddrive melts and you have it replaced. As you might have guessed already, HP sells the recovery media themselves. Okay, I doublecheck that the software still allows me to proceed and yep; that means that the techs are really being incompetent and not malicious.

I bring the laptop home, and first thing first I start up a SysRescueCD USB key to check for viruses — I’m not sure, maybe SysRescueCD upstream is reading what I write, or my mind, since they added the iSCSI Enterprise Target package in their latest releases, which allows me to export the partitions as a whole to read with the virtual machine (much faster and more reliable than using ntfs-3g and Samba). In a situation that I really don’t like, the scan leads to no virus identified, at all, with an up-to-date definitions database. Oh well, it’s backup time by now.

After this is also done, I try to build the recovery media; HP gotta be kidding me because this time the options are an unknown (to me) number of CDs or six DVDs. Yes, 6, 4.7GB disks, over 25GB of recovery, sheesh! They sure bundle a lot of software in their recovery. I struggle to find as many empty DVDs at home (I haven’t bought any in years, and no, you cannot use a DVD-RW, copy the ISO and blank it again, they disallow DVD-RW media, as well as dual-layer DVDs), and try using those. To my surprise, it refused to write to them, at all. Okay, I supposed that whatever messed with the system enough to disable Windows Update could have disabled the DVD writer as well, so I decide to try again after the recovery; I ran the recovery from the partition.

Interesting fact: HP allows you to execute either a full manufacturer recovery or a minimal recovery; the latter should be pretty much vanilla, so I chose that. After the install, hell itself came to me. First of all, “minimal” doesn’t really mean vanilla; HP still install their recovery manager (of course), all the drivers and some Windows updates. But that’s bearable.

The bad part started to show itself when Windows Update still wasn’t working; and the same went for the recovery manager, it failed to write to the DVDs. Trying to debug the issue, I noticed two even more upsetting problems: the first was trying to change the network location classification from Public to Work, which threw up a UAC window claiming that “an unknown program” tried to change the system configuration (the Control Panel is an unknown program now?); the second was the Event Viewer applet being totally f♥♥ked up: UAC complained that mmc.exe wasn’t signed (what?), and it didn’t show any message of any kind at all.

Cursing HP loudly, plan B was the only choice. I got a Windows 7 Home Premium 64-bit DVD and decided to install a clean, vanilla copy of Windows, and deal with the drivers’ mess later. This actually worked pretty well up to now. The only inconvenience is that Windows refused to active itself online, with the original HP product key, requiring me to call the automatic phone service (which is no longer toll-free calling from cellphones; but it was still better than typing 54 – fifty-four – numbers by hand).

It was definitely funny, though, to note the difference between Dell and HP: the former has the product’s labels visible underneath the laptop, and the Windows license sticker hidden underneath the battery; the latter has it swapped, with the license visible, and all the product’s information requiring the removal of the battery to be read.

Anyway, while the system was installing first and updating afterwards (I don’t think I’d ever expected myself to rejoice so much seeing Windows Update working!) I got the model number and went to look for the drivers on HP’s support page. And then I remembered why I hated working with HP laptops this much.

The page for the exact product name is showing me drivers for the Intel Turbo Boost technology (not supported by this laptop), both ATI and Intel graphics card (it only has the ATI), a driver for Realtek card reader (which doesn’t seem to be present?), two Bluetooth drivers (of which at least one doesn’t work!) and three wireless adapter drivers (Broadcom, Atheros and Intel). Interestingly enough, Windows 7 already detects both the wired and wireless network cards upon install; their drivers, as well as the Synaptic touchpad drivers, all of which are present in the product’s driver page (after you have already chosen Windows 7 as operating system) are downloaded through Windows Update and need not to be installed through the HP packages at all.

At the end of the day I downloaded 117MB of bad (unused) drivers, and 288MB of unneeded or obsolete drivers (including a 200MB worth of ATI drivers, where the original Catalyst is 70MB in size).

I have to say that even though not everything work as it is, my Dell has shown a much friendlier approach both in terms of user experience with Windows, and friendliness in configuration, so in this, I really can’t blame them. I’m just afraid this won’t be the last HP laptop I’ll have to work on.

Dell was a definite mistake, and an expensive one

This week, my newly-bought laptop arrived; as I noted I was looking for a computer that had a Trackpoint device, to avoid touching the touchpad while I’m writing. This brought me to exactly two viable alternatives:

  • Lenovo, with their Thinkpad, had a good track record with Linux; they also have usually a decent price (doesn’t mean they are cheap but that they are worth their pricetag) and in general they were my first choice;
  • Dell and the Latitude E65xx series was the second choice; they didn’t have such a good track record, but most people didn’t complain much about them, beside for minor annoyances.

Again, as I said above, Lenovo doesn’t sell directly in Italy, who knows why; unfortunately this is also the cause for their price to be quite higher in Italy in general. Also, I don’t have many options for Lenovo resellers in my area; the nearest one (50Km from here) sent me the price for “the model I asked for” after a week I asked for it: after VAT it was €300 more than the same from Lenovo UK. I also quoted this being the model I asked for because it really wasn’t!

Not only they still forced me to pick up a Windows license (okay, not too nice but I can live with it), but they also forgot to upgrade the RAM to 4GiB as I asked and, quite a bad one, they didn’t provide me with an integrated smartcard reader. Indeed, the first time around the guy at the sales department of the reseller asked me if I was sure to ask for a BTO about that, given that all T510 already had (translated, but literal) “reader of smartcards of SD type, those for photo cameras”. When the price came, they actually were proposing me to buy a T510 and a smartcard reader, from GemAlto and Lenovo branded. Not a ExpressCard reader though, an USB reader. I guess you can tell what the problem is with that; if not, the problem was that I already have an USB card reader, it’s just difficult to use on, say, a train.

So I surveyed the Dell options; they didn’t allow me to forgo on Windows 7 from the website, so I called the hotline and asked for a sales person to help me out; they refused right away to switch my keyboard for an US one, which was unfortunate but bearable, then they told me that they’d let me know if it was possible to avoid Windows; in two days they came back with an offer… for the E6510 with Ubuntu Linux rather than Windows 7, base options (no 4GiB memory, which I asked for, and no webcam, fingerprint reader, RFID reader, which I didn’t ask for and I didn’t/don’t need)… but at a €500 premium over the same laptop from the website with Windows 7. For the same price, I could get the highest-level option, with Core i7, all the extras and so on.

So the Dell arrived, and I started installing Gentoo on it; beside a series of quirks, which I googled up, such as the smartcard reader needing patching of OpenSC/OpenCT to work, or the fact that the RFID and fingerprint readers not working under Linux (with Daniel confirming that there is realistically no hope of getting the new ones to work on Linux any time soon), everything seemed to go fine. The network card is definitely stable and fast; the wireless card required me to create a new firmware ebuild because of the many ucode ebuilds we have in portage, mine was missing, but it was a matter of minutes.

The problem started when it came down to run Xorg. The nVidia card works quite fine with the drivers, so that’s not a problem, but the touchpad, oh the touchpad. For apparently no reason first, the touchpad was being recognised as a simple mouse; and contrarily to what most people told me about the Thinkpad laptops, the touchpad and the trackpoint in Dell’s hardware are not separate (hardware) devices; they appear as separate devices in Linux because the ALPS driver in the kernel splits them after parsing their different protocols. Unfortunately, both the E6400 and the E6500 Latitude models have a new Alps Electric combined GlidePoint device with a protocol that is, as of now, unsupported by the Linux kernel; Ubuntu submitted some patches for it to the kernel but none that works yet. Right now the device is seen as a standard PS/2 mouse and entirely handled in BIOS, without special features or settings.

The second problem came when it was time to turn off the laptop: halting the system causes it to reboot instead; I thought the problem was related to ACPI, so I looked up if there were BIOS updates, and lo and behold, two were around. Unfortunately, applying them is not the usual matter of running flashrom, on a laptop. Dell used to develop Linux tools for their laptops, including firmware update software; as far as I know they were the first vendor doing so. Unfortunately, they either stopped, or this model is not covered, and the only BIOS updates are provided bundled within the Windows-based flasher (which most likely is not the real flasher at all, given that the system reboots itself before flashing both BIOS and the firmware of the Embedded Controller.

Now, not everything goes bad, luckily for me. I mailed Matthew Garrett, to ask him for pointers on what I could try to get it at least to halt properly, and he’s suggested me a git tree to try which I’m now building. He also pointed out that there is at least some work going on to solve the Alps touchpad problem (which makes me hopeful that this will be properly solved before end of the year). And of course he didn’t have to tell me why the external monitor button prints a ‘p’ since I knew the unfortunate reasons already.

On the bright side, the hardware looks, by itself, tremendously nice: the keyboard, while not as good as the Apple Aluminiums is quite solid and nice to write on, the touchpad is not as invasive as on the MacBook Pro, the monitor is gorgeous and it has all kind of expansion ports including eSATA. The battery lasts a lot even on Linux and even without setting up the governors properly, and so on so forth. I just hope the few problems will smooth themselves out soon.