A Linux computer can be used as wifi access point ("hotspot") using the hostapd application, now attached.
Unfortunately at the time of writing Puppy is at version 5.2.x with a 2.6.33 kernel, and only these three wifi drivers are currently supported:
hostap_pci - for Prism2/3 based PCI wifi devices
hostap_cs - for Prism2/3 based PCMCIA wifi devices
ath_pci (MADWiFi) - for Atheros AR521x PCI/miniPCI/PCMCIA wifi devices

The ath_pci driver is not provided in Puppy 5.2.x, since it conflicts with the standard ath5k driver, but I have provided this driver (2 different versions) below.

INSTRUCTIONS:
i) Install the hostapd dotpet and bridge-utils dotpets from the bottom of this post.
ii) Also install one of the madwifi dotpets if you have an Atheros AR512x wifi device (PCI or PCMCIA), and reboot.

I will assume the use of a MADWiFI-compatible wifi device under Puppy 5.1/5.2.x
If you're using a hostap-compatible wifi device, alternative commands are shown in red.

First have a think about:
- what you want your Access Point to be known as - this is the SSID.
- whether you want WPA or WPA2 encryption, or no encryption.
- if encryption, what passphrase. Then you should convert your chosen ASCII passphrase into its true 64 digit hex value, using this command -

Code:

wpa_passphrase <ssid> <passphrase>

All of these parameters then need to be entered into the configuration file; /etc/hostapd.conf
I have pre-configured this file for the SSID of "Puppy_Hotspot", using WPA2 encryption, with the PSK passphrase "woof1234".
so there's no need to change anything - you can just use my settings if you wish.
But it's worth opening /etc/hostapd.conf in Geany just to see what I'm talking about. You will see that I have commented out the PSK password (woof1234) and used the full passphrase hex value, calculated as explained earlier.
Note the relevant value for WPA2 encryption: "wpa_pairwise=CCMP"
If you want to use the older WPA encryption, you will need: "wpa_pairwise=TKIP"
And if you want no encryption, you will need: "wpa=0"
For the hostap_pci/hostap_cs drivers, change "interface=ath0" to "interface=wlan0", and change "driver=madwifi" to "driver=hostap", and change "hw_mode=g" to "hw_mode=b".

Now connect your Puppy computer's ethernet interface to some form of modem/router. This will be the internet connection that you are about to share via your wifi interface.
If you have previously set up your ethernet interface with Puppy's Network Wizard, these settings must be killed. First bring down the ethernet interface -

Code:

ifconfig eth0 down

Now you must kill the dhcpcd daemon - THIS IS VERY IMPORTANT.
Go to Menu > System > System Status and Config > Pprocess process manager
and somewhere in the list of processes you should see "dhcpcd -d -l eth0"
Select it, and press "End process"
Now you need to remove the stale dhcpcd run file with this command -

Or for the hostap_pci/hostap_cs drivers, change "ath0" to "wlan0".
Note that your Puppy computer is now seen on the LAN by its bridged interface: br0.
Now in theory it's optional to give the Puppy computer an IP address for its bridged interface,
but in practice I found this is essential. So do this -

Code:

rm -f /var/run/dhcpcd-br0.*
dhcpcd -t 30 -h puppypc -d br0

I found that this may take 15 seconds or so! dhcpcd seems to struggle with a "br0" interface.
Various code will run by, and eventually you should see "...forking to background".

Now you're finally ready to run the hostapd daemon

Code:

hostapd /etc/hostapd.conf -dd

The last two lines you see will be
"ath0: Setup of interface done.
l2_packet_receive - recvfrom: Network is down"
Don't worry, this means success.

Any wifi client (running on any operating system) should now be able to connect to your Puppy access point.

