Sida 1 av 2

Mobilt bredband med SE m600i via bluetooth

Postat: 22 maj 2007, 14:41
av vox2000
Efter lite bökandes fick jag igång mitt mobila bredband till laptopen via bluetooth, och bads att skriva ner hur jag gjorde, varsågod:

Mina förutsättningar:
* Sony Ericsson m600i 3g-telefon
* Abbonnemang från Tre till telefonen
* Fujitsu Siemens Amilo Pro V3205 laptop, inbyggd bluetooth-mojäng
* Ubuntu 7.04

Det finns miljarders med sidor på nätet som förklarar hur du sätter upp mobilt bredband mot din telefon via bluetooth, men många av dem gör det onödigt krångligt, med små PAN som delar ut ipadress till telefonen och natar i datorn och annat skit. Jättekrångligt, som vanligt, i framtiden. Jag har en SE m600i, så chansen är stor att det funkar rakt av på andra SE-telefoner. För andra tillverkare måste nog en del saker tweakas lite. Jag har försökt att nämna det vid partier som är berörda.

Börja med att installera bluetooth-paketen och ppp:
root@mamba# apt-get install bluez-utils ppp

Se till att din dator ser din bluetooth-mojäng:

root@mamba# lsusb
Bus 003 Device 003: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)

Fint, datorn ser min bluetooth-mojäng. Syns den inte får du kolla så din kernel har stöd för den.

Kolla vilka bluetooth-grejer som finns på den:

root@mamba#  hcitool dev
Devices:
        hci0    00:11:E2:FC:B0:13

Min har som synes bara en adapter.

Kolla vilket mode din adapter är i:
root@mamba# hciconfig
hci0:  Type: USB
        BD Address: 00:11:E2:FC:B0:13 ACL MTU: 384:8 SCO MTU: 64:8
        UP RUNNING PSCAN
        RX bytes:66629 acl:520 sco:0 events:670 errors:0
        TX bytes:39969 acl:546 sco:0 commands:49 errors:0

När modulen laddas sätts devicen i enbart PSCAN mode som default. Det betyder att den är "connectable" men osynlig. Det tog en stund innan jag upptäckte att datorn måste vara i PSCAN+ISCAN-mode (ISCAN = synlig) för att datorn ska kunna paira sig med telefonen. Är datorn i enbart PSCAN-mode fungerade det inte för mig. Kan vara en bugg i mjukvaran, grottade inte mer i det.

Sätt din bluetooth-adapter i piscan-mode:

root@mamba# hciconfig hci0 piscan
root@mamba# hciconfig
hci0:  Type: USB
        BD Address: 00:11:E2:FC:B0:13 ACL MTU: 384:8 SCO MTU: 64:8
        UP RUNNING PSCAN ISCAN
        RX bytes:66694 acl:520 sco:0 events:680 errors:0
        TX bytes:40004 acl:546 sco:0 commands:59 errors:0

Gott. Nu ska ta vi ta fram information om telefonen, slå på bluetooth på telefonen om det inte redan är gjort:

root@mamba# hcitool scan 
Scanning ...
        00:12:EE:B1:D1:15      Telefon

Min telefon har det fantastiskt fantasifulla namnet "Telefon" och har MAC-adress 00:12:EE:B1:D1:15.

När vi tagit reda på MAC-adressen för telefonen behöver du ta reda på vilken kanal som modem-tjänsten finns på. Det gör du så här:

root@mamba# sdptool search --bdaddr 00:12:EE:B1:D1:15 dun
Searching for dun on 00:12:EE:B1:D1:15 ...
Service Name: Dial-up Networking
Service Description: Symbian OS,UIQ phone
Service Provider: Sony Ericsson
Service RecHandle: 0x1003c
Service Class ID List:
  "Dialup Networking" (0x1103)
Protocol Descriptor List:
  "L2CAP" (0x0100)
  "RFCOMM" (0x0003)
    Channel: 7
Language Base Attr List:
  code_ISO639: 0x656e
  encoding:    0x6a
  base_offset: 0x100
