Kérkel segíts, hogy ne maradjon hibás információ az oldalon!
Ha szerinted valami nem fedi a valóságot, kérlek írd meg, hogy javítani tudjam. Ha kérdésed van, fordulj hozzám bizalommal!

2008. április 10., csütörtök

Samsung D900i Linux alatt

Pár napja játszadozom a D900i telefonommal és nagyon nem tetszik, hogy csak windows alatt lehet (nagy nehezen) java alkalmazásokat áttölteni. Úgy döntöttem, hogy picit beleásom magam dolgok hátterébe, talán...

PPPOE:
Gyorsan rá is kerestem, hogy mi kell a pppoe kapcsolat felépítéséhez. A kernel beállításokat nem is taglalnám, úgyis fent van google-n :), a lényeg, hogy létre kell hozni a pppoe device-t, valahol talán a networking kategórián belül jelölgetve.
A nagy áttörést a Palm PPP over USB (http://www.palovick.com/palm/palm-ppp-usb.php) oldal hozta. A script egyszerű, érthető és könnyen használható.

A telefonba a *#52828378# -et beütve bejutunk egy szerviz menübe. (Tipp: ha a telefonnal kapott firmwaret használod és a bevitelt a szép tollas módon teszi a telefon, a * beütése után várd meg, amíg mozog a toll, különben lehetséges, hogy a teló érzéketlen lesz a kódra!) Itt az OTA type settings-en (2. menüpont) belül válasszuk a Serial bearer OTA beállítást. Majd ezt mentve menjünk vissza és a 3.-ik Seerial Test menüponton belül válasszuk az 1. PPP fel menüpontot és ezen belül az USB-t vagy a bluetooth-t. Eddig majdnem (a PPP-n kívül) ugyan így megy windows alatt is. A lényeg most jön, még nem tudom, hogy működni fog-e.

Egyszerű tcp sniffer segítségével (pl. Ultra Network Sniffer) kiderítettem, hogy a Java Uploader v1.1 egy, a 888-as porton csücsülő, webserver, ami nem csinál mást, mint fogadja a telefontól a http requestet egy getNextApp.jad fájlra és elküldi neki. Lássuk, sikerül-e leutánozni.

Thttpd
Azért esett erre a webserverre a választásom, mert pici és ez volt az első, amit a google kidobott :).
Annyiban megviccelt a dolog, hogy hiába hozott létre /etc/thttpd könyvtárt és benne a thttpd.conf fájlt, mégis a gentoo-s config fájlok között van a config, amit valójában használ (/etc/conf.d/thttpd). Nem sok dolgunk van, csak át kell írni a portot 8080-ról 888-ra.
Ezután létrehozzunk a (default) /var/www/localhost könyvtáron belül a test könyvtárt. Belemásoltam egy .jad fájlt átnevezve getNextApp.jad-nak és a hozzá tartozó .jar fájlt (nem kell átnevezni!).
Újraindítjuk a servert:
# /etc/init.d/thttpd restart

A server futásáról egy webböngésző segítségével, a címbe a 127.0.0.1:888-at írva győződhetünk meg.

Jöhet a mehet! :)
Nnna, most, hogy íly jól eljátszadoztunk, ugorjon a maki a vízbe! Én kékfogat fogok használni, mert tegnap ezzel sikerült jobban megismerkedni.
A telefon már párosítva lett, ezzel most itt nem foglalkoznék, sem a kernel modulokkal.
Egyik ilyen modul az rfcomm modul, gyorsan betöltjük:
#modprobe rfcomm

Miután az sdptool segítségével megtudtuk, hogy a telefon Serial Service-e a 2-es csatornán van és felkonfiguráltuk az rfcomm-ot, csatlakozunk:
#rfcomm connect 0

( Ehhez az rfcomm config fájl: /etc/bluetooth/rfcomm
#
# RFCOMM configuration file.
#

rfcomm1 {
# # Automatically bind the device at startup
bind no;
#
# # Bluetooth address of the device
# IDE PERSZE A SAJÁT MAC-ET KELL ÍRNI (a telefonét,
# amihez csatlakozni akarsz
device 00:1E:E1:E5:02:AA;
#
# RFCOMM channel for the connection
# SDPTOOL segítségével kell meghatározni
channel 6;
#
# # Description of the connection
comment "Obex file transfer";
}

rfcomm0 {
# # Automatically bind the device at startup
bind no;
#
# # Bluetooth address of the device

device 00:1E:E1:E5:02:AA;
#
# RFCOMM channel for the connection
channel 2;
#
# # Description of the connection
comment "Serial Service";
}

)

A telefon megkérdezi, hogy akarjuk-e, persze.
Ráeresztjük a ppp scriptet az eszközre.
Egyenlőre nem valami tökéj... De azt már észrevettem, hogy valójában a thttpd-nek a conf.d-és fájljában kell megadni, hogy a thttpd-s könyvtárban levőt használja.

Teszteltem USB-vel is. Sima ügy: a ppp scriptben az eszközt át kell írni /dev/ttyACM0-ra és meg is.

Sajna, ezt így kell befejeznem, semmi többre nem jutottam, egyszerűen nem jut el a kérés a serverig :( Lehet, hogy a probléma a pppd-vel van, nem tudom. De lesz még folytatás!

Nincsenek megjegyzések: