Submitted by michaelsonbritt on Wed, 11/01/2006 - 14:09.
This question was raised earlier with no answer... Is there an SDK or
an API definition for the Wi-Spy? This would allow custom tools to be
build by the general commnuity.
Submitted by ChiefGeek on Sat, 11/11/2006 - 17:05.
Good questions!
1) The conversion formula does not match the current scale shown in
Wi-Spy and Chanalyzer, because the current software has the wrong
scale. We have updated the scale in the software after running the
calibration measurements a couple weeks ago. The next version of
Chanalyzer is scaled more like -51 to -97. Also, there previously was a
calibration routine that run when the Wi-Spy was first plugged in that
tried to dampen out extra noise; this routine has been removed and the
amplitude conversion algorithm has been adjusted to:
Amplitude = RSSI * 1.5 - 97
2) Yes, all frequencies should be updated every 96 msec.
3) Yes, it is basically the average power over the sampling interval.
Basically the radio is set to a specific frequency and then an RSSI
reading is taken. The RSSI reading averages the power over 50 usec and
then returns the RSSI value. Two RSSI readings are taken per frequency
and then averaged together.
Submitted by Anonymous metageek on Fri, 11/10/2006 - 02:56.
First of all, I'd like to thank the Metageek team for a nice product.
I'm trying to make some modifications to the open source wispy software
in the part where it calculates the average power over certain time.
It is very nice to have the official interface description. However, I have a couple of questions on it:
1) The conversion formula
dBm = RSSI * 1.55 - 99
given the in the document doesn't map to the interval [-61,-30] dBm
that the WiSpy Windows program display. It rather maps to [-50.95, -99]
dBm. Where does this difference come?
2) I assume from the specification that sampling period for a single
frequency is 96 ms,that is, the device can report a new value for the
same frequency every 96 ms. Is this assumption correct?
3) I wander how the value of power is measured for each sampling interval:
- just the point estimate of the power measured at each sampling interval,
P(t)=lim(E(t, t+dt)/dt,dt->0),
where E(t, t+dt) is the energy "seen" by the RF part in the interval [t, t+dt]
- sort of average power over the sampling interval
- something else
To answer your previous question, I develop in C and C++ under Windows,
and I'm especially interested in developing tools for Pocket PC. (I
tried to post earlier but it didn't go through). The UNIX source code
is still very useful as a reference though.
Submitted by ChiefGeek on Tue, 11/07/2006 - 22:56.
Here is the Wi-Spy Hardware Interface Specification including links to
USB HID classes that should simplify communicating with the Wi-Spy
hardware. If you have any questions please post to the forum and/or
email me (ryan@metageek.net). Enjoy :-)
Submitted by ChiefGeek on Tue, 11/07/2006 - 22:32.
Last week we used the Wi-Spy SMA prototype connected to a signal
generator looped back into a calibrated spectrum analyzer to calibrate
the amplitude scale in the software. I will update the hardware
documentation to reflect the corrected amplitude scale and will then
upload the document.
PLEASE post that document and any other documentation you have on the
website for free downloading, without any licensing agreements or NDAs
required.
There is probably enough information in the kismet wispytools source
code to figure out how to interface with the device, but it is MUCH
nicer to have actual official hardware documentation.
You don't really have anything to lose from providing us with
information on how to interface with the device, and you have a lot to
gain such as more applications that support the Wi-Spy and maybe even
novel uses which you haven't thought of yet. You'll definitely get more
interest in your products if they are well-supported and recommended by
open source projects.
Submitted by ChiefGeek on Mon, 11/06/2006 - 08:37.
Wi-Spy uses the USB HID (Human Interface Device) class descriptors,
which allows Wi-Spy to use the USB HID driver for Windows, Linux, and
Mac (other main OS's like BSD also have a USB HID driver), without the
need for custom drivers.
We have a document that briefly describes the packet structure of the
USB packets, which we have provided to people in the past when working
on custom applications that connect to Wi-Spy.
What language and OS are you planning to use? Would open sourcing the WiSpyConsole application be beneficial to you?
Good questions!
1) The conversion formula does not match the current scale shown in
Wi-Spy and Chanalyzer, because the current software has the wrong
scale. We have updated the scale in the software after running the
calibration measurements a couple weeks ago. The next version of
Chanalyzer is scaled more like -51 to -97. Also, there previously was a
calibration routine that run when the Wi-Spy was first plugged in that
tried to dampen out extra noise; this routine has been removed and the
amplitude conversion algorithm has been adjusted to:
Amplitude = RSSI * 1.5 - 97
2) Yes, all frequencies should be updated every 96 msec.
3) Yes, it is basically the average power over the sampling interval.
Basically the radio is set to a specific frequency and then an RSSI
reading is taken. The RSSI reading averages the power over 50 usec and
then returns the RSSI value. Two RSSI readings are taken per frequency
and then averaged together.
First of all, I'd like to thank the Metageek team for a nice product.
I'm trying to make some modifications to the open source wispy software
in the part where it calculates the average power over certain time.
It is very nice to have the official interface description. However, I have a couple of questions on it:
1) The conversion formula
dBm = RSSI * 1.55 - 99
given the in the document doesn't map to the interval [-61,-30] dBm
that the WiSpy Windows program display. It rather maps to [-50.95, -99]
dBm. Where does this difference come?
2) I assume from the specification that sampling period for a single
frequency is 96 ms,that is, the device can report a new value for the
same frequency every 96 ms. Is this assumption correct?
3) I wander how the value of power is measured for each sampling interval:
- just the point estimate of the power measured at each sampling interval,
P(t)=lim(E(t, t+dt)/dt,dt->0),
where E(t, t+dt) is the energy "seen" by the RF part in the interval [t, t+dt]
- sort of average power over the sampling interval
- something else
Thank you for the document and the source code link (http://svn.kismetwireless.net/code/tools/wispy/)!
To answer your previous question, I develop in C and C++ under Windows,
and I'm especially interested in developing tools for Pocket PC. (I
tried to post earlier but it didn't go through). The UNIX source code
is still very useful as a reference though.
Thanks again,
Michaelson Britt
Here is the Wi-Spy Hardware Interface Specification including links to
USB HID classes that should simplify communicating with the Wi-Spy
hardware. If you have any questions please post to the forum and/or
email me (ryan@metageek.net). Enjoy :-)
www.metageek.net/wi-spy/Wi-SpyHardwareInterface.pdf
Last week we used the Wi-Spy SMA prototype connected to a signal
generator looped back into a calibrated spectrum analyzer to calibrate
the amplitude scale in the software. I will update the hardware
documentation to reflect the corrected amplitude scale and will then
upload the document.
PLEASE post that document and any other documentation you have on the
website for free downloading, without any licensing agreements or NDAs
required.
There is probably enough information in the kismet wispytools source
code to figure out how to interface with the device, but it is MUCH
nicer to have actual official hardware documentation.
You don't really have anything to lose from providing us with
information on how to interface with the device, and you have a lot to
gain such as more applications that support the Wi-Spy and maybe even
novel uses which you haven't thought of yet. You'll definitely get more
interest in your products if they are well-supported and recommended by
open source projects.
Wi-Spy uses the USB HID (Human Interface Device) class descriptors,
which allows Wi-Spy to use the USB HID driver for Windows, Linux, and
Mac (other main OS's like BSD also have a USB HID driver), without the
need for custom drivers.
We have a document that briefly describes the packet structure of the
USB packets, which we have provided to people in the past when working
on custom applications that connect to Wi-Spy.
What language and OS are you planning to use? Would open sourcing the WiSpyConsole application be beneficial to you?