Slow wifi with Intel 7265 iwlwifi on Arch

I use my Arch powered bootable USB drive on lots of different hardware, but most often on hand-me-down laptops from work. I recently moved into a newish laptop (a Dell Inspiron 13-7352, P57G) which came with an Intel 7265D wireless card. Its a really nice 2 in 1 laptop where the screen folds back so you can use it in tablet mode, its the size I like (13″) has a backlit keyboard and a touchscreen with an i7. I don’t see myself ever using this thing in tablet mode but build quality seems good and the keyboard is very Macbook-like chicklet type which, while I’m not a huge fan is usable.

Sadly, I do need to keep the SSD drive loaded with Windows (10) since its a work machine, but I was able to take it out of secure boot mode so I could boot from USB as needed. The first few tweaks I needed was to change the resolution because the default res on this screen is only good for the under 30 set. xrandr --output eDP1 --mode 1600x900 gets me something I can live with. Since I use the USB stick on lots of machines, and I’m running i3 and using netctl I don’t have it connect automatically. Sometimes I need to manually scan (like at the library) so I have a few preset profiles I can load set up, but its just another step when I boot to manually connect up. Fn+Brightness keys work fine, as does the Fn+keyboard backlight key but volume keys do not. These are set up in the .i3/config file and I haven’t messed with those keybindings for a couple years and I haven’t looked into fixing that yet, for now I’m just using alsamixer to adjust sound. I did add a binding for screenshots:

# Screenshot bindings 170212
bindsym Print exec scrot $HOME/Pictures/Screenshots/`date +%Y-%m-%d_%H:%M:%S`.png
bindsym $mod+Print exec scrot -u $HOME/Pictures/Screenshots/`date +%Y-%m-%d_%H:%M:%S`.png
bindsym $mod+Shift+Print exec scrot -s $HOME/Pictures/Screenshots/`date +%Y-%m-%d_%H:%M:%S`.png

It wasn’t long before I realized that the network speed over the wireless was just awful when in Linux (currently using kernel 4.9.8-1). The Intel 7265 is fully supported under Linux, though it doesn’t specifically list the 7265D and there really aren’t many complaints about it out there, though there definitely are some and some of those were solved by disabling 11n, but no matter what I tried I just could not get anything faster than about 1.5Mbit/s over my 20Mb connection. The card ran fine in Win10, but even when I disabled the latest iwlwifi (22) and tried each previous version successively in /usr/lib/firmware it wouldn’t ever work right. Another possible culprit was power management but turning it off didn’t help, and most folks complaining about slow performance due to power management reported a slow-down after a certain time period (as if the radio was being powered down on a time limit). This wasn’t my case – it was just slow all the time and equally so. There definitely are some ACPI errors at boot on this machine very similar to those some folks were blaming on the BIOS. The BIOS numbering for this machine (A09) appears to be in an entirely different sequence from the one discussed there (1.4.4) though. There are a few ACPI related errors at boot and I did find a similar kernel bug reported for this kernel, and others have discussed this issue but mostly everything does seem to be working. I can shut the lid and it suspends, and opening it again it resumes and wifi and networking function properly:


ACPI Error: [\_SB_.PCI0.LPCB.H_EC.ECWT] Namespace lookup failure, AE_NOT_FOUND (20160831/psargs-359)
ACPI Error: Method parse/execution failed [\_TZ.FN00._ON] (Node f44bcfa8), AE_NOT_FOUND (20160831/psparse-543)
ACPI: Thermal Zone [THM] (56 C)
ACPI Error: [\_SB_.PCI0.LPCB.H_EC.ECRD] Namespace lookup failure, AE_NOT_FOUND (20160831/psargs-359)
ACPI Error: Method parse/execution failed [\_TZ.TZ00._TMP] (Node f44bcf78), AE_NOT_FOUND (20160831/psparse-543)
ACPI Error: [\_SB_.PCI0.LPCB.H_EC.ECRD] Namespace lookup failure, AE_NOT_FOUND (20160831/psargs-359)
ACPI Error: Method parse/execution failed [\_TZ.TZ01._TMP] (Node f44bc1b0), AE_NOT_FOUND (20160831/psparse-543)

