How to boot puppy linux to WebDT366

This board posts about running linux on your webdt366
Post Reply
quotaholic
Administrator
Administrator
Posts: 569
Joined: Tue Mar 24, 2009 9:11 pm

How to boot puppy linux to WebDT366

Post by quotaholic » Mon Apr 27, 2020 3:48 pm

Hi All,

Is 2020 now and its not as easy to work with these tablets as it was say 5 years ago.

If you want to start fresh with a puppy linux iso and build it yourself its not that hard. A few things you need to know:

LiLi windows application version 2.0 as well as unetbootin version 307 are capable of installing puppy to a usb in a way that allows the WebDT366GX to boot from it. This is largely due to extlinux and syslinux (both are bootloaders for linux) updated to a point that they no longer support the hardware. This tablet has a rare low power SOC that is hacked to be proprietary from DT Research. It was one of the first tablets on the market and sold to $$$ applications. I first saw one controlling a smarthome in 2001. Like 36k square feet worth.

Differences are that unetbootin makes its own shim to boot the device and as such it removes the help menus from puppy. Lili version 2.0 preserves the puppy menus showing one boot codes and other boot time options. Do not try to boot usb stick only as we need to modify how the boot takes place in order for it to work. We NEED a working usb hub and a working keyboard / mouse to even boot.

So now that you know how to make the usb properly its on to booting. Lets talk USB hubs. Older the better. If you use a passive hub be warned that this device has low usb power so watch the blue splash screen as you boot. As soon as you see “usb boot device....” you can plug in the other things that you need. If you dont do this the tablet may and often will blow past the usb as it does not have enough power to look it over at boot time. If using passive hub watch the boot and leave everything but USB stick unplugged until you see that its booting to USB and then plug in keyboard/mouse.

These tablets do not support PAE so this makes our maximum Puppy Linux version 5.7.1-retro. At this point I would like to use mats words and add my experience. We need to load the SFS file to ram so that all modules are loaded. If we install puppy in a way that does not use SFS files loading to ram many modules are missed. If you find a small “light version” of puppy that follows suit use it. When I say suit we want to stick with debian or ubuntu official releases with regards to versions of both kernel and Xorg. This is due to penmount touchscreen support. www.penmount.com

Now lets combine those ideas. We want a system that is less than 245MB at completion if possible. The bios on these tablets takes ram for the video card so we are already starting below the capacity of the stock ram, 256mg. Keep this in mind.

On pemounts site we see that most drivers for linux follow centos, fedora, opensuse, debian and ubuntu. So if we want a TS that works aligning your puppies to this scheduling makes sense. Sadly many puppies varied from official releases. This fact makes selection of puppy limited.

There is a way to make the TS work without the penmount diver however it needs a few packages that puppy does not normally come with. If you install inputattach abover version 1.14 you will be able to send a command that makes the touchscreen work. The command (depending on version of inputattach is):

inputattach —daemon —baud 19200 -pm /dev/ttyS0

This will make TS active. If you look for xinput_calibrator this is capable of calibrating the screen. I get frustrated in puppy as so much is ripped out that the calibration program complains about no devices to calibrate. Being in Xinput package and it seems to see the TS on reboot but fails to carry over calibrations upon reboot. Missing /etc/X11/xorg.conf.d sirectory may have something to do with. If I get this far other things stop working like buttons so I tend to stick with penmount driver for now. If I am using something other than puppy I try to go with open source.

On first boot with puppy, when looking at logo and boot line enter:

puppy pfix=nox

after a few minutes, when you get to a prompt type:

xorgwizard

and follow prompts to select Xorg (if asked)
select vesa for driver
800x600
800x600x16
and it should ask if you want to test or just set. Set it and forget it.
When prompt comes back type:
xwin

After a few minutes you should see a desktop.

You have now booted puppy linux to your WebDT366.

If this did not work look at your USB thumb drive and make sure its not usb3.0.

You will want a RF keyboard. I am using a logitech 400 series with the trackpad on the keyboard. My Dell usb keyboard wont even power up on the tablet. RF keyboards traditionally take little power from usb to support. Just make sure its been out for a while. Before my logitech I used a mini keyboard I bought for a rasberry pi media center.

As far as I know ludic puppy and precice puppy should work on this hardware and I will start on making something that works in coming days. Dont let the buttons frustrate you. If you do not have an external battery pack and are on internal battery only I find that the buttons only work with two situations being met.

One: remember the boot line where we added “puppy pfix=nox”
Next boot (with no save file in place) add “puppy pfix=nox acpi=force”

Two: With that in place at boot your buttons wont work until your internal battery is 100% charged and no other devices are on the usb bus at boot time. Two minutes after I plug in my logitech keyboard my buttons stop working. It may be my tablet about to die but I thought to share some observations.

quotaholic
Administrator
Administrator
Posts: 569
Joined: Tue Mar 24, 2009 9:11 pm

Re: How to boot puppy linux to WebDT366

Post by quotaholic » Thu Apr 30, 2020 9:00 am

Things to be aware of with puppy linux that make it less than ideal for webdt usage:

If you use puppy’s package manager to install anything it does an operation post install you wont like: rebuild menus. This post install acton is meant to show the new installed item within the menu and the hook rebuilds the jwmrc file that we put button bindings in. So if you install anything its likely the buttons will stop working.

Best workaround: put a copy of this file on the root of the drive for easy copying post package manager usage.

Xorg.conf fie. Where to start. If you run xorgwizard from puppy it will rewrite the file. Thus loosing touchscreen and forcing one back to a keyboard / mouse.Workaround is same as above. Keep copies of these files on non destructive memory that can be copied back in when needed. If you install the penmount driver it wont work on reboot because you need to manually enter in the settings to your own xorg.conf. I am often searching dm9000 penmount on google to get the settings. Ill try to post one to make it easy before I nuke puppy for something different.

Forever stuck on VESA video, which runs it through the cpu...
I gave it a go to compile the geode video driver on puppy linux and it went well however upon installing and testing the error was that the kernel didnt have a /dev/cpu/0/msr register available.

This makes it hard to get a working puppy install that would be anywhere close to optimized for the hardware.

After realizing insanity was approaching I put Slitaz in a VM and am working on outputting a workable image. Impressive distro. Atlas buttons is not within v4 or v5 so I am watching a kernel compile as I attempt to respin a geode specific version. Aiming for working acceleration and full hardware support. So far I am impressed. More to come...

quotaholic
Administrator
Administrator
Posts: 569
Joined: Tue Mar 24, 2009 9:11 pm

Re: How to boot puppy linux to WebDT366

Post by quotaholic » Mon May 18, 2020 3:31 pm

Linux package xbindkeys may be helpful for mapping button presses (keycodes) to arrows or launching programs. Found this when fighting slitaz.

Considering puppy rebuilds each menu (where we normally put button bindings) on each package install xbindkeys may make puppy “useable” in my opinion. Pending working geode video driver that is.

Post Reply