Samsung ATIV Smart PC Pro (XE700T1C)
Contents
Replacing the SSD
The first thing I wanted to do with the device even before turning it on was to get Linux onto it. Since I also wanted to replace the 64GB SSD with a new 128GB one I thought the easiest approach would be to make an exact replica of my current laptop drive on the new SSD before putting it in and that way I'd have the OS installed with all my data on it as soon as I first powered it up. I had already bought an adapter to allow me to connect the mSATA SSD to USB just in case I had trouble booting the new system from USB and had no other option other than this method of installation, so I first copied my drive across with the dd command. It turns out there's no problem booting the system from USB, but it's still useful to be able to use my mSata drives via USB or to use them in normal 2.5 inch bays.
The next step was to take the unit apart and replace the drive. I found a good video here which I followed and got it opened successfully in a few minutes. The guy in the video used a guitar pick, but I found a credit card was fine - one that had expired is best as you may damage the edges.
Then for it to be able to boot into Linux you need to enter the BIOS configuration by pressing the F2 key when the unit is powered up, then disable the secure boot protocol and change from UEFI to CSM for OS mode. If you want to allow booting from USB drives you also need to disable the fast boot option in the advanced settings
Touchscreen
Everything worked perfectly when the machine booted into Debian 7 except the touch screen. I know that it works because you can use it to configure the BIOS. I found by searching dmesg that it's an Atmel MaXTouch Digitizer and that there's a kernel module called atmel_mxt_ts that should handle it but even though it's being discovered as a USB device, it's not being connected to an input event or added into xorg.conf.
Linux kernel 3.3+
It turns out that the touchscreen requires a kernel version of at least 3.3, but Debian 7 only use 3.2. The most recent Ubuntu (which at the time of writing is 13.10) uses 3.11 and the prior two use 3.8 and 3.5, but unfortunately only the LTS versions of Ubuntu are stable, the others all tend to have major usability problems and the last LTS is 12.04 which like Debian is on kernel version 3.2. I tried the most recent Ubuntu anyway just in case it happened to work for me, and although the touchscreen worked out of the box, it was too buggy and crashy for practical use.
So I decided to look at Linux Mint which I've been wanting to try for a while and it turns out that the latest stable version uses kernel version 3.11 (even the two stable versions prior to that use more recent kernels than 3.2). After using it for a week or so I'm finding it pretty good, it's stable and snappy and everything's worked out of the box. It's a little old-school following the Gnome 2 interface paradigm, but I'm finding that to be ok.
Onboard virtual keyboard
For the on-screen keyboard I'm using Onboard which is the one used by Ubuntu by default which is so far the only one I've found that has a CTRL key that works with mouse clicks. It also offers virtual keys for right mouse clicks which is very useful too.
Password entry problem
One problem I haven't found out how to solve yet is that the virtual cannot be used to enter passwords since the password dialog makes all other windows (including Onboard) inaccessible until after the password has been entered or cancel clicked. The only solution I've found to this is to select in the Gnome preferences to make password dialogs into normal windows, but that options doesn't seem to be present in Linux Mint. This Mint forum entry is about this issue but the suggested solution doesn't do anything for me.
Flick gestures
To enable flick gestures for reading web pages, I've installed the Grab and Drag extension in Firefox which works well, but unfortunately the momentum option doesn't seem to do anything.
Useful extensions and apps
- Cheese: app installed via software manager for taking photos
- Default FullZoom Level: Firefox addon so to allow the default zoom size to be 125% since the screen is very hi-res
- Grab and Drag: Firefox addon to add flick gestures to web pages