How I got Puppy 2.13 working on an old Toshiba Satellite

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
cookevillain
Posts: 10
Joined: Sun 07 Jan 2007, 05:12

How I got Puppy 2.13 working on an old Toshiba Satellite

#1 Post by cookevillain »

This is not exactly a general how-to since it has some machine specific
stuff but I hope it will help someone who has experienced the same/similar problems.

This post is simply a record of my experience with Puppy (2.12 and 2.13),
including the time it took to get everything to run and what extra packages were
needed. If anyone has any comments about this I would really like to
hear them. Especially if I am reinventing the wheel or making
something harder than it should be.

I tried to put as many details in this post as possible so that if anyone
tries to Google for a particular piece of hardware mentioned here, they can
find it. I know I would have liked to see this stuff before I started.

First, a little about the system: it is an old Toshiba Satellite
2530CDS, 266MHz Pentium MMX, 98Mb of RAM, 4G harddrive. Extra hardware
includes a Motorola WN825GP wireless card and a 3Com pcmcia modem (not
used).

I have been trying to switch this computer to Linux for about a year
to use it in my robotics projects. Failure to get the wireless card to
function properly kept the machine under the spell of XP and thus
mostly useless. Finally, the new ndiswrapper made it possible to
complete the switch. I started testing multiple distributions. I tried
Ubuntu first ... Two hours into the startup, the OS still has not
loaded. Xubuntu was next. After a mere four hour install, the system
came up mostly dead. X did not come up full-screen and some tweaking
of xorg.conf was required. Audio did not work. Messing with
modprobe.conf, blacklist and a bunch of other files helped some but
did not completely fix the problem. *ubuntu was a no-go.

The next distribution I tried was DSL. It worked well, I got the
wireless to run (I had to write a script to do so since the standard
setup did not work) but lack of software and the old kernel did not
appeal to me all that much. This is when I heard about Puppy
linux. Hmm, small, functional, AND fast? Sounds interesting ...

The CD loaded in less than a minute, ten minutes later I had setup the
wireless. Then I hit the first snag. No audio. No audio drivers,
either. Posted a question on this forum and got a reply the next
day: I needed a Puppy with zdrv. Aha! I have to say, the download page
is rather confusing, I still have trouble finding the stuff I need
there but `-zdrv' and `-fulldrivers' were pretty clear after I got the
reply. I ran ALSA wizard and heard the bark. Cool. Next major stop---IrDA.

There was another little problem along the way though, rather an annoyance.
Poweroff did not turn the computer off at the end. Puppy 2.13 with its
newer kernel fixed that.

With this fresh knowledge, a full reainstall of Puppy 2.13 with zdrv, including
audio setup with ALSA Wizard and the wireless setup took about thirty five minutes.

Now, IrDA took a bit of time to get running. I have to give it to
Puppy: it loaded the driver (donauboe) and the irda module. I could
not do anything with the interface, however: no printing (I have got an old
Canon BJC-80 inkjet that uses IrDA), and looking at the port through
the digital camera in nightview mode confirmed that the IrDA port was
not active. Opening the network wizard also confirmed that the OS does
not see the interface. Loading the modules by hand (see the script at
the end of this post) brought the interface up but what about the
printer? I needed irattach, which is part of irda-utils. Got the
package from sourceforge but ... no gcc in `standard' Puppy.
Searching through puppylinux website I found out about the devx_xxx.sfs
file. The wiki said that one should just copy the file in / and Puppy
will do the rest. Not quite. Finally, I ended up doing

mount devx_213.sfs /mnt/data/ -o loop && cp -a /mnt/data/* /

(ignore messages such as `could not ... file is busy': you already have the files,
so no need to copy them).

and I had the compile system. After I posted a question in the
Beginners forum, one of the moderators (Pizzasgood) confirmed that this
is a working (though not very economical, I realize that) method of installing gcc.

Next stop: compiling irda-utils. Downloaded the file, unpacked it, ran
make ... . Ooops, make exits while trying to compile smcinit. No
pci/pci.h file. Pciutils package supplied with Puppy only contains
lspci. Off to kernel.org to get the new pciutils package. `Make' it,
re-make irda-utils ... make install ... yes! I have irattach! I wrote
a little script below to activate the IrDA stack and put the printer
in front of the laptop. `lpr irstart.sh' ... and the printer started
humming ... I have a functioning computer! One remark: I *did not have to* get
the pciutils package since I do not need smcinit and the rest of the utils
compiled just fine (and installed). However, there are two benefits to
getting the full pciutils package: no ugly messages on the screen while
the utils are being built, and you get a pci.ids file (which should be copied to
/usr/share) so that lspci gives meaningful replies. Somehow, it was missing
in my Puppy, probably to save space.

