Page 1 of 6

Extras for Puppy 4.3 with 2.6.30.5 kernel

Posted: Thu 01 Oct 2009, 09:20
by tempestuous
Puppy's move up to the 2.6.30.5 kernel brings with it further expanded hardware support.
There are now native Linux kernel modules (drivers) for:

ath5k - for Atheros B/G-mode wifi chipsets in PCI & Cardbus form, including the notably different "AR5007EG" variant. So the ath_pci driver from the MADWiFi project is no longer necessary.
ath9k - supports Atheros N-mode wifi chipsets in PCI & Cardbus form.
ar9170usb -supports the Atheros "otus" 802.11n USB devices (but N-mode speeds not yet working).
mwl8k - This driver supports Marvell TOPDOG 802.11 wireless cards.
at76c50x-usb - support for USB Wireless devices using Atmel at76c503/at76c505/at76c505a chips.

The "B" version of the Realtek RTL8187 USB wifi chipset should now be supported by the rtl8187 driver.

But as always, total hardware support is a "moving goalpost".
Here are some additional third-party drivers and utilities.

Important update December 2009:
For any driver in this thread which conflicts with an existing driver in Puppy, you must install the modules-preference fix contributed by forum member rerwin here -
http://www.murga-linux.com/puppy/viewto ... 659#371659
If not, the new driver will (likely) fail to override the older driver.

Posted: Thu 01 Oct 2009, 09:26
by tempestuous
Here are the "staging" (beta quality) wifi drivers from the official 2.6.30.5 kernel source.
These drivers were not enabled in the official release of Puppy 4.3.

- the rtl8187se driver is for the Realtek RTL8187SE wifi device, as found in the ASUS Eee 701SD and MSI Wind U100 netbooks. This is a miniPCI wifi device, not to be confused with the RTL8187 USB chipset.
The dotpet includes a PREFLIST entry so that this driver will be used in preference to the "Coffelius" modified proprietary driver.

- the agnx driver is for Airgo AGNX00 wifi devices.

- the prism2_usb driver is for USB versions of the Prism2/2.5/3 chipset. It supports WEP encryption, but not WPA/WPA2 encryption.
PCI/Cardbus versions of this wifi chipset are supported by the "hostap" drivers, which are standard in Puppy, and these do support WPA encryption.
It's worth noting that the prism2_usb driver uses an unconventional configuration process, completely incompatible with all other Linux wifi drivers. Thanks to Dougal's development efforts, this process is seamlessly incorporated within Puppy's Network Wizard.

After installing any of these dotpets, reboot. Puppy should automatically load the new driver at boot up, but if not, you can load it from the Network Wizard.

Posted: Thu 01 Oct 2009, 09:31
by tempestuous
Ralink wifi (updated April 15 2010)
Puppy 4.3 already contains the proprietary rt2860sta and rt2870sta drivers.
Here are the remaining four proprietary Ralink wifi drivers:

rt3562sta for the RT3060/RT3062/RT3562/RT2860/RT2760/RT2890/RT2790 PCI(e) devices
rt3090sta for the RT3090 PCIe wifi device
rt3572sta for the RT3572/RT2870 USB wifi devices
rt3070sta for the RT3070 USB wifi device (see note below).

The source code is from
http://www.ralinktech.com/support.php?s=2
Note that there is an overlap of Ralink devices supported by some of these drivers.
So it's very important to install the "modules-preference" fix mentioned in the first post.

All of these dotpets include updated configuration files so that Puppy's Network Wizard will recognise the new drivers.

Update April 15 2010:
I used a slightly older version of the rt3070sta driver (ver 2.1.2.0)
and modified it to recognise these additional USB wifi devices:
- Buffalo WLI-UC-GN, device ID's 0411:015d & 0411:014f (tested successfully)
- Tenda W541U, device ID 148f,0x2070 (the Tenda W541U V2.0 is already recognised)

Posted: Thu 01 Oct 2009, 09:37
by tempestuous
ASUS Eee ACPI support (hotkeys)
As before, the ACPI Daemon utility, acpid, is used to detect hotkey events to trigger various commands and scripts.
acpid relies on a suitable kernel module to expose the keypresses. With the 2.6.30 kernel this module is "eeepc-laptop" which Puppy 4.3 contains as standard.
But this module still can't expose control of fan speed (yet). So included in this collection of utilities is the third-party "eee" kernel module for this purpose. I obtained the source code from
http://code.google.com/p/eeepc-linux/

