USB4Java无法在高级API中找到设备,但可以在低级别找到它

时间:2018-06-05 10:41:02

标签: java usb4java

我正在尝试将Playstation BUZZ控制器连接到覆盆子pi来制作测验蜂鸣器,最少有1个控制器,最多4个,给我4到16个独立单元。我正在使用USB4Java来处理USB通信,但我不确定是使用高级还是低级,所以我尝试了两种。 使用示例代码只是为了找到控制器,我可以在低级别但不是高级别看到它,高级别显示低级别显示的所有其他设备,但不显示我感兴趣的设备。

我无法找出为什么高级API似乎无法在低级别时看到控制器。很明显,我做错了什么,但我看不清楚。

谁能看到我哪里出错了?

public List initBuzzers_High() {
    List<UsbDevice> aList = new ArrayList();
    UsbServices services;
    try {
        services = UsbHostManager.getUsbServices();
        UsbHub rootHub = services.getRootUsbHub();
        aList=this.findDevices(rootHub);
    } catch (UsbException | SecurityException ex) {
        Logger.getLogger(Buzzer.class.getName()).log(Level.SEVERE, null, ex);
    }
  //System.out.println("Devices found : " + aList.size());
    return null;
}

public List<UsbDevice> findDevices(UsbHub hub) {
    List<UsbDevice> aList = new ArrayList();
    for (UsbDevice device : (List<UsbDevice>) hub.getAttachedUsbDevices()) {
        UsbDeviceDescriptor desc = device.getUsbDeviceDescriptor();
        System.out.println(desc);
    }
    return null;
}

0 个答案:

没有答案