Nokia Booklet 3G

The Booklet 3G was Nokia’s first netbook. The company produced a series of personal computers in the 1980s called MikroMikko, but sold that business in 1991 to focus on mobile phone production.

Though Kai Öistämö, Nokia’s executive vice-president for devices, has said the Booklet is “a natural evolution for us”, Stephen Williams from The New York Times says it is “more of a homecoming” because of Nokia’s prior computer business. Nokia’s expansion into the netbook market is contrary to computer maker Apple’s 2007 expansion into the phone market with their iPhone.

Nokia announced the device in August 2009. The price was announced to be €575 before tax, making it one of the higher-priced netbooks available. But it sure as hell is beautiful! When it was released, the Booklet was quite Linux-unfriendly but now these problems have diminished to some minor nuisance.

The Nokia Booklet 3G is cased in an aluminium shell and looks very techno-retro with a glossy plastic lid (that can be white, black or blue). It is my favorite netbook.

Photo courtesy of Myriam Joire@Flickr

Specs

CPUIntel Atom Z530 1.6 GHz, Silverthorne - info - datasheet and update
GPUIntel Graphics Media Accelerator (GMA) 500, 256MB shared memory
RAM1024MB DDR2-533
Display10.1 inch, 16:9, 1280x720 pixels, WXGA, 145PPI
MainboardIntel US15W (Poulsbo) - info - datasheet
StorageToshiba MK1235GSL, 120GB 4200rpm, 1.8inch
SoundIntel Poulsbo - High Definition Audio Controller
Connectors3x USB 2.0
1x HDMI
3.5mm jack headphone out
SD Card Reader
NetworkingAtheros AR928X Wireless network adapter (b/g/n = Wi-Fi 4)
Bluetooth 2.1 +EDR
Option GTM382 3G WWAN Mobile Broadband
Size19.9mm x 264mm x 185mm, 1,22kg
Battery57Wh Lithium-Ion, 3840mAh, 6 cells, 14.8 volts, model BC-1S
Operating SystemMicrosoft Windows 7 Starter 32-bit
ColorsBlack, Ice, Azure blue

Tips & tricks

  • You can install latest Debian 11 (bullseye) (netinst or torrent) as long as you go for the 32-bit PC (i386) architecture. Everything works very good, as expected, including function keys, WiFi, Broadband connection, Bluetooth, suspend, etc.
  • If you want to install Ubuntu (or one of its flavors, Lubuntu, Kubuntu, etc) beware that 19.04 and 19.10 removed 32-bit support so 18.04 and 18.10 are the last versions that work on the Nokia Booklet.
  • You should really install a 1.8inch microSATA SSD (like Kingston SSDnow 180, Intel X18-M G2 “Postville” or Samsung Thin 256) because the 4200rpm HDD is really really slow.
  • Windows 7 Start and Home editions work perfectly, Professional and Enterprise editions work well (but they can be slimmed down by removing unnecessary services). You don’t want Windows on it though. No idea if Windows 8, 8.1, 10, 11 work on the Booklet and I don’t want to try.
  • Nokia manual is available here.
  • If you want to update the BIOS to 2.0 you will need to install Windows (the updater only works under Windows).
  • Performance-wise Linux works better that Windows (Debian + LXDE should occupy about 250MB of RAM, Windows with a bit of slimming down should be around 600MB) but the operating system is not the bottleneck. The current web browsers will just obliterate the Atom CPU, fill all the RAM and will start to aggressively swap on your already slow-as-a-dead-snail disk. If you don’t use a web browser the performance is great, though it won’t beat a 2021 M1 MacBook Pro, of course. 😛

Components

ManufacturerModelRev.DateMade inDescriptionManual
CompeqLA-5301P1.02009-07-29TaiwanMain Boardlink
TripodLS-5301P1A2009-08-05ChinaIO Board
UniflexLF-5301P1A2009-08-05TaiwanLVDS/FUN cable
UniflexLF-5302P1.02009-07-28TaiwanPATA cable
SunrexV108502AK1ChinaKeyboard
Cambridge Silicon RadioBSMAN1Bluetooth module
OptionGlobetrotter MO40x3G modemlink
SonixUSB 2.0 Webcam
QualcommAtheros AR928X2Wireless network adapterlink
AUOAUO11D5LCD panellink
ToshibaMK1235GSLPhilippinesHard disklink