Don't be tempted to install "eeepc-acpi-utilities" from
http://sourceforge.net/projects/eeepc-acpi-util/
This is a more complex implementation of Eee ACPI functions specifically for Ubuntu, which require additional (large) libraries. It's generally incompatible with Puppy.

On the Eee 700 and 900 series models, these hotkeys are enabled:
Fn+F2: Wifi toggle on/off
Fn+F3 Display brightness down
Fn+F4 Display brightness up
Fn+F5 External monitor on/off
Fn+F6 Launch "eeecontrol" CPU/fan GUI
Fn+F7: Toggle Mute/Unmute
Fn+F8: Volume Level Decrease
Fn+F9: Volume Level Increase

I didn't add the Fn+F1 suspend-to-ram function, because a reliable suspend method has not been found for Puppy.

For the Eee 1000 series models, the acpid scripts are the same, but the key mappings are different:
Fn+F2: Wifi toggle on/off
Fn+F5 Display brightness down
Fn+F6 Display brightness up
Fn+F8 External monitor on/off
Fn+F9 Launch "eeecontrol" CPU/fan GUI
Fn+F10: Toggle Mute/Unmute
Fn+F11: Volume Level Decrease
Fn+F12: Volume Level Increase

I didn't enable the Fn+F3 Touchpad on/off function. This requires the Synaptics synclient utility.
And I didn't enable the Fn+F4 toggle screen resolution function.

First ensure you have wifi working on your Eee.
Now install the following 3 dotpets in this order:
- eee-0.2-k2.6.30.5.pet
- xbacklight-1.1.pet
- acpid-1.0.10-Eee.pet

The acpid dotpet will detect your particular wifi device and save these settings as
/etc/acpi/wifi-driver and /etc/acpi/wifi-interface.
The acpid dotpet will also modify /etc/rc.d/rc.local so that the "eee" module is loaded at each bootup, and it will modify /usr/sbin/delayedrun so that the ACPI daemon is run at each bootup.

Posted: Thu 01 Oct 2009, 09:39
by tempestuous
Eee CPU/fan GUI
(launched by Fn+F6, or Fn+F9 for 1000-series)

Get 01micko's latest eee-cpucontrol dotpet from here
http://www.murga-linux.com/puppy/viewto ... 904#349904

This dotpet will automatically detect your CPU, and install the appropriate gui.
For most Celeron-based Eee's the gui provides 2 CPU speeds.
For Atom-based Eee's, and the 701SD, the gui provides 3 CPU speeds.
Refer attached image.

This dotpet will also modify /etc/rc.d/rc.local
so that the fan control daemon (originally written by Dougal) is run at each bootup.
Once all dotpets are installed, hotkeys should work straight away, but it would be a good idea to reboot.

Posted: Thu 01 Oct 2009, 09:43
by tempestuous
Broadcom wifi devices.
Puppy 4.3 contains the b43 and b43legacy opensource wifi drivers. But some Broadcom wifi devices, especially those found in Dell and HP notebooks, are notorious for failing to work with these drivers.
For these troublesome devices the proprietary Broadcom hybrid driver will likely work better. The source code is from here
http://www.broadcom.com/support/802.11/linux_sta.php
Dotpet now attached. The new driver is called wl
Of course, you should always try the b43/b43legacy drivers first ... and report any errors relating to these drivers you may see when you run the "dmesg" command.

UPDATE Dec 30 2009:
Unfortunately Puppy 4.3.x contains the ssb driver in its initrd, which is a low level interface driver the b43/b43legacy drivers depend upon. Early in the boot sequence the ssb driver will claim Broadcom wifi devices, thus blocking the newly installed wl driver from loading.

Here's a rough solution: first install the modules-preference fix from here -
http://www.murga-linux.com/puppy/viewto ... 659#371659
(as mentioned in the first post in this thread)
Now open /etc/rc.d/rc.local in Geany and add these commands

Code: Select all

rmmod b43
rmmod ssb
modprobe wl
Now reboot. At each bootup this will unload the standard b43/ssb drivers and load the wl driver, but it means that you will need to run the Network Wizard at every bootup to reconfigure the wifi connection. Not very convenient.

Of more serious concern, your computer may contain other hardware which relies on the ssb driver, such as PCI/USB/Cardbus interfaces, and these will be disabled!

