Making the ViewSonic Tablet PC Run Linux

Rescuing a ViewSonic Tablet from the junkpile by installing SuSE 9.0.

A few months ago, I was talking to the owner of a locally run ISP, Mutual Data Services, and he mentioned he had purchased a ViewSonic Tablet PC some months before. He planned to use it at his various wireless access points to do maintenance on his equipment. It came with Windows 98, and he was not impressed. As he puts it:

Imagine our frustration that the tablet we paid big bucks for crashed as a daily occurrence. The manufacturer refused to allow us to return it, saying the operating system is the problem. We would do a restore, and it would run for a day and then crash again. We gave up on using it as designed and thought maybe Linux would work and save the tablet from the junk box.

I offered to take the system and put Linux on it. The first thing I did was Google to see if I could find any information on installing Linux on this hardware, but I found nothing. So I thought it might be useful to other owners of this model to write this article. If others ran into the same situation that Mutual Data Services did, several of these systems may be lying around and gathering dust.

I start by explaining what extra equipment I needed to acquire even to attempt the installation, what system settings had to be tweaked and which features work on this hardware. Then, I discuss what software was installed to make this system useful for my friend's desired tasks.

Hardware

The system itself is a ViewSonic ViewPad 1000 (Figure 1). It has 256MB of RAM, a 20GB hard drive, a wireless infrared keyboard with integrated pointing device and a touchscreen. The built-in video is an SiS630 chipset video device, which can support the screen at 800x600 resolution and 16-bit color depth. For networking, it has an SiS900 10/100 wired Ethernet port and a Harris Prism Wavelan chipset 802.11 Ethernet radio. We are able to expand the system by way of two USB connectors, a PCMCIA slot and a single serial port. Sound input and output jacks also are provided, as are built-in speakers attached to an SiS PCI audio device, a docking connector, a built-in Winmodem and a webcam.

Figure 1. The ViewSonice ViewPad 1000

I am not very fond of the included wireless infrared keyboard, so I used a USB keyboard and mouse for input. The ISP prefers SMC wireless Ethernet devices, so we eventually are going to install an SMC2532W-B EliteConnect wireless adapter for use, rather than the built-in Wavelan radio. In addition, we have no need for the Winmodem, serial port, webcam or docking port (we do not have a docking station to test it with), so I did not configure them.

In addition to the hardware on the system itself, I added the USB keyboard and mouse mentioned above, plus an external USB optical drive for installing the system. The system does not boot from a USB CD-ROM device, so we have the option of booting either from the network or from an external USB floppy drive. We had access to the external floppy, so we went that route.

Software

I chose SuSE 9.0 for the installation system. It has built-in profile management; comes with an installation DVD, which saves some disk swapping; and I already was familiar with it.

For the installation we needed to create a boot floppy and module floppies. For this particular system we needed only the modules1 (for USB drivers) and modules4 (for PCMCIA drivers and filesystems) disks. These images are found in the /boot directory on the installation DVD. The README file in that directory contains instructions for creating the disks from those images.

Installation

The first thing to do is plug in all the USB peripherals. I put the external floppy drive on one USB port and the keyboard, mouse and DVD-ROM on the other. Next, I needed to configure the BIOS for USB floppy boot, because the default is to boot first from the internal hard drive. At power-up, pressing the Del key took me to the BIOS configuration utility (either the USB or wireless keyboard for this).

From the BIOS configuration screen, I selected Advanced CMOS Setup and then stepped down to the Boot Device section (Figure 2). For the 1st Boot Device, I choose USB Floppy, and for 2nd Boot Device, I choose IDE-0 (Figure 3). This is the same way in which most PCs with a floppy are configured by default.

Figure 2. Configuring the Boot Device

Figure 3. The Second Boot Device

After changing those settings, I pressed Esc to go back to the main CMOS menu. From there, F10 allowed me to save the settings and exit. On exit, the system restarts, so I made sure the floppy drive and optical drives were plugged into the system with the boot floppy and installation CD in them.

At the boot screen, I selected Installation, and the kernel was loaded from the floppy. It took a couple of minutes to complete, but a progress bar showed feedback. When prompted for module disk #1, I ejected the boot floppy, inserted module disk #1, pressed Enter and waited another couple of minutes, watching the progress meter.

The initial boot process then completed, and when the install detected the PCMCIA chipset it requested modules disk #4. I ejected the current disk, inserted the modules #4 disk and pressed Enter. Loading from this disk took about only 30 seconds, at which point the install continued.