I wish I could relate a more satisfying solution than this: I swapped out the 7265D for a 7260 wireless card out of an ASUS UX303L I have with a broken screen. A few months ago I removed the broken screen and hinges and run the laptop hooked up to an external hdmi screen. Doing so has the side effect of rendering the built in wireless non-functional since the antenna wires route around the screen. Win10 still runs fine with the 7260 (no discernable difference), and now my Arch stick is getting speeds of about 18Mbit/s (according to the command line speedtest-cli program). I was at the point where I had just about given up tweaking software settings and rebooting and if I didn’t have a spare wifi card laying around I would probably have just brought this laptop back in to work and grabbed something less sexy since the slow wifi was that much of an annoyance to me.

Fix for Firefox typing delay and slow scrolling

I frequently boot Arch Linux from a USB3 drive in various Intel based machines which I’ve discussed here before. Recently I was using the drive in a Dell e7240 which is a fairly nice, if older, Core i5 based ultrabook and although the drive was inserted in the USB port marked SS (USB3) performance in Firefox was awful. While performance in terminal windows seemed as quick as usual, typing anything in Firefox induced a delay that was so bad that the letters I typed into the URL bar or into a search form field wouldn’t show up on screen until several seconds after I had typed them. Scrolling with the wheel on the wireless mouse would induce a pause every. single. time. I tried to scroll. It was actually quite maddening, and monitoring in htop didn’t reveal any CPU or memory bottleneck. I disabled a bunch of extensions (plugins) that I wasn’t using often anyway and restarted Firefox with not much change.

A quick Google search turned up this amazingly informative section on the Arch wiki. It turns out that OpenGL OMTC is indeed disabled by default when Firefox is running on this hardware. The page explains that this reduced performance setting might be getting set for a very good reason, but ignoring that good advice, I switched it on in about:config easily enough by toggling

layers.acceleration.force-enabled true

and restarting Firefox. Checking about:support again confirmed it was now enabled. Now Firefox is running just as fast as usual again! I will just have to use it for a while before I can really judge how stable the setup is, but at least I can use the machine.

2016-07-09-204403_1366x768_scrot

Still using Arch on my Thinkpad T410s, but not with KDE anymore

Its been a while since I’ve posted anything here so just as an excercise for the fingers I thought I’d post an update about my current machine.

I’ve been running Arch on an old Thinkpad T410s for almost a year now ( journalctl says logs started on June 23, 2014). Its an Intel i5 M560 2.67 GHz from 2010 that was turned in by the sales department as its warranty ran out, physically broken (handrest cracked) with complaints about it being “too slow”. This was certainly true with Windows 7 on it. It hadn’t come with an nVidia card, so it just has the el crappo first gen Intel HD graphics. The screen is horrible – washed out, nowhere near as nice as some of the newer IPS screens, and not even as good as my old 2008 MacBook (though with a slightly larger screen res: 1440 x 900). I was able to buy a cheap handrest replacement off ebay for $15, and after finding that the reason it was so cheap was because they didn’t supply the electronics with it – forcing me to salvage that stuff off the cracked handrest – this second one has now cracked as well. The fan and heat pipe assembly needs to be taken out and cleaned but have been too lazy to get to it, the speakers are very quiet (compared to the MacBook at least), but everything works and its been a great learning experience for Arch.