In such cases you will need the more comprehensive solution, which is to use a re-mastered version of Puppy 4.3.1 which includes the ssb driver specially modified to remove compatibility with Broadcom wifi devices. Get it here -
"Special Puppy431 for broadcom 4312 (and other?) wifi cards"
http://www.murga-linux.com/puppy/viewtopic.php?t=50570

Posted: Thu 01 Oct 2009, 09:45
by tempestuous
Atheros AR5007EG wifi chipset
This is a non-standard variant of the Atheros G-mode PCI/Cardbus wifi chipset, which is found in quite a few notebooks and netbooks, especially certain ASUS Eee models.
The opensource ath5k driver in Puppy 4.3 is now stable, and is reported to work reliably with the AR5007EG device in most cases ...
but there are some reports that the older MADWiFi driver (ath_pci) works better with certain hardware (Eee 900?).
Here's where confusion and misinformation can start. The standard MADWiFi driver does not support the AR5007EG chipset. A special variant of the MADWiFi driver is required; "madwifi-hal-0.10.5.6".
I now attach this driver for the 2.6.30.5 kernel in Puppy 4.3.
The source code is SVN revision 4100, from
http://snapshots.madwifi-project.org/ma ... -0.10.5.6/

I reiterate: standard versions of the Atheros wifi chipset will not work with this driver.
This driver is for the Atheros AR5007EG wifi device only. And you should probably not install this driver unless the ath5k driver is definitely not working for you.

The dotpet package modifies Puppy's PREFLIST so that this driver (ath_pci) will be used in preference to the ath5k driver.
Update Oct 17 2009: PREFLIST fixed.

After installing this dotpet, reboot.

Posted: Thu 01 Oct 2009, 09:45
by tempestuous
Here is the acerhdf driver for fan control of the Aspire ONE.
Apparently it doesn't work for other Acer models.
Instructions are in a separate post; "Acer Aspire ONE fan control"
http://www.murga-linux.com/puppy/viewtopic.php?t=42818

Posted: Thu 01 Oct 2009, 09:46
by tempestuous
Realtek seems to release new wifi (and ethernet) devices quite regularly.
The most recent Realtek wifi chipsets are the N-mode RTL819x series. And in Realtek's usual style, they write a Linux driver immediately, but they don't release it for public download. Individual developers must ask for it.
I managed to obtain the source code from various private download sites. Now attached are the PCI/PCIe version of the driver: r8192se_pci, and the USB versions of the driver: r8192s_usb

After installing either of these dotpets, reboot. Puppy should automatically load the new driver, and you will see the new driver in the Network Wizard.

UPDATE Feb 28 2010:
Configuration files fixed so that these drivers will be recognised as WPA-compatible in the Network Wizard.

UPDATE June 6 2010:
PCI version updated to the latest ver 15.0127.2010

Posted: Thu 01 Oct 2009, 09:46
by tempestuous
Here is the "sn9c20x" webcam driver for various models of microdia webcams, including models branded "Lifecam".
The source code is from http://groups.google.com/group/microdia ... iver-draft
After installing this dotpet, reboot. Puppy may automatically load this module, but if not load it manually as such -

Code: Select all

modprobe sn9c20x
Apparently this driver generates the video image in a pixelformat most video/webcam applications cannot handle, so the libv4l library is required, also attached.
The README will install to /root/my-applications/libv4l-README.txt

Instructions for use with the MPlayer, using MPlayer's v4l2 interface:
Install libv4l-0.5.8.pet.
Before launching MPlayer, run this command -

Code: Select all

export LD_PRELOAD=/usr/lib/libv4l/v4l2convert.so
Now launch MPlayer like this -

Code: Select all

mplayer tv:// -tv driver=v4l2:width=352:height=288:device=/dev/video0
NOTE:
It's important that MPlayer (or XawTV, or Skype, or whatever application you choose) is launched from the same xterminal that ran the "export LD_PRELOAD ..." command.

Posted: Sun 04 Oct 2009, 06:15
by 01micko
I have a Eeepc701SD and downloaded the appropriate drivers for the Celeron.

I hit a snag at the eee-0.2-k2.6.30.5.pet. It contains the eee.ko module needed for the fan and fsb settings for the Celeron processor. There is a pinstall.sh script in the pet that runs "depmod". There is a readme instructing the user to run "modprobe eee" to load the driver. I kept getting "module not found" error.

