Page 1 of 1

OT: Bluetooth Signal Meter

Posted: Thu May 23, 2013 5:30 pm
by Jeff Barnes
Does anyone know of any windows software that will show the signal strength of near by Bluetooth devices?

Re: OT: Bluetooth Signal Meter

Posted: Thu May 23, 2013 11:11 pm
by ADutheil
If you are on windows 7, then left click on the bluetooth icon, it will show you the active bluetooth connection, click on that and, that will show you the bluetooth signal strength.

Re: OT: Bluetooth Signal Meter

Posted: Mon May 27, 2013 4:19 pm
by Jeff Barnes
Tried that but no luck. A left (or right) click provides a menu of options. None that will display signal strength. Tried this on both my desktop and laptop.

Re: OT: Bluetooth Signal Meter

Posted: Mon May 27, 2013 8:04 pm
by Antonio Linares

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 12:29 pm
by Jeff Barnes
Thanks Antonio but unfortunately there is no signal strength indicator :(

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 1:19 pm
by Antonio Linares
Jeff,

Maybe this code works :-)

Code: Select all

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\wmi")

Set colItems = objWMIService.ExecQuery("Select * From MSNdis_80211_ReceivedSignalStrength")

For Each objItem in colItems
    intStrength = objItem.NDIS80211ReceivedSignalStrength

    If intStrength > -57 Then
        strBars = "5 Bars"
    ElseIf intStrength > -68 Then
        strBars = "4 Bars"
    ElseIf intStrength > -72 Then
        strBars = "3 Bars"
    ElseIf intStrength > -80 Then
        strBars = "2 Bars"
    ElseIf intStrength > -90 Then
        strBars = "1 Bar"
    Else
        strBars = "Strength cannot be determined"
    End If
    
    Wscript.Echo objItem.InstanceName & " -- " & strBars
Next

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 1:19 pm
by Antonio Linares
Google for "MSNdis_80211_ReceivedSignalStrength"

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 1:20 pm
by Antonio Linares
http://www.dreamincode.net/forums/topic ... sid-bssid/

Code: Select all

Public Function RetrieveSignalStrength() As Double
ListBox2.Items.Clear()
Dim query As Management.ManagementObjectSearcher
Dim Qc As Management.ManagementObjectCollection
Dim Oq As Management.ObjectQuery
Dim Ms As Management.ManagementScope
Dim Co As Management.ConnectionOptions
Dim Mo As Management.ManagementObject
Dim signalStrength As Double
Try
Co = New Management.ConnectionOptions
Ms = New Management.ManagementScope("root\wmi")
Oq = New Management.ObjectQuery("SELECT * FROM MSNdis_80211_ReceivedSignalStrength Where active=true")
query = New Management.ManagementObjectSearcher(Ms, Oq)
Qc = query.Get
signalStrength = 0

For Each Mo In query.Get

signalStrength = Convert.ToDouble(Mo("Ndis80211ReceivedSignalStrength"))

Next
Catch exp As Exception
' Indicate no signal
signalStrength = -1
End Try
ListBox2.Items.Add(signalStrength)
Return Convert.ToDouble(signalStrength)
End Function

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 1:43 pm
by Antonio Linares
Try this:

Code: Select all

function Main()

   local oWMI, objWMI, oBios, oData

   oWmi := CreateObject( "wbemScripting.SwbemLocator" )

   objWMI := oWmi:ConnectServer()

   oBios := objWMI:ExecQuery( "Select * From MSNdis_80211_ReceivedSignalStrength" )

   for each oData in oBios
      MsgInfo( oData:Ndis80211ReceivedSignalStrength )
   next

return nil

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 2:03 pm
by Antonio Linares
Jeff,

Test this jeff.vbs from the command prompt:

jeff.vbs

Code: Select all

On Error Resume Next
dim count
strComputer = "."
Set fso = CreateObject("Scripting.FileSystemObject")
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\WMI")

Set colItems = objWMIService.ExecQuery( _
"SELECT * FROM MSNdis_80211_ReceivedSignalStrength",,48)
For Each objItem in colItems
   msgbox objItem.Ndis80211ReceivedSignalStrength
Next

Re: OT: Bluetooth Signal Meter

Posted: Tue May 28, 2013 4:47 pm
by Jeff Barnes
Nothing happens with any of the test code :(

Re: OT: Bluetooth Signal Meter

Posted: Sun Dec 29, 2019 6:17 pm
by byron.hopp
Has anybody every got this code to work:

Function WiFiSignalStrength()
local oWMI, objWMI, oBios, oData
oWmi := CreateObject( "wbemScripting.SwbemLocator" )
objWMI := oWmi:ConnectServer()
oBios := objWMI:ExecQuery( "Select * From MSNdis_80211_ReceivedSignalStrength" )
for each oData in oBios
MsgInfo( oData:Ndis80211ReceivedSignalStrength )
next
return nil

If in understand this correctly it will report on each adapter in the network stack.
I never get anything other than zero.
I am hoping to place a WiFi Signal Strength Indicator on my app screen for a handheld app.

Thanks,

Re: OT: Bluetooth Signal Meter

Posted: Mon Dec 30, 2019 6:27 am
by Jimmy
hi,

i use M$ WMI Code Creator and have try all "MSNdis_80211*" Sample but none give Result :(
https://www.microsoft.com/en-us/downloa ... px?id=8572

if i connect "Crusher Wireless" under Windows 10 i did not found "Signal Meter" for Bluetooth ... only for TCP/IP
there was as lot of Change in Bluetooth-Stack which now is "build-in" Windows 10 but API is for DotNet ...

---

under UWP there is a BluetoothSignalStrengthFilter Class
https://docs.microsoft.com/en-us/uwp/ap ... ngthfilter

this App from Microsoft Store seems to used it
https://www.microsoft.com/en-us/p/bluet ... verviewtab

---

this Product look good. it seem like Tip from Antonio with NirSoft
https://www.the-sz.com/products/bennett/

Re: OT: Bluetooth Signal Meter

Posted: Mon Dec 30, 2019 4:47 pm
by byron.hopp
Jimmy,

Thanks for the response, I am not trying to get signal for Bluetooth, but I am trying for WiFi (802.11). Did you get that to work? I don't think I ever get into the "For Each" loop, there is no oData objects in the oBios collection. If you got something to work in FiveWin I would love to see the code.

Thanks,

Byron ...

Re: OT: Bluetooth Signal Meter

Posted: Mon Dec 30, 2019 6:39 pm
by Otto
Byron,

http://forums.fivetechsupport.com/viewt ... .c#p104040

This was working very fine for me.
Best regards,
Otto