Others

Testing the webcam with mplayer:

$ mplayer tv:// -tv driver=v4l2:device=/dev/video0 -vo jpeg

or output to x11:

$ mplayer tv:// -tv driver=v4l2:device=/dev/video0 -vo x11

Turning off HDD clicking sound (HDD spindown) every 15 seconds:

$ sudo hdparm -B 254 /dev/sda

If you want to disable HDD APM totally:

$ sudo hdparm -B 255 /dev/sda

Set a bigger HDD standby timeout:

$ sudo hdparm -S 241 /dev/sda

Listing PCI devices:

$ sudo lspci
View the output
00:00.0 Host bridge: Intel Corporation US15W/US15X SCH [Poulsbo] Host Bridge (rev 07)
00:02.0 VGA compatible controller: Intel Corporation US15W/US15X SCH [Poulsbo] Graphics Controller (rev 07)
00:1b.0 Audio device: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] HD Audio Controller (rev 07)
00:1c.0 PCI bridge: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] PCI Express Port 1 (rev 07)
00:1d.0 USB controller: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] USB UHCI Controller #1 (rev 07)
00:1d.1 USB controller: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] USB UHCI Controller #2 (rev 07)
00:1d.2 USB controller: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] USB UHCI Controller #3 (rev 07)
00:1d.7 USB controller: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] USB EHCI Controller (rev 07)
00:1e.0 SD Host controller: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] SDIO/MMC Controller #1 (rev 07)
00:1f.0 ISA bridge: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] LPC Bridge (rev 07)
00:1f.1 IDE interface: Intel Corporation US15W/US15X/US15L/UL11L SCH [Poulsbo] IDE Controller (rev 07)
02:00.0 Network controller: Qualcomm Atheros AR928X Wireless Network Adapter (PCI-Express) (rev 01)

Listing USB devices:

$ sudo lsusb
View the output
Bus 001 Device 005: ID 0c45:6409 Microdia Webcam
Bus 001 Device 008: ID 0af0:7601 Option Globetrotter MO40x 3G Modem (GTM 382)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

Getting CPU info:

$ sudo cat /proc/cpuinfo
View the output
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 28
model name	: Intel(R) Atom(TM) CPU Z530   @ 1.60GHz
stepping	: 2
microcode	: 0x211
cpu MHz		: 903.241
cache size	: 512 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 1
apicid		: 0
initial apicid	: 0
fdiv_bug	: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 10
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 xtpr pdcm movbe lahf_lm dtherm
bugs		:
bogomips	: 3192.38
clflush size	: 64
cache_alignment	: 64
address sizes	: 32 bits physical, 32 bits virtual
power management:

processor	: 1
vendor_id	: GenuineIntel
cpu family	: 6
model		: 28
model name	: Intel(R) Atom(TM) CPU Z530   @ 1.60GHz
stepping	: 2
microcode	: 0x211
cpu MHz		: 949.179
cache size	: 512 KB
physical id	: 0
siblings	: 2
core id		: 0
cpu cores	: 1
apicid		: 1
initial apicid	: 1
fdiv_bug	: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 10
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx constant_tsc arch_perfmon pebs bts cpuid aperfmperf pni dtes64 monitor ds_cpl est tm2 ssse3 xtpr pdcm movbe lahf_lm dtherm
bugs		:
bogomips	: 3192.38
clflush size	: 64
cache_alignment	: 64
address sizes	: 32 bits physical, 32 bits virtual
power management:

Sometimes 3G connection is not working because of BIOS memory corruption and you need to add add memory_corruption_check_size=256K to GRUB_CMDLINE_LINUX in /etc/default/grub to fix it. Don’t forget to update grub after that:

$ sudo update-grub

Display

ManufacturerAU Optronics Corp (AUO)
ModelB101EW01 V1 (AUO11D5)
Screen TypeLCM, a-Si TFT-LCD
Screen Size10.1 inch
Pixel Number1280(RGB)x720, WXGA, 145PPI
Luminance180 (Typ.)(cd/m²)
Color Depth262K (6-bit) 45% NTSC
Color Temperature6485K
White Color ChromaticityX:0.313; Y:0.329
Outline ShapeFlat (PCBA Flat, T3.4~4.0mm)
Refresh Rate60Hz
Signal TypeLVDS (1 ch, 6-bit), 40 pins Connector
Voltage Supply3.3V (Typ.)
Max. RatingsStorage Temp.: -20 ~ 60 °C, Operating Temp.: 0 ~ 50 °C
TreatmentAntiglare
Contrast Ratio500:1 (Typ.) (Transmissive)
Work ModeTN, Normally White, Transmissive
Response12/4 (Typ.)(Tr/Td) ms
BacklightWLED, 12K hours, with LED driver