What to do? Puppy 4.3 includes the full depmod utility. It is called by typing "depmod-FULL" in a terminal. I did that, then ran "modprobe eee" again and the driver loaded successfully.

To check run "lsmod". I did that and "eee" is the first entry.


Cheers

No need to do what is in this post, the next post addresses the issue

Posted: Sun 04 Oct 2009, 11:09
by tempestuous
UPDATE Oct 4 2009:

All drivers in this thread updated to run depmod-FULL at post-installation instead of just depmod.

I just tested several of these drivers in a fresh boot to Puppy 4.3, and the standard depmod command seems to register the new driver just fine on my hardware, but since several users have reported this error I decided that depmod-FULL was the safe way to go.
But a word of caution - apparently depmod-FULL uses a lot more memory when running, so after doing a fresh (frugal) installation of Puppy, always reboot before installing any of these dotpets. This is because a "pupsave" file is created at first shutdown, and this will act as extra memory if your RAM is ever full, and will thus avoid a crash in such situations.

Posted: Thu 08 Oct 2009, 07:55
by jur
I followed the procedure... but it didn't work, much. The fan drive applet seems to work. But the buttons... screen brightness keys worked before, same now. External monitor on/off seriously messes up Xorg or something - screen resolution changes and dropping to text mode the screen is corrupted. Power button is still ignored.

EeePC 1000HE.

Thanks for the continued efforts! :)

Heading over to the other thread mentioned earlier here...

Posted: Thu 08 Oct 2009, 14:55
by jemimah
The hotkeys need a little work on the 1005ha too. I will post fixes soon.

A few thoughts:

I think suspend will work fine on the eee with acpitool. The only caveat is that the i915/i810 modules probably don't get loaded by default, and that screws up suspend; you have to make sure those load.

The backlight off button needs to toggle! It's pointless to turn the backlight off, if you can't get it back.

Yaf-splash notification messages that tell you that you've successfully toggled your network or adjusted the volume would be the bomb. Toggling the powersave mode super-hybrid-engine style would also be awesome.

Posted: Fri 09 Oct 2009, 03:00
by jemimah
Ok so I've been working on this all day. Here's what I've come up with.

I created a file called keys that holds the function key codes. That way, you can just swap the file depending on the target machine and everything will work. This concept should extend beyond just EeePCs, to potentially provide acpi to all kinds of laptops. To find out what the function codes are you need to kill acpid and run it as 'acpid -d -l'. Then press a function key and see the code in the acpid debugging output as shown in the screenshot below.

I implemented a lot of missing stuff like power button, lid, and ac adapter functions. You need to modify the performance.sh and powersave.sh scripts to do the right thing on your machine when the ac adapter is plugged in or removed.

I added yaf-splash notifications like I was talking about above. Now you don't have to wonder if the scripts are working or not.

I'm attaching a tarball of my /etc/acpi. This is customized for my 1005ha, so if that's not what you have, you'll need to adjust the key file and power scripts. If people want to volunteer their keycodes, we can build a database of key files.

Edit: there is a much newer and improved version of this here: http://www.murga-linux.com/puppy/viewto ... 150#352150

Aspire One

Posted: Fri 09 Oct 2009, 13:05
by TomRhymer
My Aspire One D-150 works fine with 4.3 and the normal wifi drivers. The problem may be with the older A-110 8.9 inch models.

Posted: Sat 10 Oct 2009, 19:13
by jemimah
Here's the synclient if anyone wants it for turning of the touchpad.

Posted: Mon 12 Oct 2009, 06:53
by tempestuous
TomRhymer wrote:My Aspire One D-150 works fine with 4.3 and the normal wifi drivers. The problem may be with the older A-110 8.9 inch models.
I presume by "normal" you mean ath5k. That's what I expected.

But there is finally a credible report that the MADWiFi driver is necessary with certain hardware, though not necessarily the Acer Aspire ONE.
So the madwifi-hal-0.10.5.6 dotpet remains available in the earlier post.

Posted: Fri 16 Oct 2009, 16:55
by CHLee
removed.

Posted: Tue 20 Oct 2009, 05:38
by magerlab
does puppy 4.3.1 support eeepc 701 webcam by default?
i had no problem with webcam in puppy 4.0 and 4.1.2 but in puppy 4.3.1 skype does not see it. of course, it's on in bios:)