Comunicacion, emparejamiento e intercambio de informacion via Bluetooth ??

Iniciado por Diabliyo, 3 Noviembre 2008, 22:37 PM

0 Miembros y 3 Visitantes están viendo este tema.

Diabliyo

Que tal, abro el tema para preguntarles sobre el procedimientos necesario para intercambio informacion, archivos, musica, juegos, etc, etc entre un dispositivo USB Bluetooth y un Dispositivo Movil.

Utilizo Gentoo AMD64 200.8, tengo instaladas las librerias BlueZ y solo logro realizar lo siguiente:

1- Inicializar la USB Bluetooth
shell# hciconfig
//muestra los dispositivos bluetooth conectados a mi equipo de computo

shell# hciconfig hci0 up //activo mi dispositiv bluetooth


2- Escaneo para descubrir nuevos dispositivos bluetooth.
shell# hcitool scan
//proporciona informacion como:
//MAC_DEL_DISPOSITIVO   NOMBRE_DISPOSITIVO


A partir de aqui me gustaria saber como puedo en dado momento transferir informacion de mi USB Bluetooth hacia a mi celular :D.

He leido en algunos blogs sobre la herramienta obexftp (la cual poseo instalada), y he realizado algunos pasos que se mencionan pero no logro realizar una transferencia con exito :(.

Estos Manuales he leido:

Bluetooth-Linux
Bluetooth y Linux Ubuntu
Montando una Red Bluetooth en Linux


SirGraham

Hola,

Pues es el camino. El OBEX en sus dos perfiles: Push y FTP es protocolo adecuado para ello.

Cual es el problema?

Saludos,
Sir Graham.
   

Diabliyo

Cita de: SirGraham en  4 Noviembre 2008, 00:38 AM
Hola,

Pues es el camino. El OBEX en sus dos perfiles: Push y FTP es protocolo adecuado para ello.

Cual es el problema?

Saludos,
Sir Graham.

Claramente menciono que solamente logro hacer los puntos 1 y 2, pero no se que mas hacer para lograr transferir un archivo hacia mi dispositivo movil !!... OJO solo hago los pasos 1 y 2 ya mencionados en el primer post, pero no se que mas sigue hacer ni como :(

Continuando con mi test de prueba, logro establecer como /dev/rfcomm0 mi dispositivo movil (al parecer). No se si sea lo correcto, pero hice esto:

//escanenado
shell# hciconfig scan
11:22:33:44:55:66 Mi_Celular

//registrar dispositivo movil en /dev/
//rfcomm=programa, bind= conectar, 0= dev, 2= canal
shell#rfcomm bind 0 11:22:33:44:55:66 2

//verificando que se haya realizado el dev en el canal
shell# rfcomm show
rfcomm0: 11:22:33:44:55:66 on channel 2 clean

shell# ls -l /dev/|grep rfcom
/dev/rfcomm0


Bueno apartir de aqui intente utilizar el obexftp asi, pero me dice que no se puede conectar :(.

//en el siguiente comando intento listar el dispositivo movil
shell# obexftp -b 11:22:33:44:55:66 -B 2 -l
Try 'obexftp' --help' for more information
Try 'obexftp' --help' for more information
Try 'obexftp' --help' for more information
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect


Ya no se que hacer :(...


SirGraham

Hola,

Ya veo.  ;D  Cuando conectas con el protocolo RFCOMM....

¿Como sabes el puerto del perfil de bluetooth de OBEX?

Te digo esto por que con un hciconfig scan solo sabes la direccion MAC.
Te falta obtener la lista de perfiles vinculados al SDP del dispositivo remoto y obtener asi el canal donde esta configurado el perfil del OBEX..

eso se hace con:

# sdptool browse 11:22:33:44:55:66 (la MAC del dispositivo remoto)
.
.
.
.

Service Class ID List:
  "Obex FTP" (0xxxxx)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 3                      <------------ es el dato que te falta


En estos comandos:

# rfcomm bind 0 11:22:33:44:55:66 2
# obexftp -b 11:22:33:44:55:66 -B 2 -l

Te has "inventado" que el perfil Obex FTP este en el "canal 2".
Por que obtenerlo, pues no lo has obtenido.  :o

En cada dispositivo con bluetooth  el canal de cada perfil puede estar configurado de forma diferente. Depende de la configuracion inicial del Stack de bluetooth del fabricante. Lo puede poner en el 2 o en 3 o en el que le de la gana....

Saludos,
Sir Graham
   

Diabliyo

Gracias por tu pronta respuesta, pero aun no lo consido :(, he revisado la lista de servicios que proporciona mi dispositivo movil con sdptool MAC y me han salido varios, aqui dejo algunos que se relacionan con Obex FTP:

Browsing AA:BB:CC:DD:EE:FF ... //es una MAC fictisia :D
Service Description: Sony Ericsson K790
Service RecHandle: 0x10000

Service Name: OBEX Object Push
Service RecHandle: 0x1000b
Service Class ID List:
  "OBEX Object Push" (0x1105)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 6
  "OBEX" (0x0008)
Profile Descriptor List:
  "OBEX Object Push" (0x1105)
    Version: 0x0100

Service Name: OBEX File Transfer
Service RecHandle: 0x1000c
Service Class ID List:
  "OBEX File Transfer" (0x1106)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 7
  "OBEX" (0x0008)
Profile Descriptor List:
  "OBEX File Transfer" (0x1106)
    Version: 0x0100

Service Name: OBEX IrMC Sync Server
Service RecHandle: 0x1000d
Service Class ID List:
  "IrMC Sync" (0x1104)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 8
  "OBEX" (0x0008)
Profile Descriptor List:
  "IrMC Sync" (0x1104)
    Version: 0x0100

Service Name: OBEX Phonebook Server
Service RecHandle: 0x10010
Service Class ID List:
  "Phonebook Access - PSE" (0x112f)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 9
  "OBEX" (0x0008)
Profile Descriptor List:
  "Phonebook Access - PSE" (0x112f)
    Version: 0x0100



Posteriormente al resultado obtenido he realizado lo siguiente sin obtener exito:

Intentando en Canal 6
//deslinkeamos el /dev/
shell# rfcomm release 0

//hacemos el nodo /dev/ en canal 6
shell# rfcomm bind 0 AA:BB:DD:CC:EE:FF 6
//intentamos listar
shell# obexftp -b AA:BB:DD:CC:EE:FF -B 6 -l
Try 'obexftp' --help' for more information
Try 'obexftp' --help' for more information
Try 'obexftp' --help' for more information
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect


Intentando en Canal 7
//deslinkeamos el /dev/
shell# rfcomm release 0

//hacemos el nodo /dev/ en canal 7
shell# rfcomm bind 0 AA:BB:DD:CC:EE:FF 7
//intentamos listar
shell# obexftp -b AA:BB:DD:CC:EE:FF -B 7 -l
Try 'obexftp' --help' for more information
Try 'obexftp' --help' for more information
Try 'obexftp' --help' for more information
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect
Connecting...failed: connect
Still trying to connect


Help xD

Lewert

Yo tambien intento conectarme con la herramienta rfcomm y al introducir la clave en mi movil, envez de salirme en mi ordenador el mensaje para introducir el mismo PIN (Autenticación) me sale "Fallo de conexion" en la pantalla del movil :-\
Crack the bytes, crack yourself

SirGraham

Hola,

Habeis probado sin el RFComm: Directamente con el ObexFTP...

Saludos,
Sir Graham.
   

Lewert

Antes que nada: se pueden emparejar un movil y un ordenador con un Bluetooth USB (sin Bluetooth interno)? :huh:
Crack the bytes, crack yourself

SirGraham

Hola,

Es lo mismo. De echo, los modulos internos bluetooth de un PC (normalmente solo los encuentras tipicamente en portatiles) esta internamente conectados "tambien" por USB.

Vamos. Es lo mismo un modulo externo (dongle) que uno interno, todo esto "obviamente"  siempre que tengas los drivers y el S.O te lo reconozca.

Saludos,
Sir Graham.
   

Diabliyo

Cita de: SirGraham en  4 Noviembre 2008, 21:49 PM
Hola,

Habeis probado sin el RFComm: Directamente con el ObexFTP...

Saludos,
Sir Graham.

sip, lo acabo de hacer...

1- conecte mi usb bluetooth.
2- active mi usb bluetooth (hciconfig hci0 up).
3- escanie por mi movi (hcitool scan)
4- intente lista mi movil (obexftp -b AA:BB:CC:DD:EE:FF -B 7 -l)

Y el mismo error que ya he pegado anteriormente :(...

Por si las moscas aqui mi lsmod:

shell# lsmod |grep blue
bluetooth              54820  7 rfcomm,l2cap,hci_usb


Que puedo hacer ??...