A few simple details, not necessarily Puppy-specific, but ... may it
be of some help to some poor soul Googling around ....

The wireless card (WN825GP) works with ndiswrapper but not with the
drivers supplied by Motorola. I got mine from a site I found on Ubuntu
forum (it seems to be a Linksys driver, not specific to this card):

http://home.nc.rr.com/thehinnants/stuff ... bcmwl5.zip

The wireless driver had trouble setting the ESSID when both the router and the laptop were
rebooted (even when I waited several minutes after the router booted up to turn the
laptop on) so I modified the wlan0wireless script to give the card a chance to set all
the parameters correctly. I have to note that my router does not broadcast its ESSID so
maybe this has something to do with it.

----------------wlan0wireless---------------------
#Configure the wireless interface
echo "Configuring wireless interface wlan0"
ifconfig wlan0 up
sleep 3

echo "Seting up wireless: channel, mode, essid, key"

# the card seems to be having trouble seeing the network right away ...

num=1
while [ $num -lt 100 ] # we will try it a hundred times ...
do
iwconfig wlan0 channel 11 mode managed
iwconfig wlan0 key "00000000000000000000000000"
iwconfig wlan0 essid "PupNet"

if iwlist wlan0 scan 2> /dev/null | grep "PupNet" >& /dev/null; then
echo "Network detected on try number $num"
break
else
sleep 1
fi
let num+=1
done
----------------wlan0wireless-end-----------------

By the way, I have not tested the card in WPA mode, only WEP, and I suspect
WPA will be a bit of a problem. I do not really care though, since I only ssh
over wireless.

ALSA would not work on reboot until I changed isapnp=0 to isapnp=1 in
modprpbe.conf's ALSA section (autodetected). The problem seems to be that
the driver could not grab the port (0x370) on loading (or so dmesg said).

I could not get PostScript files to print on the printer. Is this a
printer driver problem? Probably. The problem was fixed after I downloaded
a CUPS dotpup and set up printing through CUPS. The only problem I had with
the CUPS setup is that CUPS does not give you a choice of the output port
for the printer in its web interface, so I had to do it manually by modifying
/etc/cups/printers.conf (changed /dev/lp0 to /dev/irlpt0).
I had also setup a network printer in CUPS, which is attached to another computer
(running Fedora Core 5). The drivers that came with CUPS did not work very well
(it would print the test page over and over again) for my Fujitsu PrintPartner 14AV
so I ended up setting it as a RAW queue. This way the drivers on the server side
will be used and I do not have to worry about upgrading anything.

Finally, here is a script to start the IrDA stack:

----------------irdastart.sh----------------------
# A simple script to bring the IrDA stack up
# It is probably unwise to start it up at boot
# since it eats a considerable amount of power and may
# drain the battery too quickly

# modprobe donauboe # done by the system
# modprobe irda # ditto

echo -n "Initializing the IrDA stack, "
modprobe irlan 1>& /dev/null
modprobe ircomm 1>& /dev/null
modprobe ircomm-tty 1>& /dev/null

# the IP related values should be adjusted to fit a particular system

echo -n "bringing the interface up, "
ifconfig irlan0 192.168.32.1 netmask 255.255.255.0 broadcast 192.168.32.255 up
ifconfig irda0 up

sleep 1

echo "starting discovery ..."
irattach irda0 -s
----------------irdastart.sh-end------------------

The device file used by the printer is created by

mknod /dev/irlpt0 c 161 16

You can test the ir port by running irdadump. If it shows
nothing---well, no IrDA then. Running `irdaping irda0' should make the
port blink even though you can only see it through a digital camera
(preferably one that has an infrared, or nightview mode).

The last little change I did was to modify /etc/profile to say
`exec login' instead of `exec xwin' and added a new user account. I know, I know,
on a single user system it should be ok to be root but ... my wife uses this
computer occasionally and I just do not want to be root all the time. I suspect
a few things will break in this scheme but, we will see ... If anyone has any other
suggestions on how to turn a full HD install of Puppy into a multiuser system,
please let me know (not by using multiple puppy save files: I am aware of this
scheme).

It took some time but ... Puppy rocks! Thanks, Barry!

Alex
Last edited by cookevillain on Thu 14 Jun 2007, 21:45, edited 1 time in total.

User avatar
soberon
Posts: 12
Joined: Sun 10 Jul 2005, 06:05
Location: México