THE GOOD NEWS IS THAT I HAVE CREATED A SCRIPT WITH ALL THESE COMMANDS!
The script is installed at /usr/bin and it's called "Wifi-AP-launch.sh"
Obviously you can run this script from an rxvt terminal, but better still, I have created a desktop launch-script called "Wifi-AP-launch". With ROX, go to /usr/bin and drag the icon for "Wifi-AP-launch" (not Wifi-AP-launch.sh") onto the desktop. This is ready to go, but it has a generic icon. To give it a nice icon, right-click it, select File 'Wifi-AP-launch' > Set Icon...
and this will present a window. Use ROX to drag /usr/local/lib/X11/pixmaps/Wifi-AP-48.png into the window.
Done!

Here is the "standard" version of the ath_pci (MADWiFi) driver, for Atheros AR521x PCI/PCMCIA wifi devices.
This driver is only compatible with Puppy 5.1/5.2
After installing this dotpet, reboot.
This package modifies Puppy's MODULESCONFIG file so that the new ath_pci driver is then used in preference to Puppy's existing ath5k driver.

The "standard" ath_pci driver will not work with Atheros AR5007EG variants of the chipset, as found in miniPCI cards typically bundled with certain laptops, such as early ASUS Eee models.
So here is the suitable madwifi-HAL variant of the ath_pci driver, for these wifi devices.

Upload image of eeepc taken from phone story to follow and other stuff.
image from phone comes when usb phone modem plugged in on boot. need to disconect phone and reboot before boot will complete.
interface is usb0. made a mistake during first try(somename.tar.gz) . will now disconnect and reboot and try again.

Using interface ath0 wit - recvfrom: Network is down
l2_packet_receive - recvfrom: Network is down
l2_packet_receive - recvfrom: Network is down
l2_packet_receive - recvfrom: Network is down

mean that others are looking at my wifi connection and cant or haven't connected, or mean that my gprs/3g connection is not connected to my newly created wifi connection?.

5/ is wifi0 correct for my setup in this line

Code:

# wlanconfig ath0 create wlandev wifi0 wlanmode ap

6/later i when i am sure that my wifi is active, i will want to know about setting up a introduction or even login screen for OPEN wifi.

7/perhaps wifi reference links for this info?
8/anyone else getting this going.
9/ list of some laptops with the correct wifi cards
and/or
correct wifi dongles that can be bought separately that will function.
10/ can/should i see my own Puppy wifi being broadcast in the network wizard. i can't at the moment.

OK aarf, let's try to fix this.
First I must say I'm a little nervous about you using an internet connection from a mobile phone, where the interface is "usb0". I would be more confident if you were accessing the internet from an ADSL modem via ethernet.
But anyway, your situation means that in the above instructions you must change all instances of "eth0" with "usb0".
Don't run any commands which involve eth0, because your ethernet interface is unconnected, and has no involvement with your setup. You are passing network traffic between usb0 and ath0.

i) I did a bit more reading about hostapd configuration. First I suggest these changes to the hostapd.conf file:

auth_algs=1
this specifies "open authentication" which seems to be the norm for wifi access points.

wpa=2
this specifies WPA2, consistent with my other example settings.

hw_mode=g
Only for Atheros wifi devices, not for hostap users. This allows the access point to operate at G speeds instead of the default B mode, but still allows B clients to connect at the slower speed.

If you want to set up your access point with no encryption, I believe that you need this -
wpa=0

iii) when you launch hostapd, add "-dd" so you can see results in detail, thus

Code:

hostapd /etc/hostapd.conf -dd

aarf wrote:

1/ my wifi device is atheros AR5001 and I am using madwifi-hal-0.10.5.6-r4126-k2.6.33.2.pet is this correct?

Atheros naming conventions are confusing, but yes, you have the correct driver. It's been well established that the Atheros miniPCI wifi device in the Eee 701 requires the madwifi-HAL driver.

aarf wrote:

2/ i must start my gprs/3g usb0 connection using pupdial before beginning to issue the sequence of commands that start with wlanconfig ...

Yes.

aarf wrote:

3/if i want to have an OPEN wifi connection with no encryption how would the modifications of hostapd look? my guess is with the key info commented like so: ...

Yes, comment out most of the lines that start with "wpa..." except "wpa=". This should be "wpa=0" although information about this on the web is contradictory.

aarf wrote:

or/and not issue this command

Code:

wpa_passphrase Puppy_Hotspot woof1234

Actually that command is not necessary at all. It's only necessary to convert your passphrase into full wpa_psk hex value, so you can enter this value into the configuration file. Once the configuration file has been set up, the command is no longer needed.

aarf wrote:

4/ does this output

Code:

l2_packet_receive - recvfrom: Network is down

mean that ...

I don't know. If you continue to see this message, you might need to post a question on the hostapd mailing list.

aarf wrote:

6/later i when i am sure that my wifi is active, i will want to know about setting up a introduction or even login screen for OPEN wifi.

I don't know of any application in Linux which will do that.

aarf wrote:

10/ can/should i see my own Puppy wifi being broadcast in the network wizard. i can't at the moment.

No, because your wifi interface is being used as an access point. To be able to "see" this interface from the same computer you would need to connect a second wifi device!

tempestuous what is the source of the nervousness? legal, security, hardware incompatibility? "ADSL modem via ethernet" you mean like build you own prison type of domestic arrangement. sorry not me.

anyhows i am thinking that i will purchase a wifi dongle to test this on some nearby computers, also to get better range for my own personal use and to spread the puppy word over a larger immediate area when we get this sorted. so i need some recommendations and advice there so i dont get one that isn't supported somewhere along the line..attached is wifi some stuff that is available locally.

I'm not worried about wireless internet access, itself. In fact I use a standalone 3G wireless modem ... but mine has an ethernet interface, so my Linux boxes see it as a conventional ethernet network device.

My nervousness relates only to the nature of the "usb0" interface; I'm unfamiliar with this, and I'm unsure if it behaves like all other network interfaces?? I may worrying unnecessarily, it's just an unknown area for me.

Regarding the purchase (and setup) of a USB wifi adapter, I don't go out testing every piece of new hardware myself. I can only help people set up troublesome wifi hardware in Linux if I'm told the device ID and/or chipset.

... but before you go out and buy a new wifi adapter, I suggest you test your new hostapd hotspot with a KNOWN-GOOD wifi adapter. And this doesn't necessarily need to be a Linux machine; Windows and Mac (and Android!) wifi clients are fine to test with.

so i went to do a covert wifi test operation on the display models at the superstore. stuck in my trusty 8g kingston usb and rebooted, got to grub then after selecting the puppy i wanted to boot, got message: unsupported file system. it is ext2. laptop was a new lenovo. left quickly at this point as the attendant was hovering. they didn't have any suitable wifi dongles there. will go to the specialty computer store tomorrow.
edit just checked again, the puppy i was trying to boot isnt on the kingston drive. but still in the grub menu. my bad.

note: only thing remaining to try is dlink140 in windows on external computer with ath0 on puppy to see if hotspot is working on eeepc
.......
all below on eeepc only.
have been trying various combinations of wlan0, usb0, and ath0 and have determined that D-link dwg140 on wlan0 using "usb" driver is NOT going to be the wifi source or sender of puppyhotspot. just checking that because it isn't of one the supported drivers in tempestuous's first post

Quote:

Unfortunately at the time of writing Puppy is at version 5.2.x with a 2.6.33 kernel, and only these three wifi drivers are currently supported:
hostap_pci - for Prism2/3 based PCI wifi devices
hostap_cs - for Prism2/3 based PCMCIA wifi devices
ath_pci (MADWiFi) - for Atheros AR521x PCI/miniPCI/PCMCIA wifi devices

some output and notes mixed together (some possibly garbled and mixed up):

..................
since dlink140 has driver "usb" which is not a supported driver for puppyhotspot???

I attempt to transfer internet connection from wlan0 to ath0
i.e. wlan0 as input, ath0 as puppyhotspot also to check if ath0 is broacasting. wlan0 connected to internet before the following terminal input.

Yes, the Ralink wifi drivers have a "quirk" in that they report their driver name as "usb". If you run the "lsmod" command you should see that the actual driver in use will be either rt2800usb or rt2870sta. In fact, these two drivers will both try to claim the wifi device, so you could experiment to see if one works better than the other by going to -
Menu > System > BootManager configure bootup > Give preference to one module over another:

are you saying with different driver it may be possible to rebrand an external internet wifi signal into puppyhotspot on my eeepc? that would be cool.

running into head winds with this so it has taken a backseat for now.

other puppy users would still need the name a dongle that uses the correct drivers to be plugged into a non-wifi computer or into a laptop with the wifi enabled by an unsupported driver._________________
ASUS EeePC Flare series 1025C 4x Intel Atom N2800 @ 1.86GHz RAM 2063MB 800x600p ATA 320G
_-¤-_<º))))><.¸¸.•´¯`•.#.•´¯`•.¸¸. ><((((º>

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