使用32feet.NET找不到BLE设备

时间:2019-05-06 01:38:24

标签: c# bluetooth bluetooth-lowenergy

我在Windows 7中使用VS 2017编写了一个用于搜索BLE设备的hci工具。 我使用蓝牙CSR 4.0加密狗(已安装驱动程序并且运行良好)和BlueSoleil。

但是在BLE设备发布广告后,程序找不到它。我试图使用其他应用程序(例如lightblue)进行搜索,但BLE设备却可以找到。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using InTheHand.Net.Bluetooth;
using InTheHand.Net;
using InTheHand.Net.Sockets;
using System.Diagnostics;
using System.Net.Sockets;

namespace hcitool
{
partial class Program
{
    static bool infoRatherThanName;
    static BluetoothAddress _searchAddress;

    static int Main(string[] args)
    {
        if (args.Length < 1)
        {
            Console.WriteLine("Please specify command.");
            return 2;
        }
        var cmd = args[0];
        switch (cmd)
        {
            case "name":
                infoRatherThanName = false;
                break;
            case "info":
                infoRatherThanName = true;
                break;
            //-
            case "dev":
                return ShowRadios();
            //case "auth":
            //    return CauseAuth(GETADDRESS());
            default:
                throw new NotImplementedException("Command: '" + cmd + 
     "'");
        }
        if (args.Length < 2)
        {
            Console.WriteLine("Please specify device address.");
            return 2;
        }
        var addrS = args[1];
        _searchAddress = BluetoothAddress.Parse(addrS);
        //
        var dev = new BluetoothDeviceInfo(_searchAddress);
        bool isInRange = GetCanConnectTo(dev);
        if (isInRange)
        {
            PrintDevice(dev);
        }
        else
        {
            Console.WriteLine("Can't see that device.");
        }
        //
        Console.WriteLine("simple");
        return Simple();
        //return Fancier();
    }

当我使用“ hcitool.exe名称123456654321(BLE地址)”运行程序时,它显示:无法看到该设备。

GetCanConnectTo()的返回值为false,因此它表明:无法看到该设备。

我不知道如何使用我的代码连接到ble设备。

0 个答案:

没有答案