Thanks for share

#2 Post by soberon »

Dear sir...
I have my dear oldy, a Toshiba Satellite 220CDS pentium@132 MHz 80Mb RAM (older than yours) working fine with Puppy 2.14
Your shared experience oriented me; I hated that ALSA must be runed each startup and so. The only unresolved point is wireless access; I have an USB Zonet with the zd1211 driver, that driver is on the network wizard and looks working (I plug the USB and led turn on) but when I try to configure... just crashes and led turn off. Maybe I must to use ndiswrapper?
This is the first time that Puppy works in my oldy... I tryed from 1.0.9 and NEVER activated my PCMCIA. This time, just for test, I changed in the BIOS from PCI to cardbus/16bit and works!!!!
Again thanks for your time

SnowDog
Posts: 312
Joined: Thu 05 Jan 2006, 19:24
Location: Manitoba Canada
Contact:

#3 Post by SnowDog »

soberon,

I have a whole stack of these old Satellite's, ranging from P75's to 166's.
I just finished a two day (more or less), fight with several of the 133's, whereby I was attempting to get any of six different pcmcia LAN cards working in 2.13.

I knew it was one of those "brain fart" situations, where I was missing something simple, because the cards were all known to work in other machines running puppy.

As often happens, I dreamed up a possible solution while I was supposed to be sleeping (AKA resting) and when I woke up, I went straight to the last machine I had fought with and booted it into bios and found exactly what you described, (a setting to change pcmcia to cardbus), changed it, rebooted and viola, they all work again.

I came here looking for a pertinent thread to post the solution for others who might need it and saw your post. (that's spooky)

Cheers,
If you find my posts helpful and you want to say thanks, please consider clicking the www button under my posts to visit my website.

carr
Posts: 7
Joined: Sat 17 Mar 2007, 21:59

#4 Post by carr »

Thanks very much for this thread as well......I m running a 4015 CDS with a 4 GB HD and 2 MB Ram. Before today I attempted several distros and and went back to Win2000 since I use the machine when traveling for e mail and for a backstop for my desktop. However W2K was horribly slow.

Today I installed Puppy 2.14, absolutely the easiest Linux install that I have ever attempted. Everything worked and i did not even have to edit xconfig. Simply amazed that it installed on the HD as easily as it did. Whats more its fast!! So much so in fact that Im now considering installing a wireless card for the machine....here to fore I was considering purchase of a new laptop but getting Linux instead of Vista is difficult.


Many thanks for the fine distro.
Carr McCormack III
Veracruz Mexico

cookevillain
Posts: 10
Joined: Sun 07 Jan 2007, 05:12

A few changes for 2.16

#5 Post by cookevillain »

I have just installed Puppy 2.16 on the same hardware (2.13 and 2.16 will be living in the same doghouse, ... err, I mean, on the same computer for a couple of weeks) and everything has gotten even better! There are a few changes though:

1) there is no longer any need to use ndiswrapper with wn825gp!!!!!!! The bcm43xx series drivers work out of the box in Puppy! The wireless no longer needs any tweaking.

2) gcc installation is now flawless, just follow the 'hard-puppy' instructions elsewhere on the Puppy site. You should not see any errors while copying files to / (cp --remove-destination ... would have done the trick in 2.13 as well)

3)irda and pci-utils instructions still apply. However, some versions of irda-utils do not compile with some versions of pci-utils. In my case, it only affected smc-init compilation (I use pciutils-2.1.11 and irda-utils-0.9.18 ). Just say 'make install' in both cases, ignore the errors, and ... enjoy! You will have to manually copy *.h files from the pci-utils/include directory to /usr/include/pci and pci.ids to /usr/share before you build irda-utils. The script still works. I made a typo in my original writeup (now corrected): mknod instead of mknode.

4) alsa config still has to be corrected as in the original how-to.

5) the `multi-user' idea mentioned in the end does not really work and is pretty stupid as a lot of applications become broken after that. I still hope Puppy gets a true multi-login branch one day. It is still the best! Off to that stubborn robot now.

tempestuous
Posts: 5464
Joined: Fri 10 Jun 2005, 05:12
Location: Australia

#6 Post by tempestuous »

irda-utils is available as a dotpup here -
http://dotpups.de/dotpups/System_Utilit ... -0.4-1.pup

cookevillain
Posts: 10
Joined: Sun 07 Jan 2007, 05:12

#7 Post by cookevillain »

Thanks! Works great and there is no need to mess with pci-utils (pci.ids is still nice to have though) anymore.

Post Reply