Gave up

As noted in comments on earlier posts, I gave up with my X102 and returned it to the shop.

 

In the main I was frustrated by the poor display driver support and issues with power/brightness control.

 

I replaced it with a Toshiba NB10, which I’ve had much more success with. I started a similar site to record my progress with it at http://unofficialnb10.wordpress.com/

I’ll leave this site up, and I’m happy to accept any posts anyone wants to contribute or links to other sites with information about the X102.

Thank you to all who commented.

Debian and the X102

At the time of writing, both Debian Stable (wheezy) and Testing (jessie) would boot easily on the X102.

In both cases, you can simply download one of the install ISOs, dd’ it on to a USB flash device, and boot in to the installer. Either will work.

Jessie appears at a quick glance to have almost complete hardware support. The wifi, wired ethernet, camera, sound hardware, touchpad, and touchscreen(!) all work out-of-the-box.

There’s no hardware acceleration for the AMD/ATI Radeon so the desktop is extremely slow. It does, however, launch correctly at the right resolution and run stably. It’s likely that the latest ‘fglrx’ (binary-only) driver from AMD might fix this.

Wheezy installs easily, and likewise lacks driver support for the display – but produces a usable desktop nevertheless. It also appears to lack out-of-the-box support for the touchscreen, and possibly also for the camera. Both wired and wireless ethernet work as expected.

X102BA annoyances

The things which irritate me about the X102BA, in roughly descending order of irritation

  • No hard disk light.

Can’t always tell if the UI is lagging because a touchpad click wasn’t recognised, or because we’re waiting for the disk. An upgrade to SSD (which I will probably do) would eliminate this.

  •  No CAPS LOCK light.

Not every login screen and app is good at warning you that you’ve typed a password in capitals.

  • FGLRX brightness / ACPI for shutdown (if not solved yet)

On Linux – the fglrx (closed-source binary) driver doesn’t support brightness adjustment on this hardware yet, so the screen is stuck at max brightness.

ACPI doesn’t seem quite right – it can read the battery level and temperatures etc, but can’t power-off the system on halt.

  • Slightly peculiar keyboard layout

The arrangement of “shift” and “function” around the cursor keys is not quite right.

P1030921

  • Keyboard feels a little bit cheap and nasty.

 

X102BA hardware – a Linux perspective

A Linux perspective on the X102BA hardware.

lsusb output:

Bus 002 Device 003: ID 04f2:b404 Chicony Electronics Co., Ltd 
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 002: ID 03eb:843d Atmel Corp. 
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

lspci output:

00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Root Complex
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Kabini [Radeon HD 8180]
00:01.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Device 9840
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 0
00:02.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:02.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Functions 5:1
00:10.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB XHCI Controller (rev 01)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 40)
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB OHCI Controller (rev 39)
00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 39)
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB OHCI Controller (rev 39)
00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 39)
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 3a)
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 02)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 11)
00:14.7 SD Host controller: Advanced Micro Devices, Inc. [AMD] FCH SD Flash Controller (rev 01)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 16h Processor Function 5
01:00.0 Network controller: Qualcomm Atheros AR9485 Wireless Network Adapter (rev 01)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 05)

cat /proc/cpuinfo output:

processor  : 0
vendor_id   : AuthenticAMD
cpu family  : 22
model       : 0
model name  : AMD A4-1200 APU with Radeon(TM) HD Graphics
stepping    : 1
microcode   : 0x700010b
cpu MHz     : 600.000
cache size  : 1024 KB
physical id : 0
siblings    : 2
core id     : 0
cpu cores   : 2
apicid      : 0
initial apicid  : 0
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt topoext perfctr_nb perfctr_l2 arat xsaveopt hw_pstate proc_feedback npt lbrv svm_lock nrip_save tsc_scale flushbyasid decodeassists pausefilter pfthreshold bmi1
bogomips    : 1996.36
TLB size    : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate [11]

processor   : 1
vendor_id   : AuthenticAMD
cpu family  : 22
model       : 0
model name  : AMD A4-1200 APU with Radeon(TM) HD Graphics    
stepping    : 1
microcode   : 0x700010b
cpu MHz     : 600.000
cache size  : 1024 KB
physical id : 0
siblings    : 2
core id     : 1
cpu cores   : 2
apicid      : 1
initial apicid  : 1
fpu     : yes
fpu_exception   : yes
cpuid level : 13
wp      : yes
flags       : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc extd_apicid aperfmperf eagerfpu pni pclmulqdq monitor ssse3 cx16 sse4_1 sse4_2 movbe popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt topoext perfctr_nb perfctr_l2 arat xsaveopt hw_pstate proc_feedback npt lbrv svm_lock nrip_save tsc_scale flushbyasid decodeassists pausefilter pfthreshold bmi1
bogomips    : 1996.36
TLB size    : 1024 4K pages
clflush size    : 64
cache_alignment : 64
address sizes   : 40 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate [11]

