I have installed Puppy Wary 5.5 on a CD and use it live with a Compaq Presario 3070US laptop. The wireless card is BCM4306 v2. When I use the connection wizard, it finds the card on wlan0 and seems to pick the right driver (b43legacy) and apparently work OK. After the first stage, it says that Puppy was able to find a live network. I manually enter IP addresses and after this stage, it says that the network configuration was successful and asks if I want to save it. However, when I try to connect to the internet or access my NAS, neither works. When I plug in an ethernet cable, everything works fine on eth0.

The wireless connection works with Windows. When I tried using Mageia on a live DVD, it suggested using ndiswrapper which I did and it worked, giving me a connection. When I tried to use ndiswrapper in Puppy, it didn't work. I placed both the .inf and the .sys file in the home directory and pointed to them. It seemed to work but warned me that it might not connect and sure enough it didn't.

I'm new to Linux and not sure what to do next. Mageia works but I would really like to get Puppy working because I'm using it on my netbook. What should I do next or what more information can I provide to get help?

I have to say only that I got working the wl driver even if the Broadcom card was not listed among the supported ones.

Certainly no harm in trying - but maybe better to try and find out why the recommended driver is not working and fix that problem......especially if using wary which does not include wl.ko support_________________ LxPup = Puppy + LXDE

Thank you both for your suggestions. I have been pursuing the b43-legacy route first as suggested by peebee.

I had been using netwiz but I have now tried both netwiz and Frisbee by trying Slacko instead of Wary (both 5.5). Frisbee gets me a little further - I get a flaky connection that alternates between wlan0 acquired and wlan0 down. I have got as far as finding one of my SMB shares on the network but not the other. wlan0 keeps going down while the network is being searched.

I tried to see what dmesg would tell me. The relevant bit seems to be:

Presumably there is a problem with PHY0 but I don't know what that means. I looked at dmesg again after I had been trying to connect to the network for a while. It was alternating between the authenticate and associate process and the PHY0 error.

So, do you know what this all means? Should I try wl or is there something more I can do with b43-legacy?

When I received your last message I had been pursuing the option of using b43-fwcutter to extract the driver. So, when you gave me the website that had the drive already extracted I thought I would take a short cut and give it a go.

Unfortunately, when I went through the set up procedure, removing the b43legacy module and then reloading it with the new drivers, the error message just changed from phy0 to phy1. It connected better but the connection rate was very low and intermittent.

As the web site admitted that the drivers weren't the most up-to-date, I went ahead and worked out how to use b43-fwcutter (with Mageia because I couldn't work out how to do it in Puppy). This didn't advance me much because the drivers I extracted were just the same. I expect it was the B43 drivers that were old and not the B43legacy ones.

Some further research indicated that quite a few people had problems like mine from about kernel 2.6.24 onwards. One was able to change DMA / PIO settings to get things to work correctly but I didn't fully understand what he did.

So, I went back to trying ndiswrapper and found that if I did a fresh boot, removed the b43legacy and ssb modules and used netwiz to load ndiswrapper with my Windows driver, everything seemed to work fine. I had good access to both the internet and my network and was able to stream audio.

It seems a bit of a cheat to use a Windows driver but it works! Unfortunately I have to set it up again every time I boot because, although I clicked on the button to save the settings for the next boot, Puppy just boots up with B43legacy again.

I have heard of blacklisting modules and will investigate this next to see if it stops B43legacy loading at boot time.

Although, I get a good WiFi connection with ndiswrapper I can't get it to "stick" so that it sets itself up automatically at boot time. When I put B43legacy on the blacklist in Wary 5.5 it reasserts itself at boot up. When I rmmod it, I can't just modprobe ndiswrapper as it seems to delete all the wireless settings and I have to go through the whole network set up again. In Slacko 5.5, the blacklist seems to stop the B43legacy driver starting at boot time but I seem to have to start it and then stop it again before I can get ndiswrapper to work.

There are posts from about five years ago discussing this problem but the fixes were quite complicated and were supposed to have been included in later releases.

Is there a way to reliably get ndiswrapper to automatically install itself and set up the wireless network during the boot sequence? It just ignores my request to save the settings in the wizard.

I could really do with some help with this. After searching around I found that some people have fudged this by putting a script in rc.local. I then used some trial-and-error to come up with something that worked based on the instructions about using the command line. In Wary 5.5, the following worked:

However, this involves stopping ssb which can be required by other modules, e.g. my ethernet connection. In other distros people have been able to change the order in which modules are loaded but I don't know how to do this in Puppy. Apparently if ndiswrapper is loaded before ssb it "grabs" the wireless card and keeps ssb out of it.

So, is there a way of really blacklisting b43legacy or finding out what reasserts it?

Is there a way of getting ndiswrapper to load before ssb (adding it to the module preferences list as ssb:ndiswrapper doesn't seem to work)?

I am totally new to this, just guessing a lot of it and ending up in a mess.

Not easy to advise without having the same hardware or something similar to hand and it sounds like you've looked in most of the places I would have done, but I do feel your pain.

The only thing I can think to ask is how exactly are you blacklisting the b43legacy module? Are you saying that the line "blacklist b43legacy" appears in /ect/modprobe.d/blacklist.conf (or have you added it manually?) but then the line is gone again after a reboot?

I played around with ndiswrapper for the first time just the other day and it all went OK for me. The network wizard setup did instruct me to disable all other interfaces and the only other interface was my eth0 so I disabled and blacklisted that, but I am not sure if you have to disable ALL interfaces including ethernet or if it is just any other wireless interfaces that have to be disabled._________________Oscar in England

To be fair I didn't elaborate on what I had done about the blacklisting. I actually used the Boot Manager. However, I checked and it did insert the lines for b43legacy and ssb in /etc/modprobe.d/blacklist.conf as you have suggested. When I reboot, the lines aren't deleted. They stay there but the modules still load. So, some process during the boot sequence must be ignoring the blacklisting and loading the modules. Perhaps there has been a hack at some stage to solve another problem but it has caused this one. At any rate, I have had to write my little rc.local file to reverse the damage and, although it works in terms of getting the wireless going at boot up, it is a bit messy in other ways.

I may have to live with this but, if there is no better solution, it just leaves me feeling that Puppy Linux is a bit "incomplete".

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot vote in polls in this forumYou cannot attach files in this forumYou can download files in this forum