Email me at michael _ rolig at alumni macalester edu.
| Debian | X Windows | Longrun | ACPI |
|---|---|---|---|
| Working | Working | Working | Working |
| Ethernet | Wireless | Sound | Pen |
| Working | Don't Have | Working | Working |
| Pen Buttons | Side Keys/Buttons | Swivel Keyboard | Swivel Mouse |
| Half Working | Working | Working | Working |
| USB Keyboard | USB Mouse | USB Storage | PCMCIA/PC Card |
| Working | Working | Working | Working |
| Compact Flash | Internal Modem | Swivel Sensor | Docking Station |
| Working | Not Tried | Need Info. | Don't Have |
| TabletPcBuzz | General Tablet PC information and discussion forums. |
|---|---|
| TC-one-thousand | General TC1000 information. |
| Linux on Laptops | General Linux for laptops information. |
| Nvidia driver | Nvidia's XFree86 driver. |
| NV status | XFree86's driver status. |
| packages | My list of installed packages. |
| /etc/modules | Modules loaded at boot. |
| debian-cd | Debian mini-install CD |
| ntfsresize | NTFS file system resizer |
| booter-144.raw | Boot floppy for ntfsresize. |
| grub-w2k-HOWTO | Dual booting windows XP and Linux/anything with GRUB. |
| menu.lst | GRUB menu. |
| .config | Kernel configuration (.config). |
| XF86Config-4 (LCD only) | XFree86 configuration for landscape LCD. |
| XF86Config-4 (Cone) | XFree86 configuration for external display (cloned). |
| XF86Config-4 (Big desktop) | XFree86 configuration for dual-head. |
| fpi2002-0.1.tar.gz | Kernel driver to turn on pen's serial port. |
| tc1k-1.1.tar.gz | X driver for pen, improved performance. |
| tc1k-1.0.tar.gz | X driver for pen. |
| longrun | Longrun init.d script. |
| xsetup | Xsetup init.d script |
| xmodmaprc | Xmodmap configuration for extra keys. |
I have successfully installed Debian GNU/Linux Woody & then adding packages from testing and unstable. I have no known operating system issues, and am dual-booting with Windows XP Tablet PC Edition. The howto has details about installing the minimal set of Debian components.
The TC1000 is a relatively standard Microsoft "legacy-free" system. It has a Transmeta Crusoe processor with a VIA chipset. The system has a built-in Nvidia GeForce2 Go video chipset with an approximately 12" 1024x768 LCD display. The only included ports are USB, telephone, Ethernet and external VGA video. The only built-in keyboard device is a small set of keys on the side (Enter, Escape, Tab, Arrow up/down and a special CTRL-ALT-DEL button). The Phoenix BIOS also supports the pen/digitizer at the initial boot-up. The detachable keyboard/mouse are USB devices, though the BIOS can use them at boot-time. Linux must re-initialize them with USB drivers once fully booted. USB keyboards work until the kernel boots (so it works within most boot-loaders like GRUB and SYSLOAD, but not in a Linux install program unless the kernel supports USB HID).
The Nvidia GeForce2 Go chip is supported by the Nvidia driver version 2880 (maybe earlier) and the XFree86 driver in version 4.2.1 (maybe 4.2.0). The XFree86 driver supports portrait mode, but thus far I have experienced troubles with icon drawing under KDE and the console no longer works after starting X. The Nvidia driver does not support portrait mode, but has only a strange flickering problem when switching back to the console, so it remains usable. The Nvidia driver supports dual-head with the external monitor port and numerous configuration options using the TwinView functionality.
The Nvidia driver requires a kernel level driver plus the XFree86 driver. This requires that you compile the kernel driver, and with Debian, is easiest if you rebuild the kernel. Debian makes this process very easy. I give instructions here that can be combined with the instructions for ACPI and PCMCIA support to yield the method I use.
If you have the Nvidia setup working and want to try portrait mode:
Longrun is a utility for managing the Transmeta Crusoe's advanced power management functionality. The Crusoe processor can dynamically adjust clock speed to save power when CPU utilization is low. You can adjust the power saving features to run according to an economy profile or performance profile. The economy profile takes longer to increase the processor speed when loaded to increase battery life.
wmlongrun is an applet to display the current CPU speed and switch longrun profiles. If you don't have a docking bar for window maker applets, you can use the -w switch to have it run in a window of its own.
ACPI is a recent standard for peripheral and power saving configuration and management. The TC1000 does not support the older APM (Advanced Power Management) system. ACPI support in the base Linux kernel is not very good. The Linux ACPI project has better support, which includes support for the power button on the TC1000 as well as the power-off on shutdown support. The best bet is to patch the kernel to improve the ACPI support to provide power management functionality. This allows battery management software to work.
Once you boot you should now be able to press the power button and have it start shutting down. I haven't explored other features. Sleep/Suspend hung my machine. The klaptop software shows battery level and charging status.
The built-in Intel PRO/100 M Mobile Ethernet driver works with Intel's e100 driver that ships with linux kernel version 2.4.20. I have had no trouble with it working.
I do not have Compaq's wireless card. Please let me know if you have tried it.
The sound card works with kernel version 2.4.20's via82cxxx driver.
The pen took some work to get going, but I have it working. The driver documentation has more information. It's fairly easy to setup, but requires a kernel driver to turn on the serial port to communicate with it and a driver for XFree86 to use it. Many thanks to Frank Bruno for help turning this on and getting a working driver.
The Keys work without any extra effort as a standard keyboard, some keys have "normal" keycodes, others have large/non-standard keycodes. Run xmodmap to map these keys to something useful. My xmodmaprc file is available. I added the line xmodmap ${HOME}/.xmodmaprc to my .xsession file to run this at startup. You can use xev to collect information about keyboard/mouse events.
| Key | Keycode |
|---|---|
| 130 | |
| Q | 131 |
| Tab | 132 |
| Red btn | CTRL-ALT-DEL |
| Jog-Up | 134 |
| Jog-Down | 133 |
| Jog-In | Return |
The swivel keyboard works great, you just need USB keyboard support. This means you need the usb-ohci, input and usbkbd modules loaded from the stock kernel distribution. See my /etc/modules file.
Just like the keyboard, you only need USB mouse support. This means you need the usb-ohci, input and usbmouse modules loaded. DO NOT explicitly load the mousedev module, it cause problems for me, where the mouse didn't work properly. See my /etc/modules file.
I got an Apple Pro keyboard. This is a nice, compact keyboard that includes a USB 1 hub for a mouse to plug into, or other devices. Of the keyboards I could find, it's styling is the best with the tablet (IMHO). The keyboard and hub work well. My .xmodmaprc has the keycodes that work for it's extra buttons. The only annoyance is that the key-map for the Apple key/Windows key on the two keyboards is inconsistent. If you have the swivel keyboard working, plugging in the Apple keyboard
I got a Logitech MX300 USB mouse to work (through the Apple keyboard hub). Again, if the eraserhead mouse on the swivel keyboard works, an external USB mouse should work. I haven't tried to get the spare button on the mouse to work, nor do I care. The scroll wheel works, see this site for more information on the scroll wheel (first hit from Google).
I have use the Compaq USB multi-bay with the Compaq floppy drive and the DVD/CD-RW drive. Both work with the kernel's standard USB storage support. The only gotcha is that floppy drives show up as SCSI disks and not as floppy drives, so you need to look at /dev/sd[abcd] not /dev/fd0 or /dev/floppy/0. You need to build a kernel with SCSI support and USB storage support. Load usb-storage and sd_mod modules at boot up. My /etc/modules file is available for reference. I have the hotplug package installed which helps manage insertion and deletion of USB devices (and PCMCIA). The cdrom does appear as /dev/cdrom or /dev/cdroms/[01234].
I don't use the PCMCIA support from the stock kernel, rather I get the latest pcmcia-source package and build the kernel modules. See the Linux PCMCIA site for more information on PCMCIA. I have used a 3com networking card successfully.
The compact flash slot works. This slot is a PCMCIA device, so all you need is PCMCIA support with IDE storage support and it works. These behave just like a PCMCIA IDE device. When you insert a compact flash card, the ide_cs module should be loaded automatically. The first card should then be available as /dev/hdc1 (first partition (c) on the first device (c/a) on the second IDE bus (cd). Don't for get to un-mount the filesystem and stop the card (cardctl eject 1).
I haven't tried to get this to work. Let me know if you have luck.
There is a sensor in the swivel on the keyboard that is used to trigger a portrait/landscape mode switch of the display when you start using the keyboard. I have not tried to get this working yet, but it will require information about the hardware to get it to work. I don't know how to access this sensor yet.
I didn't get a docking station, so I don't know how to get it to work. Let me know if you have.
Copyright 2003 Michael Rolig