Profile Descriptor List:
  "Dialup Networking" (0x1103)
    Version: 0x0100

På min telefon har modem-tjänsten kanal 7.
Protocol Descriptor List:
    Channel: 7

Nu ska vi confa bluetooth i datorn så den vet vilken enhet och kanal den ska prata med.
Det görs med filerna /etc/bluetooth/hcid.conf och /etc/bluetooth/rfcomm.conf.
Så här ser min hcid.conf ut:

# HCId options
options {
        autoinit yes;
        security auto;
        pairing multi;
        passkey "abcd";
}

# Default settings for HCI devices
device {
        name "%h-%d";
        class 0x3e0100;
        iscan enable; pscan enable;
        lm accept;
        lp rswitch,hold,sniff,park;
}

Det du behöver ändra är raden passkey, vilket är pin-koden till datorn. Den är valfri, 4 tecken. Mer än 4 tecken ska tydligen funka, men inte med min telefon. Med Nokia går det, enligt forumen.

rfcomm0 {
        bind yes;
        device 00:12:EE:B1:D1:15;
        channel 7;
        comment "Bluetooth modem device";
}

Rfcomm.conf specificerar vilka bluetooth-devices som ska användas och vilken kanal de använder.
I rfcomm.conf behöver du primärt ändra två saker, vilket device som ska användas (MAC-adressen) och vilken kanal som ska användas. Ändra raden device så telefonens MAC-adress står där, samt kanalen som din telefon använder tilll modem-tjänsten.
Har du fler tjänster som du vill använda i din telefon, tex filöverföring, lägger du till de i rfcomm.conf-filen under första devicen:

rfcomm1 {
        bind yes;
        device 00:12:EE:B1:D1:15;
        channel 4;
        comment "Bluetooth file transfer device";
}

Hur du för över filer från datorn till telefonen går jag inte in på här.

Raskt vidare!

Vi har ändrat i config-filer, så vi behöver starta om tjänsterna som använder dem:

root@mamba# /etc/init.d/bluetooth restart
* Restarting Bluetooth services
  ...done.

Nu testar vi om vår conf funkar:
(releasea först, så inga eventuella kopplingar finns kvar)

root@mamba# rfcomm release all
root@mamba# rfcomm connect 0
Connected /dev/rfcomm0 to 00:12:EE:B1:D1:15 on channel 7
Press CTRL-C for hangup
Disconnected

Ok, det funkade ju!
Rfcomm connect 0 säger åt rfcomm att connecta device 0 (som vi specificerade i rfcomm.conf). Om det funkar så säger den Connected /dev/rfcomm0 to 00:12:EE:B1:D1:15 on channel 7. Det stämmer ju, vi specificerade ju kanal 7 på devicen med MAC-adress 00:12:EE:B1:D1:15. Tryck ctrl-c för att avbryta.

Grymt, nu kan vi koppla datorn till telefonen via bluetooth. Nu ska vi sätta upp ppp för uppringt internet. Låter så old school att säga "uppringt internet", men det är precis vad vi gör. Det var första gången på säkert 7 år som jag satte upp en modemkoppling i Linux, så det tog en stund att få det fungerande.

Först använde jag wvdial, som en del andra har använt till Huaweis 3g-modem, men jag fick inte wvdial att spela med min telefon, och efter en del fipplande utan framgång sket jag i det och skrev ett eget ppp-script. Det är möjligt att det går att få det fungerandes med wvdial, posta gärna hur du gjorde här då.

Gå till /etc/ppp. Skapa katalogen peers, om den inte redan finns. Skapa en fil med valfritt namn i katalogen peers, min heter "tre".

root@mamba# vim tre

I den står det följande:

defaultroute
noauth
connect "/usr/sbin/chat -v -f /etc/chatscripts/tre"
debug
/dev/rfcomm0
115200 
updetach
usepeerdns