Leave most of the defaults on the installation configuration screen: New Install, automatic partitioning, English keyboard, USB Mouse and so on. I initially was concerned the IR keyboard and pointer controls would not be recognized at installation time by the system, because they were wireless infrared--that is why the USB keyboard and mouse were on hand. The ViewSonic keyboard and pointer were seen by the system as regular PS/2-style input devices, however, so there was no problem. Because I prefer the feel of my USB keyboard and prefer a mouse to the pointer controls on the keyboard, I plugged them in. The install was able to use them with no problem. At the installation packages screen, I added full GNOME, the Network/Server group, the C/C++ compiler and tools and any other packages needed to fulfill dependencies. I also set the timezone and set the hardware clock to UTC.

After these alterations, I accepted the changes and confirmed that I wanted the installation to start. I had an external DVD drive, so there was only one installation DVD. At this point, I went to bed and let the install run into the night.

The next morning the installation process was up to the Enter a root password stage. I gave it a password twice, and it went on to the network configuration. I had it connected to the LAN for initial installation, so I selected eth0 to be configured with DHCP. Then came a problem with the network hardware setup.

I had a cable plugged into the Ethernet port on one end and a Netgear FVS318 port on the other, but the lights on the devices did not indicate an electronic connection. Suspecting a bad cable, I replaced it--no luck. Suspecting a problem with the Tablet's Ethernets port, I tried a different hub. I plugged the Ethernet cable into an old 10Mbps NDC SOHOware Hub that I had lying around. That connection worked, so I plugged a cable from the SOHO's daisy chain port to the Netgear, and all was well.

Near the end of installation, I was presented with a dialog to check for on-line updates, which I did so as to bring the system up to date. I configured it as a Stand-Alone Machine rather than a server, so the install required the creation of a normal user. I did this even though the user probably will run as root most of the time. When I come to the Hardware Configuration section, I accepted all the defaults for hardware that the install detected.

The system then rebooted. The first time it came back up, the USB keyboard and mouse were not detected, which was strange. Another reboot seemed to fix the problem, and I have not had trouble with them since. Other than this oddity, everything else we were concerned with works. X is up and running, sound comes out of the built-in speakers when I start KDE, the on-board Ethernet is working, the built-in wireless chipset is detected and identified and even the touchscreen works. I also found that the orientation of the screen can be changed easily with SaX2 (Figure 4). This might be a useful feature, because this computer has feet on two adjacent sides.

Figure 4. Changing the Screen Orientation

______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Also works wonderfully with SUSE 9.3

Eric Baenen's picture

My sys admin group recently received one of these Viewpad 1000 systems as a turn-in - and it was destined for the trash - it was running Win2K and the admin password had been lost. Based on this article I rescued the system, dug up a usb floppy and installed SUSE 9.3 on it. It is now working extremely well as a linux tablet -- though I'm still having a little difficulty changing the screen orientation - not a show stopper but it would be nice. Everything seems to be working including the touch screen - though I haven't tried the camera yet. All in all - a very successful quick experiment - with the result, a quite useable system.

Getting the built in camera working under SUSE 9.3

Eric Baenen's picture

Here is what you need to get the built in camera working under SUSE 9.3

http://mxhaard.free.fr/download.html

Everything else was recognized and configured right out of the box.

If you go into the SaX2 properties for the video card you can change screen orientation - though the screen on the ViewPad looks like it has a polarization that makes it look best in landscape mode (my personal opinion only).

What about the built-in camera?

Anonymous's picture

Is the internal camera usable under Linux?

I have an EARLY ViewPad 1000 running a version of Win2K hacked with early "Tablet PC" support. The internal camera is usable only via the MS Imaging utility. Supposedly, it is a USB device, though it doesn't show up in the Attached Devices list.

-BobC

Re: What about the built-in camera?

Anonymous's picture

Whoops: Left out some key items:

The built-in camera is a ViewQuest M318B, and it does show up under the Win2K "Installed Hardware" list. Despite being easily removable, it does not show up in the "Unplug or Eject Hardware" dialog.

-BobC

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

Hmmm...not sure I see how this made a better tablet. I'm kind of tired of reading the "put Linux on everything to save the world from M$ even if it doesn't make sense" viewpoint. I think I would have fixed Windows.

I am also not sure why you had Windows 98 on it considering it is a tablet. Mine came with a tablet version of XP which works pretty well actually.

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

After upgrading mine to XP tablet edition, I've found that the touchscreen is only being handled as mouse emulation, and not as an actual pen device from XPs perspective. Would you be willing to share the input driver that allows XP to see the touchscreen input as a pen? I haven't seen anything from Viewsonic about this. That aside, it is a fairly slow machine running XP.

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

There is much more about Linux on Tablet PCs at TuxMobil. And there is a dedicated chapter in the Linux-Mobile-Guide.

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

You should let Viewsonic know they should be supplying SuSE Linux 9 as standard instead of Windows.

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

I am somewhat surprised by the "Tablet PC" nomenclature. For a laptop to be called so, It has to use Windows XP tablet PC edition, which (regardless of your feelings towards MS) works much better than Windows 98.

