trying to connect--NotSupportedIOException

243 views
Skip to first unread message

John Stoner

unread,
May 19, 2009, 5:29:19 PM5/19/09
to bluecove-users

I am trying to use bluecove on a Vista machine, with the WiiRemoteJ
wii driver.

I am getting this stack trace:

BlueCove version 2.1.0 on winsock
May 19, 2009 3:18:09 PM wiiremotej.WiiDeviceDiscoverer getDevice
SEVERE: Error getting device!
java.io.IOException: WiiRemote failed to connect!
at wiiremotej.WiiRemote.construct(WiiRemote.java:305)
at wiiremotej.WiiRemote.<init>(WiiRemote.java:216)
at wiiremotej.WiiDeviceDiscoverer.getDevice
(WiiDeviceDiscoverer.java:122
)
at wiiremotej.WiiRemoteJ.findDeviceInternal(WiiRemoteJ.java:
270)
at wiiremotej.WiiRemoteJ.findDevice(WiiRemoteJ.java:244)
at wiiremotej.WiiRemoteJ.findRemote(WiiRemoteJ.java:285)
at boogiepants.display.ControlPanel$WiiConnectActionListener
$1.run(Contr
olPanel.java:329)
at java.lang.Thread.run(Unknown Source)
Caused by: com.intel.bluetooth.NotSupportedIOException: Not Supported
on winsock

at
com.intel.bluetooth.BluetoothStackMicrosoft.l2OpenClientConnection(Bl
uetoothStackMicrosoft.java:859)
at com.intel.bluetooth.BluetoothL2CAPClientConnection.<init>
(BluetoothL2
CAPClientConnection.java:36)
at com.intel.bluetooth.MicroeditionConnector.openImpl
(MicroeditionConnec
tor.java:395)
at com.intel.bluetooth.MicroeditionConnector.open
(MicroeditionConnector.
java:513)
at javax.microedition.io.Connector.open(Connector.java:97)
at wiiremotej.WiiRemote.construct(WiiRemote.java:298)
... 7 more
java.io.IOException: WiiRemote failed to connect!
at wiiremotej.WiiRemote.construct(WiiRemote.java:305)
at wiiremotej.WiiRemote.<init>(WiiRemote.java:216)
at wiiremotej.WiiDeviceDiscoverer.getDevice
(WiiDeviceDiscoverer.java:122
)
at wiiremotej.WiiRemoteJ.findDeviceInternal(WiiRemoteJ.java:
270)
at wiiremotej.WiiRemoteJ.findDevice(WiiRemoteJ.java:244)
at wiiremotej.WiiRemoteJ.findRemote(WiiRemoteJ.java:285)
at boogiepants.display.ControlPanel$WiiConnectActionListener
$1.run(Contr
olPanel.java:329)
at java.lang.Thread.run(Unknown Source)
Caused by: com.intel.bluetooth.NotSupportedIOException: Not Supported
on winsock

at
com.intel.bluetooth.BluetoothStackMicrosoft.l2OpenClientConnection(Bl
uetoothStackMicrosoft.java:859)
at com.intel.bluetooth.BluetoothL2CAPClientConnection.<init>
(BluetoothL2
CAPClientConnection.java:36)
at com.intel.bluetooth.MicroeditionConnector.openImpl
(MicroeditionConnec
tor.java:395)
at com.intel.bluetooth.MicroeditionConnector.open
(MicroeditionConnector.
java:513)
at javax.microedition.io.Connector.open(Connector.java:97)
at wiiremotej.WiiRemote.construct(WiiRemote.java:298)
... 7 more

John Stoner

unread,
May 19, 2009, 5:31:36 PM5/19/09
to bluecove-users
aack--seemed to truncate my message... anyway:

Now, I do know that first BlueCove version 2.1.0 on winsock is a
problem, but when I check device manager, I see two listings under
'Bluetooth Radios:' 'Broadcom Bluetooth 2.0+EDR USB dongle,' and
'Microsoft Bluetooth Enumerator.'

'Broadcom' should work, yes? It's not clear to me why it's using
winsock, or how to make it use broadcom.

Vlad Skarzhevskyy

unread,
May 19, 2009, 5:40:01 PM5/19/09
to bluecov...@googlegroups.com
If you do have Widcomm stack installed on you Vista try this Java System property: -Dbluecove.stack=widcomm

--
Vlad

John Stoner

unread,
May 19, 2009, 7:06:24 PM5/19/09
to bluecov...@googlegroups.com
Thanks for the quick response! Initially I had bluecove.stack.first=widcomm, so I changed it to bluecove.stack=widcomm... and got this:


BlueCove version 2.1.0 on winsock
May 19, 2009 5:01:13 PM wiiremotej.WiiDeviceDiscoverer deviceDiscovered
SEVERE: Error discovering device.
java.io.IOException: Can't query remote device
        at com.intel.bluetooth.RemoteDeviceHelper.getFriendlyName(RemoteDeviceHe
lper.java:404)
        at javax.bluetooth.RemoteDevice.getFriendlyName(RemoteDevice.java:130)
        at wiiremotej.WiiDeviceDiscoverer.deviceDiscovered(WiiDeviceDiscoverer.j
ava:65)
        at com.intel.bluetooth.BluetoothStackMicrosoft$3.runDeviceInquiry(Blueto
othStackMicrosoft.java:423)
        at com.intel.bluetooth.DeviceInquiryThread.run(DeviceInquiryThread.java:
103)
java.lang.NullPointerException
        at boogiepants.display.ControlPanel$WiiConnectActionListener$1.run(Contr
olPanel.java:330)

Not sure if it's progress or not. That first line still looks wrong though.
--
blogs:
http://www.generosity.org/stoner/
http://boogiepants.typepad.com/
'In knowledge is power; in  wisdom, humility.'

Vlad Skarzhevskyy

unread,
May 19, 2009, 7:57:02 PM5/19/09
to bluecov...@googlegroups.com
As you see it still runs with Microsoft Stack. Why ? it should not happen if you set property correctly.
--
Vlad

John Stoner

unread,
May 21, 2009, 5:17:14 PM5/21/09
to bluecov...@googlegroups.com
OK, I think I resolved that. Uninstalled the MS driver, jumped through the hoops of installing the WIDCOMM driver, with the 5.1.1100 version and the patch and everything.

It seemed to work... once.

Well, it's hard to say. I'm porting this app to windows, and it did connect with L2CAP and everything, but it didn't seem to get much farther, and with the bluecove.debug setting spewing data all over, it's hard to say what broke.

So I made a code change (took out the bluecove.debug setting) and reran and got this puzzler:

java.lang.IllegalStateException: Bluetooth failed to initialize. There is probab
ly a problem with your local Bluetooth stack or API.
        at wiiremotej.WiiRemoteJ.<clinit>(WiiRemoteJ.java:73)
        at boogiepants.display.ControlPanel$WiiConnectActionListener$1.run(Contr
olPanel.java:330)
        at java.lang.Thread.run(Unknown Source)
Caused by: javax.bluetooth.BluetoothStateException: No errors in WIDCOMM stack
        at com.intel.bluetooth.BluetoothStackWIDCOMM.getLocalDeviceBluetoothAddr
ess(Native Method)
        at javax.bluetooth.LocalDevice.<init>(LocalDevice.java:71)
        at javax.bluetooth.LocalDevice.getLocalDeviceInstance(LocalDevice.java:7
8)
        at javax.bluetooth.LocalDevice.getLocalDevice(LocalDevice.java:95)
        at wiiremotej.WiiRemoteJ.<clinit>(WiiRemoteJ.java:66)
        ... 2 more

So now it's throwing an exception because there aren't any errors in the WIDCOMM stack? Any explanation?

John Stoner

unread,
Jul 2, 2009, 3:11:30 AM7/2/09
to bluecov...@googlegroups.com
OK, now I have the windows box in my possession for a few days. Quality time with Vista...

Now the issue is this:
I connect;
My app runs fine;
I disconnect;
I try to reconnect, and fail;
I restart the machine;
and I connect successfully again. Once.

Is this normal with Widcomm drivers? Do I always have to reboot Vista to reconnect?

The stack trace for the failure in question:

BlueCove version 2.1.0 on widcomm

java.lang.IllegalStateException: Bluetooth failed to initialize. There is probab
ly a problem with your local Bluetooth stack or API.
        at wiiremotej.WiiRemoteJ.<clinit>(WiiRemoteJ.java:73)
        at boogiepants.display.DancerDisplay.connect(DancerDisplay.java:75)
        at boogiepants.display.ControlPanel$3.actionPerformed(ControlPanel.java:
179)
        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
        at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)

...


Caused by: javax.bluetooth.BluetoothStateException: No errors in WIDCOMM stack
        at com.intel.bluetooth.BluetoothStackWIDCOMM.getLocalDeviceBluetoothAddr
ess(Native Method)
        at javax.bluetooth.LocalDevice.<init>(LocalDevice.java:71)
        at javax.bluetooth.LocalDevice.getLocalDeviceInstance(LocalDevice.java:7
8)
        at javax.bluetooth.LocalDevice.getLocalDevice(LocalDevice.java:95)
        at wiiremotej.WiiRemoteJ.<clinit>(WiiRemoteJ.java:66)
        ... 27 more

Should I tell my Windows users to expect this?

Vlad Skarzhevskyy

unread,
Jul 2, 2009, 9:12:42 AM7/2/09
to bluecov...@googlegroups.com
I have tested BlueCove with WIDCOMM on Vista and I was able to
connect and disconnect many times.
Vlad

John Stoner

unread,
Jul 4, 2009, 11:08:52 PM7/4/09
to bluecov...@googlegroups.com
Did you have to do anything between connections? Remove it from My Bluetooth Places somehow? I tried to remove it, but failed.
Reply all
Reply to author
Forward
0 new messages