The supplied disk is a 5400RPM 2.5″ 7mm SATA with 8MB cache and “advanced format” (4K sector size):

Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: ATA      Model: HGST HTS545050A7 Rev: GG2O:
  Type:   Direct-Access                    ANSI  SCSI revision: 05

Updating the X102BA BIOS (without Windows)

The simplest way to flash/upgrade the X102BA BIOS does not need any particular operating system installed.

Fetch your new BIOS from http://support.asus.com/download.aspx?SLanguage=en&p=3&s=533&m=X102BA.

Unzip the .ZIP file to a FAT formatted USB flash device.

Insert the USB flash device and boot to the BIOS (by tapping escape as you power on and selecting “enter setup”).

Pick “start easy flash” from the “advanced” menu in the BIOS.

IMG_20131206_145328

Select the file, press enter, and the flash process will start.

IMG_20131206_145405

At the time of writing, the newest available on the Asus site was version 214, which confusingly is labelled both “214″ and “2.15.1236″ inside the BIOS. My X102BA shipped with 212. Note “Version” string near top of screen, and different number on bottom line:

IMG_20131206_145537

UEFI Secure Boot and the X102

My X102BA shipped with Windows 8. It therefore has UEFI Secure Boot enabled by default.

Most (although not all) devices with UEFI Secure Boot can be easily booted in to other operating systems, and this one is no exception.

To boot from a USB storage device, power on the X102 and tap f9 as the BIOS splash screen shows. This will show a Windows logo, but don’t worry. If you wait a moment, a menu of recovery options will appear – which will allow you to either access the BIOS setup, or opt to boot from a USB device.

To disable secure boot in the BIOS, use the “Secure Boot menu” at the bottom of the “Security” tab (it scrolls!) and pick “disabled”.

If you want to boot in legacy BIOS mode instead of UEFI, select “launch CSM” in the “Boot” tab. CSM stands for “Compatibility Support Module” and is marketing language for “old fashioned BIOS support”. Once this is done you can select your desired boot device.

Once Secure Boot is disabled, you can tap F9 or ESC during the BIOS splash screen on future boot-ups to select a boot device or access the BIOS.

X102BA unboxing and disassembly

Here’s the X102BA taken from brand-new-in-box down to most of its component parts.

We start with the unboxing:

P1030909 P1030910 P1030911P1030921

Looking around the case, there’s a reasonable selection of ports. On the left side, VGA, HDMI, charger, and a single USB3 port.P1030912

On the right, a pair of USB2 ports, the mic/earphone socket, Kensington Lock, and ethernet – with a peculiar sprung flap to hold the RJ45 lug.

P1030914 P1030916

The back and underneath are unremarkable:

P1030913 P1030918

Then the disassembly, all of which was done using a PH0 (Phillips) screwdriver, and a plastic spudger. It’s easy to do if you take your time.

All of the screws are the same head, the only differences being that 2 different lengths of screw are used. The machine ships with a plastic blank in the SD card slot. This must be removed otherwise it stops the case from coming apart.

The only obstacle to getting the case open, is 3 hidden screws. The screws hiding under the rear pair of rubber feet were predictable; the one under the serial number label less so.

P1030940

Once all 6 screws are out, it’s simply a case of gently inserting the spudger at one corner (beside the LEDs seems easy) and prizing the two halves of the case apart.

P1030927

A few things are immediately apparent:

  • There’s a fan
  • The RAM is soldered, so can’t be upgraded
  • There’s only one Mini-PCIe slot, which contains the WiFi card already
  • The drive is a standard SATA disk and totally upgradeable

Before we progress, we need to remove the keyboard/trackpad assembly, so that we don’t damage the cables. There are two cables, each goes to a different type of ZIF socket on the motherboard. The wider ribbon cable goes to a socket with lugs which lever gently backwards to release the ribbon. The narrow one goes to a tiny socket which has lugs which flip upwards to release the cable. Both are easy with the spudger and require little force.

P1030929

Now the keyboard is removed, we can relax a bit and have a close look at that soldered RAM and the disk. Note that there are 4 more RAM chips on the reverse side of the motherboard (see below).

P1030932 P1030933

There’s a large, silvered ribbon cable connecting the motherboard on the left, with the daughterboard on the right that holds the LEDs and right-hand set of ports. It’s also hiding the mini-PCIe wireless card. It comes out very easily by gently easing the two ZIF sockets open:

P1030937

This gives us a closer look at the wifi module; what a shame they only connected a single antenna. There’s clearly room for a larger and more capable module – but sadly no more slots:

P1030934 P1030945 P1030938

Removal of the disk is as easy as it looks – undo 4 screws and pull very gently:

P1030939

With the big ribbon cable removed, the daughterboard can be unscrewed:

P1030942

Giving a closer look at the sprung cat5 socket:

P1030944

We can now undo one screw and pull the battery out. There are no cables connected to it, it simply rests against connectors on the motherboard. It’s 11.25V 33Wh.

P1030947

We can now remove the last few screws and pivot the motherboard out, to see the underside. Note RAM chips and fan.

P1030950 P1030949

and that’s it. Hope someone finds this useful.