Computer + XPTablet != TabletPC

Greyson's picture

Just to keep the air clear here, the term "Tablet PC" does not refer to the operating system, but to the fusion of (wacom related) tabet hardware with an LCD screen.

In other news, Linux also runs quite well on the NEC Versa Lite.

Re: Making the ViewSonic Tablet PC Run Linux

rglenfld's picture

About 6 months before Tablet PCs were shipped, Viewsonic was also selling a 'tablet' that converted a desktop running M$ XP Pro into a host, supporting a 'portable' screen.

And the 'tablet' may have only been running Win CE.

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

Interesting, but what about the touchscreen? I would have thought that the major issue with moving from the manufacturer-installed OS to Linux would be how to get the touchscreen working. Isn't that the main idea of tablet PCs?

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

In the article it said that the touchscreen worked with no additional configuration.

Touch Screen Configuration

Anonymous's picture

I got one of these, put Ubuntu on it, and the touchscreen was not automatically configured for me. It sees it as a touch PAD...which doesn't work so nicely...

Any chance anyone knows what kind of touchscreen it is? There's a /dev/input/ts0 file there, but I don't know what driver to use in my xorg.conf file...

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

yeah... but how about handwriting recognition? does linux have anything better that windows?

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

you fool. use Xscribble. There are plenty of other handwriting recongnizers available for linux that were made fo r linux pda's. Do a little research and you'll find what you need.

Re: Making the ViewSonic Tablet PC Run Linux

Anonymous's picture

I'm pretty sure there's a pcmcia config option to fix the card-insertion problem you had - basically polling for new cards instead of assuming an interrupt will show up. _Mark_

ps. Thanks for the article - if one of these shows up on eBay it is now much more interesting, knowing that it isn't "all locked up"...

Suse 10.0 or 9.3 on a Viewsonic V1100

C.Paulsen's picture

High,
I did the following steps:
1.Tried to install Opensuse 10.0 on the V1100. Everythink runs but the pen did'n.t!
2.I tried the same with Suse 9.3 and afterwards I tried to configure the WACOM with the same attributes I found in some googled documents for the V1000: wacom,Absolute,/dev/ttyS0,Bottomx 30000,GRAFIRE/INTUOS Stylus(SERIAL). But I had no success. Has anybody similar expieriences or even better ones?

RE: Suse 10.0 on a Viewsonic V1100

D.Roe's picture

Hi,
I also installed OpenSUSE 10.0 on the V1100 tablet pc.
I would like to get the pen working too. If you cat /dev/ttyS0 you can watch the pen being moved around. Adding a pen (with default config) to the configuration doesn't work. If no one else has a fix or a workaround, I might be able to kludge something together, but I won't have time for a while. If anyone else out there has anything, please tell us about it.

(None of my other Win PCs liked collecting viruses and spyware so much. Nor were they as adept at circumventing McAfee. Boot up time was finally in excess of half an hour before I pulled the plug on that OS's sorry life. Viewsonic never provided install disks, so even if I wanted to, I can't go back to XP Tablet. And that's fine with me.)

Linux on Viewsonic V1100

Abram's picture

I just bought one of these guys on Ebay, and I'll probably end up installing Debian linux on it. Any tips you had would be greatly appreciated. I'd like to write some tablet oriented software too, if I have the time.

-Abram

RE: Suse 10.0 on a Viewsonic V1100

flens's picture

Hi,
I edited my xorg.conf like this.

....
Section "InputDevice"
Driver "wacom"
Identifier "cursor"
Option "Device" "/dev/ttyS0" # SERIAL ONLY
Option "ButtomX" "30000"
Option "Mode" "Absolute"
Option "Type" "cursor"
Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection

Section "InputDevice"
Driver "wacom"
Identifier "stylus"
Option "Device" "/dev/ttyS0" # SERIAL ONLY
Option "ButtomX" "30000"
Option "Mode" "Absolute"
Option "Type" "stylus"
Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection

Section "InputDevice"
Driver "wacom"
Identifier "eraser"
Option "Device" "/dev/ttyS0" # SERIAL ONLY
Option "Type" "eraser"
Option "ForceDevice" "ISDV4" # Tablet PC ONLY
EndSection
....
Section "ServerLayout"
Identifier "Layout[all]"
InputDevice "cursor" "SendCoreEvents"
InputDevice "stylus" "SendCoreEvents"
InputDevice "eraser" "SendCoreEvents"
InputDevice "Keyboard[0]" "CoreKeyboard"
InputDevice "Mouse[1]" "CorePointer"
Option "Clone" "off"
Option "Xinerama" "off"
Screen "Screen[0]"
EndSection
....

It solved my problems with the pen.
flens

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix