Hi everybody:
I’ve been months
reading the bluez source and learning about the bluetooth specification, plus other
documents (the correct coding style, Wireless Technologies
Congress 2003 and other documents by Marcel holtmann)
I’m developing an application to connect two Bluetooth-enabled
phones via internet using two Bluetooth-enabled PCs both connected to internet.
I mean that I can transmit files and play Bluetooth multiplayer games to my
friend that is
I use a raw socket as hcidump does, then I send the
data trough TCP to the other peer, when received is sent over Bluetooth hoping
that the other device receives it, this is more complex than it seems since
bluez handles and answers all HCI requests, i.e (when a device performs a SDP
request to find a service UUID bluez handles and answers the request) but this
is not correct for my application, hci responses and data acks may be received
via TCP from the other peer, in other words: no bluez support, only HCI frames
sniffing, sending, receiving and transmitting. Now my questions are:
-
Can I send HCI frames
with a raw socket ?
-
How can I tell the bluez
stack not to answer HCI requests (receiving only, leave the sends to me).
- Is
there a better way to make this application?
Any help would be greatly appreciated.
Thanks in advance and happy new year.