Spara och avsluta.
Jag tänker inte gå in på vad scriptet gör mer än att den kallar på ett chat-program (nej, inte ett sånt chat-program :) som tar en "conf" som input, och använder sig av /dev/rfcomm0 som modemdevice.

Nu ska vi fixa "confen" som scriptet kallar på.
Gå till /etc. Skapa katalogen chatscripts, om den inte redan finns. Skapa en fil med valfritt namn i katalogen chatscripts, min heter "tre".

root@mamba# vim tre

I den står det följande:

ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED
'' ATZ
OK ATE1
OK 'AT+cgdcont=1,"IP","data.tre.se"'
OK-AT-OK "ATDT*99***1#"
CONNECT ''

Spara och avsluta.
Jag tänker återigen inte gå in mer på vad scriptet gör mer än att det först sätter lite variablar på vad den ska avbryta på, och senare specificerar hur den ska prata med mottagande part och vad mottagande part heter, samt "ringer upp".

Det du behöver ändra på är raden OK 'AT+cgdcont=1,"IP","data.tre.se"' om du har en annan operatör än tre och raden under om du har en annan telefon än SE. Nokia har *99#, om jag inte minns fel. Tele2 har internet.tele2.se tror jag, du får kolla. Det ser du genom att öppna en anslutning till modemet (beskrivit tidigare (rfcomm connect 0)) och skriva "at+cgdcont?".

Nu är det klart. För att ringa upp skriver du:

root@mamba# pon tre (eller vad du nu valde för filnamn på din fil i /etc/ppp/peers)
Serial connection established.
using channel 4
Using interface ppp0
Connect: ppp0 <--> /dev/rfcomm0
sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x66b259f4> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x2 <auth chap MD5> <accomp> <pcomp> <asyncmap 0x0> <magic 0x582a1363>]
sent [LCP ConfNak id=0x2 <auth pap>]
rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x66b259f4> <pcomp> <accomp>]
rcvd [LCP ConfReq id=0x3 <auth pap> <accomp> <pcomp> <asyncmap 0x0> <magic 0x582a1363>]
sent [LCP ConfAck id=0x3 <auth pap> <accomp> <pcomp> <asyncmap 0x0> <magic 0x582a1363>]
sent [LCP EchoReq id=0x0 magic=0x66b259f4]
sent [PAP AuthReq id=0x1 user="mamba" password=<hidden>]
rcvd [LCP EchoRep id=0x0 magic=0x582a1363]
rcvd [PAP AuthAck id=0x1 "Congratulations!"]
Remote message: Congratulations!
PAP authentication succeeded
sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>]
sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 0.0.0.0> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>]
rcvd [LCP ProtRej id=0x1 80 fd 01 01 00 0f 1a 04 78 00 18 04 78 00 15 03 2f]
Protocol-Reject for 'Compression Control Protocol' (0x80fd) received
rcvd [IPCP ConfReq id=0x1]
sent [IPCP ConfNak id=0x1 <addr 0.0.0.0>]
rcvd [IPCP ConfNak id=0x1 <addr 10.143.226.67> <ms-dns1 80.251.192.244> <ms-dns3 80.251.192.245>]
sent [IPCP ConfReq id=0x2 <compress VJ 0f 01> <addr 10.143.226.67> <ms-dns1 80.251.192.244> <ms-dns3 80.251.192.245>]
rcvd [IPCP ConfReq id=0x2]
sent [IPCP ConfAck id=0x2]
rcvd [IPCP ConfAck id=0x2 <compress VJ 0f 01> <addr 10.143.226.67> <ms-dns1 80.251.192.244> <ms-dns3 80.251.192.245>]
Could not determine remote IP address: defaulting to 10.64.64.64
Cannot determine ethernet address for proxy ARP
local  IP address 10.143.226.67
remote IP address 10.64.64.64
primary  DNS address 80.251.192.244
secondary DNS address 80.251.192.245

Ser fint ut. Testa att pinga nånstans:

root@mamba# ping ftp.sunet.se
PING ftp.sunet.se (194.71.11.69) 56(84) bytes of data.
64 bytes from 194.71.11.69: icmp_seq=1 ttl=53 time=183 ms
64 bytes from 194.71.11.69: icmp_seq=2 ttl=53 time=183 ms
64 bytes from 194.71.11.69: icmp_seq=3 ttl=53 time=180 ms

Funkar ju asbra!

Nu har du en fungerande uppkoppling till internet via bluetooth till din mobiltelefon.

För att stänga av uppkopplingen, döda pppd-processen. Jag gjorde ett script som gör det:

root@mamba# vim poff

#!/bin/sh
PPPD=`pidof pppd`

kill -9 $PPPD

exit 0

root@mamba# chmod +x poff
root@mamba# ./poff
root@mamba# pidof pppd
root@mamba#

/Andreas

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 22 maj 2007, 17:58
av Okänd
Hej igen Andreas!

Har du lust att lägga in den här i vår prov- och testwiki ?
I så fall kolla du läget här:

http://ubuntu-se.org/mediawiki

Vi testa media-wikin just nu istället för den gamla som vi har här....

/Peter

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 22 maj 2007, 19:31
av vox2000
Little John skrev: Hej igen Andreas!

Har du lust att lägga in den här i vår prov- och testwiki ?
I så fall kolla du läget här:

http://ubuntu-se.org/mediawiki

Vi testa media-wikin just nu istället för den gamla som vi har här....

/Peter
Jag gjorde det, men formateringen blir knasig i wikin, och jag hinner inte böka med radbrytningarna nu. Gör det pö om pö, men andra får också hjälpa till.

Ligger under Kategori:Internet

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 22 maj 2007, 19:49
av Okänd
OKI! Ska kolla läget.
Hälsningar
Peter

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 14 jun 2007, 00:52
av mattematte
hmm jag får inte mitt att funka, Har en SE K800 med telenor abonnemang. Jag ser att jag får ip å allt men kan imte surfa. Nån som har nått förslag??

//Mattias

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 28 jun 2007, 10:07
av HenrikAn
Ha!
Jag har en m600i med Telia-abonnemang.
Det enda jag behövde ändra (förutom macadresser och sånt) var i /etc/chatscripts/ där teliamotsvarigheten till data.tre.se är online.telia.se!

Tack!

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 26 jul 2007, 21:21
av Pinky
Jag har en SE W880i, från tre, med tre-abbonemang såklart. Jag följde din guide till punkt och pricka (nåja, någonstans måste jag ju ha missat något :S). Min telefon använder sig av kanal 2 istället för 7 som din, men det var ju inga problem.
Allt funkar fint, och att ansluta med rfcomm connect 0 funkade perfekt. Sen kom jag tills det var dags att skriva pon tre (mina script heter också tre, för enkelhetens skull). Då får jag följande:

pinky@pinky-laptop:/etc/chatscripts$ pon tre
/usr/sbin/pppd: In file /etc/ppp/peers/tre: unrecognized option '/dev/rfcomm0'

