RFUtils - Paul Tobey

G

Guest

For Paul Tobe

Hi Paul. We have tried RFUtils the last month now on a Pocket PC Ipaq 4150 with built in wireless LAN. We have found that RFUtils works great with this Wi-Fi device, however this device only updates the list of available SSIDs at a 10 second interval, which is insufficient for indoor location positioning using wi-fi technology. Therefore we have tried to replace the internal wi-fi lan with a Sandisk SD wi-fi lan card, that updates the list of SSIDs every 2 seconds.

If we understand the NDIS correctly, the RFUtils should be able to retrieve all the information about SignalStrenght, SSIDs, HWaddress for this device aswell. We have run into a problem when retrieving the SSIDs from the adapter, that yield the following exception, that is likely to occur after 3 refreshes of the SSIDSList

A manged ArgumentOutOfRangeException occurred at Application::Run+0x
Application::Run+0x
Form1::Main+0x

When debuggin we found that this error occurs when public String SSID class is used in RFUtils

public String SSI

get
{
// Get the string length from the first four bytes
int c = BitConverter.ToInt32( data, offset + SsidOffset )

// Convert the rest of the SSID stuff to a string
EXCEPTION HERE -- > return System.Text.Encoding.ASCII.GetString( data, offset + SsidOffset + 4, c )




It seems that the lenght of the integer C gets sufficiently large, so that when doing the ASCII encoding we get an exception

Moreover sometimes it lists a signalstrenght -100 in the SSIDsForm, but no BSSID is shown. At other times both the SignalStrenght and the SSID equals "" <-- nothing. Sometimes the data array of bytes has a lenght of more than 46000, which seems kind of many. The errors are most likely to occur when the adapter can see more than 2 accesspoints

We have tried to use two other programs to retrieve the list of SSIDS, The Cirond Software also have problems finding the list of AccessPoints, and sometimes show extremely large numbers in recieved signal strenght from an accesspoint i.e. -4668900.

When using the built in software for identifying networks in pocket PC 2003 no problems were encountered

I guess our question is, Why does the built in software of the pocket PC 2003 work correctly? Whys doesnt NDIS work with this network adapter

Regard
Mikkel Andreasen & Anders Fredbor
 
P

Paul G. Tobey [eMVP]

I'd say, based on your description, that the driver is returning invalid
information. I don't have a SanDisk adapter...

Paul T.

Anders Fredborg said:
For Paul Tobey

Hi Paul. We have tried RFUtils the last month now on a Pocket PC Ipaq 4150
with built in wireless LAN. We have found that RFUtils works great with this
Wi-Fi device, however this device only updates the list of available SSIDs
at a 10 second interval, which is insufficient for indoor location
positioning using wi-fi technology. Therefore we have tried to replace the
internal wi-fi lan with a Sandisk SD wi-fi lan card, that updates the list
of SSIDs every 2 seconds.
If we understand the NDIS correctly, the RFUtils should be able to
retrieve all the information about SignalStrenght, SSIDs, HWaddress for this
device aswell. We have run into a problem when retrieving the SSIDs from the
adapter, that yield the following exception, that is likely to occur after 3
refreshes of the SSIDSList:
A manged ArgumentOutOfRangeException occurred at Application::Run+0xf
Application::Run+0xf
Form1::Main+0xf

When debuggin we found that this error occurs when public String SSID class is used in RFUtils:

public String SSID
{
get
{
// Get the string length from the first four bytes.
int c = BitConverter.ToInt32( data, offset + SsidOffset );

// Convert the rest of the SSID stuff to a string.
EXCEPTION HERE -- > return System.Text.Encoding.ASCII.GetString( data, offset + SsidOffset + 4, c );

}
}

It seems that the lenght of the integer C gets sufficiently large, so that
when doing the ASCII encoding we get an exception.
Moreover sometimes it lists a signalstrenght -100 in the SSIDsForm, but no
BSSID is shown. At other times both the SignalStrenght and the SSID equals
"" <-- nothing. Sometimes the data array of bytes has a lenght of more than
46000, which seems kind of many. The errors are most likely to occur when
the adapter can see more than 2 accesspoints.
We have tried to use two other programs to retrieve the list of SSIDS, The
Cirond Software also have problems finding the list of AccessPoints, and
sometimes show extremely large numbers in recieved signal strenght from an
accesspoint i.e. -4668900.
When using the built in software for identifying networks in pocket PC
2003 no problems were encountered.
I guess our question is, Why does the built in software of the pocket PC
2003 work correctly? Whys doesnt NDIS work with this network adapter?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top