Introduction
Lorsque j’ai rédigé mon précédent articule sur l’utilisation de mon BlackBerry Storm. J’ai proposé
une configuration de Barry pour utiliser son BlackBerry en tant que modem 3G.
Malheureusement cette configuration ne fonctionne plus ! Voici donc un article sur la configuration
que j’utilise avec mon BlackBerry Torch.
Configuration de PPP
Il faut ajouter un fichier de configuration pour définir un nouveau service. Lire les commentaires dans
le fichier pour activer ou non les traces.
[root@Dahlia root]$ cat /etc/ppp/peers/barry # # SFR Peer configuration # connect "/usr/sbin/chat -f /etc/chatscripts/sfrstart" disconnect "/usr/sbin/chat -f /etc/chatscripts/sfrstop" # Barry using (uncomment / comment the line to enable/disable the logs) pty "/usr/local/sbin/pppob -v -l /tmp/barry.log" #pty "/usr/local/sbin/pppob" user "" password "" nodetach defaultroute noipdefault noauth usepeerdns noaccomp noccp nobsdcomp nodeflate nopcomp maxfail 5 lcp-echo-interval 5 lcp-echo-failure 12 holdoff 3 ipcp-restart 7 ipcp-accept-local ipcp-accept-remote mtu 1492 # Comment/Uncomment the line to enable/disable the logs debug
Configuration du modem
Il faut envoyer certaines commandes pour configurer le BlackBerry en mode modem :
[root@Dahlia root]$ cat /etc/chatscripts/sfrstart # # Some of these options found documented at: # http://wiki.colar.net/tethering_with_blackberry_pearl_on_linux # # SFR Peer configuration # ABORT ERROR '' AT&F OK ATZ OK ATI OK AT+CNUM OK AT+CSQ # Some Blackberries reboot on this command #OK AT+CREG? #OK AT+CGDCONT? #OK AT+CGQREQ? #OK AT+CGQMIN? #OK AT+CGATT? #OK AT+CGREG? # Choose the good configuration #OK AT+CGDCONT=1,"IP","wapsfr" #OK AT+CGDCONT=3,"IP","blackberry" OK 'AT+CGDCONT=4,"IP","websfr"' OK ATDT*99# CONNECT
Puis :
[root@Dahlia root]$ cat /etc/chatscripts/sfrstop "" "\K" "" "+++ATH0"
Utilisation
Pour utiliser votre nouvelle connexion, il suffit de lancer :
[root@Dahlia root]$ pon barry usb_set_debug: Setting debugging level to 9 (on) usb_os_init: Found USB VFS at /dev/bus/usb usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 019 on 002 usb_os_find_devices: Found 003 on 002 skipped 1 class/vendor specific interface descriptors skipped 1 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Ioctl() inappropré pour un périphérique error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 6 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 019 on 002 usb_os_find_devices: Found 003 on 002 skipped 1 class/vendor specific interface descriptors skipped 1 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Ioctl() inappropré pour un périphérique error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 6 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 019 on 002 usb_os_find_devices: Found 003 on 002 skipped 1 class/vendor specific interface descriptors skipped 1 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Ioctl() inappropré pour un périphérique error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 6 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 019 on 002 usb_os_find_devices: Found 003 on 002 skipped 1 class/vendor specific interface descriptors skipped 1 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Ioctl() inappropré pour un périphérique error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 6 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_busses: Found 002 usb_os_find_busses: Found 001 usb_os_find_devices: Found 019 on 002 usb_os_find_devices: Found 003 on 002 skipped 1 class/vendor specific interface descriptors skipped 1 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 002 usb_os_find_devices: Found 001 on 002 error obtaining child information: Ioctl() inappropré pour un périphérique error obtaining child information: Ioctl() inappropré pour un périphérique usb_os_find_devices: Found 003 on 001 skipping descriptor 0xB skipped 1 class/vendor specific endpoint descriptors skipped 5 class/vendor specific interface descriptors skipping descriptor 0x25 skipped 1 class/vendor specific endpoint descriptors skipped 6 class/vendor specific interface descriptors usb_os_find_devices: Found 002 on 001 usb_os_find_devices: Found 001 on 001 error obtaining child information: Ioctl() inappropré pour un périphérique Script /usr/sbin/chat -f /etc/chatscripts/sfrstart finished (pid 27573), status = 0x0 Serial connection established. using channel 25 Using interface ppp0 Connect: ppp0 <--> /dev/pts/6 sent [LCP ConfReq id=0x1] rcvd [LCP ConfReq id=0x0 ] sent [LCP ConfAck id=0x0 ] rcvd [LCP ConfRej id=0x1 ] sent [LCP ConfReq id=0x2 ] rcvd [LCP ConfAck id=0x2 ] sent [LCP EchoReq id=0x0 magic=0x0] sent [PAP AuthReq id=0x1 user="" password= ] rcvd [LCP EchoRep id=0x0 magic=0x0] rcvd [PAP AuthAck id=0x1] PAP authentication succeeded sent [IPCP ConfReq id=0x1 ] rcvd [IPCP ConfReq id=0x1 ] sent [IPCP ConfAck id=0x1 ] rcvd [IPCP ConfNak id=0x1 ] sent [IPCP ConfReq id=0x2 ] rcvd [IPCP ConfNak id=0x2 ] sent [IPCP ConfReq id=0x3 ] rcvd [IPCP ConfNak id=0x3 ] sent [IPCP ConfReq id=0x4 ] rcvd [IPCP ConfNak id=0x4 ] sent [IPCP ConfReq id=0x5 ] rcvd [IPCP ConfNak id=0x5 ] sent [IPCP ConfReq id=0x6 ] rcvd [IPCP ConfNak id=0x6 ] sent [IPCP ConfReq id=0x7 ] rcvd [IPCP ConfNak id=0x7 ] sent [IPCP ConfReq id=0x8 ] rcvd [IPCP ConfNak id=0x8 ] sent [IPCP ConfReq id=0x9 ] rcvd [IPCP ConfNak id=0x9 ] sent [IPCP ConfReq id=0xa ] rcvd [IPCP ConfNak id=0xa ] sent [IPCP ConfReq id=0xb ] rcvd [IPCP ConfNak id=0xb ] sent [IPCP ConfReq id=0xc ] rcvd [IPCP ConfNak id=0xc ] sent [IPCP ConfReq id=0xd ] rcvd [IPCP ConfNak id=0xd ] sent [IPCP ConfReq id=0xe ] rcvd [IPCP ConfNak id=0xe ] sent [IPCP ConfReq id=0xf ] rcvd [IPCP ConfNak id=0xf ] sent [IPCP ConfReq id=0x10 ] rcvd [IPCP ConfNak id=0x10 ] sent [IPCP ConfReq id=0x11 ] rcvd [IPCP ConfNak id=0x11 ] sent [IPCP ConfReq id=0x12 ] rcvd [IPCP ConfNak id=0x12 ] sent [IPCP ConfReq id=0x13 ] rcvd [IPCP ConfNak id=0x13 ] sent [IPCP ConfReq id=0x14 ] rcvd [IPCP ConfNak id=0x14 ] sent [IPCP ConfReq id=0x15 ] rcvd [IPCP ConfNak id=0x15 ] sent [IPCP ConfReq id=0x16 ] rcvd [IPCP ConfNak id=0x16 ] sent [IPCP ConfReq id=0x17 ] rcvd [IPCP ConfNak id=0x17 ] sent [IPCP ConfReq id=0x18 ] rcvd [IPCP ConfNak id=0x18 ] sent [IPCP ConfReq id=0x19 ] rcvd [IPCP ConfNak id=0x19 ] sent [IPCP ConfReq id=0x1a ] rcvd [IPCP ConfNak id=0x1a ] sent [IPCP ConfReq id=0x1b ] rcvd [IPCP ConfNak id=0x1b ] sent [IPCP ConfReq id=0x1c ] rcvd [IPCP ConfNak id=0x1c ] sent [IPCP ConfReq id=0x1d ] rcvd [IPCP ConfNak id=0x1d ] sent [IPCP ConfReq id=0x1e ] rcvd [IPCP ConfNak id=0x1e ] sent [IPCP ConfReq id=0x1f ] rcvd [IPCP ConfNak id=0x1f ] sent [IPCP ConfReq id=0x20 ] rcvd [IPCP ConfNak id=0x20 ] sent [IPCP ConfReq id=0x21 ] rcvd [IPCP ConfNak id=0x21 ] sent [IPCP ConfReq id=0x22 ] rcvd [IPCP ConfNak id=0x22