Hjälp?  ???

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 27 jul 2007, 13:20
av Christian Johansson
Jag har visserligen inte gått hela vägen när det gäller denna guide men jag såg i alla fall att när jag öppnade /etc/bluetooth/rfcomm.conf så var alla raderna bortkommenterade (började med #). Har du tagit bort #-tecknen där, Pinky, när du ändrade i filen?

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 29 jul 2007, 20:44
av Pinky
Den var inte kommenterad hos mig. Den ser ut såhär:

Kod: Markera allt

#
# RFCOMM configuration file.
#

#rfcomm0 {
#	# Automatically bind the device at startup
#	bind no;
#
#	# Bluetooth address of the device
#	device 11:22:33:44:55:66;
#
#	# RFCOMM channel for the connection
#	channel	1;
#
#	# Description of the connection
#	comment "Example Bluetooth device";
#}
rfcomm0 {
	bind yes;
	device 00:1A:75:F6:FE:9A;
	channel 2;
	comment "Pinky";
}
EDIT: Dessutom så funkade det ju att köra "rfcomm connect 0", så den biten funkar ju  :-\

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 29 jul 2007, 21:31
av Pinky
Ähm, googlade lite på problemet, och det visade sig att rfcomm0 skapas först när man startar om burken, vilket jag inte hade gjort. Så nu vet jag det iaf :P

Från det att man startar scriptet tills anslutningen kommer igång går det en ganska bra stund ( ~1-2 min).
Sen kom nästa problem:

pinky@pinky-laptop:~$ ping <a class="postlink" href="http://www.google.com">http://www.google.com</a>
ping: unknown host <a class="postlink" href="http://www.google.com">http://www.google.com</a>
pinky@pinky-laptop:~$ ping ftp.sunet.se
ping: unknown host ftp.sunet.se

Nada kontakt med någonting :S

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 01 aug 2007, 10:45
av Pinky
Jaha, lite mysko är det, men nu finkar det helt plötsligt :D Wihaa!

Skaffade genast ett tillägg för datatrafik till mitt abbonemang. Och inte behöver jag skaffa nåt jiddra usb-modem som de försöker prångla på mig heller! :D

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 11 aug 2007, 14:28
av Christian Johansson
Jag får det inte att fungera. När jag skriver "sudo rfcomm connect 0" får jag upp text på telefonen om att någon önskar använda telefonen som modem och en fråga om jag vill lägga till enheten till mina enheter. Sedan ska jag knappa in en sifferkod på telefonen. Jag skriver "1234" eftersom det är den koden som jag har som passkey i /etc/bluetooth/hcid.conf. Det fungerar dock inte.

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 12 aug 2007, 10:18
av Pinky
Är det när du knappat in koden som det inte fungerar? Eller ansluter den, men det går itne att surfa? Hur långt kommer du?

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 12 aug 2007, 10:41
av Christian Johansson
Pinky skrev: Är det när du knappat in koden som det inte fungerar? Eller ansluter den, men det går itne att surfa? Hur långt kommer du?
Det är när jag knappat in koden som det inte fungerar. På mobiltelefonen får jag meddelande om att anslutningen misslyckades och i terminalfönstret får jag följande felmeddelande:

Kod: Markera allt

Can't connect RFCOMM socket: Connection refused

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 12 aug 2007, 10:46
av Pinky
Skummt.. Dubbelkollat pin-koden? Prova att byta till något annat, annars vet jag inte.

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 12 aug 2007, 12:01
av Erik Andrén
Det finns planet på att integrera surfning via mobiltelefon i networkmanager. När det läggs till så kommer man förhoppningsvis slippa hacka i alla dessar conf filer för att få allt att fungera.

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 12 aug 2007, 14:32
av Christian Johansson
Pinky skrev: Skummt.. Dubbelkollat pin-koden? Prova att byta till något annat, annars vet jag inte.
Ja, jag har dubbelkollat PIN-koden och provat att byta till "0000" också men det hjälpte inte. Jag får kanske ge upp detta och nöja mig med fast uppkoppling :( . Tack i alla fall för hjälpen.

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 12 aug 2007, 14:43
av Christian Johansson
Jippiii! Jag provade att koppla upp i motsatt riktning första gången, d.v.s. från mobiltelefonen till datorn (liksom det anges att man ska göra i en annan HOWTO-tråd på detta forum). Då fungerade PIN-koden. Efter det kan jag ansluta med "sudo rfcomm connect 0" utan problem. Jag har dock inte gått vidare till PPP-delen av guiden ännu men detta är i alla fall ett bra steg på vägen.

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 29 aug 2007, 10:30
av HellRat
Jag har samma problem som du Christian, vilken HOWTO syftar du på?

SV: Mobilt bredband med SE m600i via bluetooth

Postat: 29 aug 2007, 10:59
av Christian Johansson
HellRat skrev: Jag har samma problem som du Christian, vilken HOWTO syftar du på?
Jag syftar på följande HOWTO: http://ubuntu-se.org/smf/index.php/topic,9172.0.html