After a long time of trial and error, I believe I finally have a very good setup with my top end XPS 13 DE. The only thing that still doesn't work is the microphone, and I still get the occasional double key press. However this system has been extremely reliable, fast, gets good battery life and I never get kernel panics. It is my primary work machine and I use it between 6-10 hours a day. It has done about 20,000 miles of travel with me so far.
None of this is meant to be taken as gospel, and I would welcome and appreciate any feedback or suggestions on better methods.
Here's a summary of what I did, I hope it helps someone.
- upgrade to BIOS A04 immediately. Most of you have probably done this by now, or its hopefully shipping with this now. This took my keyboard bouncing key issue from a 99 on the annoyance level to about a 10. The keyboard is extremely usable now.
- Replaced the wireless card with an Intel 7265 from Newegg ~$30 shipped. I know, it ***, but the Broadcom drivers are awful and are causing lots of problems (they havent been updated since last November). I have no idea if this voids the warranty, maybe check with Dell first. You will need a small T5 screwdriver as well as a small phillips head. It's not hard to do. If you don't do this, you will still be able to have a mostly reliable system but you will likely have kernel panics when switching wireless networks, or possibly resuming from sleep (I had both). Apparently there are patches for the Broadcom driver. I have never tried them. I don't think the Broadcom is a bad card, and hopefully the issues can be resolved when they (finally) update the drivers.
-Perform a clean install of Ubuntu 15.04 using UEFI instuctions (link below) provided by Dell. Wipe the entire disk (backup your data first, obviously), there is no reason to keep the factory image in my opinion. And I wouldn't be concerned that 15.04 isn't an LTS release. You'll have moved on to another version long before the support cycle is done
For some reason this didnt work the first time when I installed and encrypted the entire volume, it wouldn't boot. I did the entire process again and it worked with UEFI, Secure boot and full disk encryption.
- Edit /etc/modprobe.d/blacklist.conf, add these lines at the bottom. This is going to fix kernel panics and help the touchpad.
I also add this to disable the webcam because I dont want it. I know you can disable this in the BIOS, but I've found that even with it disabled, it still works a lot of the time. Weird.
EDIT: If you blacklist these modules and your kernel is still loading them, run 'sudo update-initramfs -u' then reboot.
- Run apt-get update/upgrade, install all updates which should include a new 3.19x kernel. Reboot. You can verify those kernel modules are now blacklisted by running 'xinput'. You should NOT see a Synaptics PS/2 driver loaded.
- Do this to make the trackpad WAY less annoying--Add below contents to /etc/X11/xorg.conf.d/50-synaptics.conf (you will likely have to mkdir xorg.conf.d) then log out and back in.
#setting for synaptics
Identifier "evdev touchpad catchall"
Option "Protocol" "event"
Option "FingerLow" "10"
Option "FingerHigh" "40"
Option "MinSpeed" "0.3"
Option "MaxSpeed" "1.6"
Option "AccelFactor" "0.5"
Option "EmulateTwoFingerMinW" "8"
Option "EmulateTwoFingerMinZ" "10"
Option "HorizScrollDelta" "100"
Option "HorizTwoFingerScroll" "1"
Option "VertScrollDelta" "15"
Option "VertTwoFingerScroll" "1"
Option "TapButton1" "1"
Option "TapButton2" "3"
Option "TapButton3" "2"
Option "PalmDetect" "1"
Option "AreaRightEdge" "1020"
Option "AreaTopEdge" "40"
Option "FastTaps" "0"
Option "SHMConfig" "1"
Option "MaxTapTime" "100"
Option "TapAndDragGesture" "false"
Option "Clickpad" "1"
-Next we're going to start messing with kernels, so I like to add this to my default grub conf so it will show a boot menu on every bootup for 5 seconds, it just makes switching between kernels and getting into recovery mode easier if I need to. This is also adding some kernel startup options which will fix the screen flickering issue on boot/reboot/shutdown, and also have the options that the Dell patch included for kernel panics.
Edit /etc/default/grub to look like below then run 'sudo update-grub' and reboot
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash i915.enable_ips=0 pcie_aspm=force radeon.modeset=0 nouveau.modeset=0"
-Install a 4.x kernel. 4.1.1 works GREAT! The only thing that doesn't work is the mic. It seems to have a bug that pops up every other kernel update because I know it worked in a previous 4.x kernel. I bet it works again in 4.1.2. I never use my mic, so this isnt a concern for me. If it is you may consider seeking out the patch ( I have never cared enough to try) or staying on the older kernel. Doing this new kernel installation will keep your previous kernels in place, so you can always switch back to them in the Grub boot menu. If you didnt replace the wireless card with an Intel, you will need to apply a patch to the Broadcom driver to get it to work in Kernel 4.x, directions here about half way down the page : http://forthescience.org/blog/2015/04/21/installing_ubuntu_14_04_on_the_new_dell_xps_13_v2/
Get the kernel install debs from here:http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.1.1-unstable/
(or whatever the latest version is).
You need 3 debs from there (replace x's with the version you are downloading), linux-headers-xxxx-generic_amd64.deb, linux-headers_xxxx_all.deb, linux-image-xxxx-generic_xxxx_amd64.deb
Then install them: 'sudo dpkg -i linux-headers_xxxx_all.deb'
'sudo dpkg -i linux-headers-xxxx-generic_amd64.deb'
'sudo dpkg -i linux-image-xxxx-generic_xxxx_amd64.deb'
Reboot. Run uname -r to verify you're on the new kernel. If you're still on the old 3.x kernel, then reboot and select the new kernel under Advanced in the boot menu. You can set the default one later manually if you need to.
- Install laptop-mode-tools. I still can't find a definitive answer as to whether or not this is still the best way to go, but it works and it works well. You can manually edit the intel_pstate conf and set some pretty conservative CPU speeds if you want to stretch out that battery. With this enabled, Max CPU set to 50%, Turbo boost disabled, Wifi power savings at 3, I get a solid 9 hours of run time with Wifi on and screen at about 75% brightness and the laptop stays very cool. It's still responsive and fast. If I take that max CPU to 25%, it runs at the lowest speed of 800Mhz constantly and the laptop is seriously cold. I have never stretched out the battery on this setting, because at this setting you definitely notice UI sluggishness.
'sudo apt-get install laptop-mode-tools'. You'll then see a bunch of stuff in /etc/laptop-mode. under conf.d you can edit some of the settings for pstate, wireless, etc. I also had to manually add the init script for laptop-mode to startup as they weren't starting up on reboot.
After all of this you should be in pretty good shape. Here I would set up my IPtables rules, and install Cinnamon desktop and remove Unity. Cinnamon seems to play much nicer with this HiDPi display. Things just look much better in all apps without having to tweak anything. One issue I had is the network settings dialog doesnt work when you install Cinnamon. If you run 'cinnamon-settings' from the terminal, you will see an error about libnetwork.so. The fix was to pull libnetwork.so out of a cinnamon-settings DEB installer out of the Ubuntu Wily repo (its version 2.6) then replace the file on my system with that and then the network settings preferences panel worked.
I blacklisted mei and mei_me, as you suggested, but I still had a kernel panic with flashing caps key in suspend just now. I also blacklisted psmouse, but xinput still gives synPS/2 Synaptics Touchpad. This is on 15.04, with the latest 3.19 kernel.
I keep seeing these posts where people are going thru exhaustive steps to fix their laptop. All I needed
A04 + Kernel 3.19 and I was done. Still running the dell ubuntu 14.04 and having no issues. Keyboard is great, wireless is perfect (broadcom), trackpad is acceptable.
I have to wonder how much of the issues people are seeing are due to them breaking things themselves.
Breaking things ourselves? The laptop was unusable out of the box. It was broken before we even touched it.
The reason people keep posting these write ups is because there are still lots of folks coming here with lots of problems with this laptop.
Unusable is a bit strong. There were some glitches, which installing 3.19 on top of the stock 14.04 fixed most of. The last little bit of keyboard repeat I had was killed with A04.
derxen, you may need to run 'sudo update-initramfs -u' if your kernel modules aren't blacklisted. I wrote this in order, so when I blacklist the kernel modules right away after a 15.04 install, then run an update/upgrade, the kernel update process will run the update-initramfs and blacklist the modules. Also keep in mind that even with those disabled, running the Broadcom card with the *** driver can still cause panics and sleep/resume issues.
eusophoros - I dont think thats a bit strong at all. I opened the box, the trackpad was jumping around like crazy, the software crashed at startup, and the laptop wouldnt go to sleep without crashing. That to me is unusable.
broadcom definitely cannot be perfect, the binary drivers just don't allow that.
* no additional channels (and before anyone writes that they are listed: just listing them doesn't mean they are usable. It won't even find those networks when scanning, connecting is impossible)
* only b/g support (configure your router to n-only and try to connect...)
a pity that bluetooth also needs proprietary firmware to load (so contrary to the thread starter's view there *is* reason to not blindly repartition without keeping the Dell provided stuff. Keep at least the firmware package, that avoids fiddling with extracting the necessary files from a windows driver)
Of course some might not care about this, but it is a real nuisance when there are many routers in close space and you are forced to use overlapping frequency ranges because of that, or simply cannot connect at all.
and keyboard only is "perfect" when you are a slow typer. When you type fast (or rather in a specific rhythm), the double-space problem remains, surely not caused by "fiddling around". Thankfully for me it is only space that is doubled, other users apparently still have problem with other keys as well.
trackpad is usable in clickpad mode (but that limits your ability to select large portions of text and you loose middle-click emulation - but that I can live with)
not being able to connect to n-only network was a router misconfiguration after all (phew) - router had WMM disabled, and contrary to other devices around the broadcom one is picky about hat. But with WMM enabled, also better transfer rates than 54Mbps are used. Still no support for channel 12 or 13 though
Not sure what you mean by additional channels. Perhaps I just got lucky and run my 5ghz ac setup at home the way they are expecting. (Same for my office). From day one I've had zero issues with the broadcom.
As for the keyboard repeat I average 100ish wpm at 98% accuracy in the tests I've done and been in computer science fields for 20 years. Haven't had a single repeat since I put a04 on the xps 13.
It *** people are still having issues and wish I knew what was special about my setup that I've have such a great experience. This is the best laptop I've ever owned and see myself keeping for at least the next couple years till the 8gb of ram gets too painful.
cloph, not sure what I could have done differently, but I never needed to copy any Bluetooth drivers out of any windows driver or anything. When I installed Ubuntu 15.04 from scratch, there is a check box very early on in the install about installing 3rd party software, or unsupported software (cant remember the exact wording right now). All I had to do was check that and BT and Wifi worked, even with the Broadcom card.