arch_gnome3-150507I started using Arch on a USB drive in February of last year with a newer Dell laptop which I had to keep Windows installed on but quickly came to find that I’d rather have a permanent install to play with. This laptop quickly replaced my MacBook (which runs Ubuntu) as a daily driver mainly because its faster but while I like the keyboard more (I hate chicklet keyboards), its just nasty to state at for very long. While the USB install had i3 (a tiling windows manager) configured, I had decided to use KDE on the Thinkpad – and its been interesting getting to know KDE over the past year. At first I thought I was in love – I use Gnome 3 at work and on all my other machines, and KDE was responsive and looked good. It had all kinds of nifty graphical effects (most of which even worked on my slowgar graphics card too!) but little by little the love affair wore off. I just couldn’t find a way to use “activities” (KDE’s virtual desktops) without grumbling about it getting in my way, and the whole massive Akonadi experience with Kontact got frustrating after awhile. I liked kjots and kept a lot of notes in there (luckily, these can still be found in ~/.local/share/notes after kde is removed), but the font sizing for all the apps was always wrong and I couldn’t ever get it to be a comfortable size, and when kMail started having problems with certificates for accounts and the constant nagging error messages and notifications were the last nail. I ripped out KDE tonight and installed Gnome 3 and am busily moving in. I can see giving a die-hard Windows person KDE as their first Linux desktop because it would be very familiar to them, but I don’t think I’ll be going back to it.

Using i3 on my Arch USB flash drive

Back in February I wrote about setting up a bootable USB stick with Arch Linux. At the time I was using it with a Dell laptop, but since then have been running it mainly off an old Thinkpad T410s (with a now totally non-functional power cable and a cracked palmrest) that had been retired from work after it went out of warranty. I had installed Arch on the hard drive of the machine already hoping to make the old girl usable again for web browsing at least (the graphics card and screen on this model are horrible – first gen Intel HD graphics and the screen, while touch enabled, has very little contrast and can’t be seen well except straight on).

I had chosen to use KDE 4 at that time and it was the first time in a long while that I’d used KDE anywhere. It is, in fact, very impressive. Highly configurable, has all sorts of nifty graphics effects and I quickly got comfortable using it. For those who don’t know what KDE looks like, think old Windows with a start button of sorts, but with a vast amount of Win7 and OSX-like graphical effects. I liked it so much I installed Arch and KDE on the Thinkpad’s hard drive as well. However, it turned out that KDE on my USB install wasn’t a good fit. KDE is big, and the USB on this model is only 2.0 making reads and writes slower than the drive is capable of with the result that loading up KDE is slower than it could be and using any cool graphical effects just makes the experience worse. I decided to bite the bullet and learn how to use a lighter weight DE (desktop environment) to see if I could get better performance.

I decided to go with i3 which is a tiling window manager (WM). Its very lightweight meaning there are less reads from the drive, making the experience over my slow USB 2 connection faster and better.

One of my workspaces with three terminals open.  You can tile other programs like firefox or a file manager as well.
One of my workspaces with three terminals open. You can tile other programs like firefox or a file manager as well.

Continue reading “Using i3 on my Arch USB flash drive”

Arch Linux on bootable, persistent USB drive

I recently got a new laptop from work. Its a refurbished Dell Latitude E6330 with an Intel Core i5 processor, a 13″ screen and a 120GB SSD drive that came with Windows 7 Pro. I haven’t used Windows regularly in quite some time (I’ve been using a WinXP VM on the rare occassion I need to do something in Windows) but now that I’ve been using Windows 7 for some time I can say its really a very good OS. That said, I missed my Linux tools, and quickly grew frustrated every time I hit up against a task that I knew I could do easier in Linux or that required yet another proprietary and expensive application. Trust me, you can quickly get used to having access to a vast repository of software that can be installed in seconds safely and for free.

arch-linux-logoSince this is a machine owned by my company (and for which they paid good money for a Windows license) I can’t in good conscience just blow away Windows and replace it with Linux. The SSD, while incredibly fast, isn’t really big enough to carve up partitions for another OS. Besides, the main reason I have the machine is to run some software which requires Windows. That said, there are times when I’d like to use the machine for personal tasks as well, and I’d rather not have my personal information saved on the work machine. This got me thinking about how I could boot the machine from a “persistent” USB drive. Persistent in this sense means that the drive would not only boot the OS (a bootable live CD or USB drive does that), but also serve to store personal settings like wifi settings, themes, installed programs, etc. and personal files so that the next time I boot up, its all there.

Continue reading “Arch Linux on bootable, persistent USB drive”