Integrated circuits

ManufacturerModelDescriptionDatasheet
HynixHY5PS1G1631CFP-S6DDR2-533 RAM, 8 banks (4 on each side of main board)link
Silicon ImageSI1392CNUVastLane HDMI Transmitterlink
Genesys LogicGL831ASATA/PATA Bridge Controllerlink
Maxim IntegratedMAX8796G1-Phase, Quick-PWM Intel IMVP-6/GMCH Controllerlink
RichtekRT8206BSwitch Mode Power Supply (SMPS) controllerlink
ICS9UMS9610BLPC main clock generatorlink
cFeonEN25F80-75HCP8MB SPI Flash Memorylink
ENEKB926BFKeyboard Controllerlink
RealtekALC269Q-GRHigh Definition Audio Codeclink
RenesasISL6251Battery charger controllerlink
NXPMMA7455LR1±2g/±4g/±8g Three Axis Low-g Digital Output Accelerometerlink
MacronixMX25L8005M2C8MB CMOS System SPI Flash Memorylink
TAOSTSL2561FNLight-to-Digital Converterlink
MicrochipEMC1402-1-ACZL-TR1°C Temperature Sensor with Beta Compensationlink

Architecture

Connectors

Main Board

  1. External
    • 2x USB 2.0
    • 1x HDMI
    • 1x 3.5mm jack
  2. Internal
    • Bluetooth (10 pin)
    • Keyboard (26 pin)
    • Speakers (4 pin)
    • Touch/B (4 pin)
    • PATA ribbon HDD (16 pin)
    • LVDS/FUN (80 pin)
    • LCD panel (30 pin)
    • GPS + CMOS camera + mic + LED board (30 pin)

IO Board

  1. External
    • 1x USB 2.0
    • 1x SD card
    • 1x SIM slot
  2. Internal
    • 2x mini PCI-E (one full height and one half height)
    • Power in (2 pin)
    • LVDS/FUN (80 pin)
    • Battery connector (5 pin)

GPS

On Linux /dev/ttyHS2 is the GPS control channel, /dev/ttyHS1 is the raw GPS data and you can control the output with ckermit.

$ sudo kermit
>set line /dev/ttyHS2
>set carrier-watch off
>set speed 115200
/dev/ttyHS2, 115200 bps
>c
Connecting to /dev/ttyHS2, speed 115200
Escape character: Ctrl-\ (ASCII 28, FS): enabled
Type the escape character followed by C to get back,
or followed by ? to see other options.
----------------------------------------------------
T S7=45 S0=0 L1 V1 X4 &c1 E1 Q0
OK
ATZ
OK
AT_OGPS=2

OK

Now you can connect with another kermit instance to /dev/ttyHS1 data channel and it will output raw NMEA data.

You can make two scripts, one to turn on the GPS and one to turn it off.

To turn on GPS:

#!/usr/bin/kermit

def port /dev/ttyHS2
def speed 115200
def carrier-watch off

set port \m(port)
if fail exit 1 Can't open \m(port)
set speed \m(speed)
set carrier-watch \m(carrier-watch)

output AT_OGPSP=7,2\13
input 3 OK
output AT_OGPSCONT=1,"IP","prointernet"\13
input 3 OK
output AT_OGPSLS=1, "http://supl.nokia.com"\13
input 3 OK
output AT_OGPS=2\13
input 3 OK

exit

To turn off GPS:

#!/usr/bin/kermit

def port /dev/ttyHS2
def speed 115200
def carrier-watch off

set port \m(port)
if fail exit 1 Can't open \m(port)
set speed \m(speed)
set carrier-watch \m(carrier-watch)

output AT_OGPS=0\13
INPUT 3 OK

exit

Windows drivers

Make sure you compare the SHA-256 hashes to make sure the files were not tampered with.

Internal photos

Click on one of the images for a higher resolution photo.

Main Board front
Main Board back
IO Board front
IO Board back