Menu Chiudi

Debian + Bluetooth Palladio 3com + nokia7650

di imu

debian + palladio + nokia7650

Questa mia piccola guida e’ orientata al trasferimento di file via bluetooth da linux al telefono e viceversa, non trattero’ gprs perche’ non lo uso, nel caso il vostro interesse sia quello della connessione gprs date uno sguardo all’ ottima guida di AAAle.

Controllate innanzitutto che il vostro adattatore bluetooth sia compatibile con linux prima di comprarlo e magari anche dopo se siete fortunati a questo link –>http://www.holtmann.org/linux/bluetooth/devices.html

Iniziamo con la messa a punto del kernel molto importante per il corretto funzionamento di tutto il sistema, ricordate che per la release 2.4 dovrete mettervi delle patch che trovate a quest’altro link —> http://www.holtmann.org/linux/kernel/ io parlero’ della release 2.6 che dovrebbe essere esente da patch, ma non posso dirvelo con certezza perche’ io uso i kernel-source di Debian-SID voi cercate con google !!!

Nel caso abbiate la release 2.4 scaricate la patch esempio “patch-2.4.25-mh3.gz” che significa sto nome? Allora significa —> patch-(versione_del_kernel)-mh(numero_di_release_patch).gz questo significa che dovrete prendere la patch per il vostro kernel (versione_del_kernel) e con il numero piu’ alto di release patch perche incorpora miglioramenti.

Come la installiamo, mi verrebbe spontaneo dirvi di leggere il kernel-howto ma oggi saro’ buono :P allora scaricate da root mettete i sorgenti in /usr/src/ avrete dunque /usr/src/linux-2.4.5.bz2 a questo punto decomprimeteli vi mostro i passaggi :

$: mv dove_sta_salvato_il_kernel/linux-2.4.25.tar.bz2 /usr/src
$: cd /usr/src <---- ci spostiamo in /usr/src
$: tar xvjf linux-2.4.25.tar.bz2  <----decomprimiamo
$: ln -s linux-2.4.25 linux  <---- facciamo un link simbolico
$: cd linux    <---- entriamo nel link
$: zcat dove_sta_la_patch/patch- 2.4.25-mh3.gz | patch -p1 <---- la patch
$: make mrproper   <---- puliamo i sorgenti
$: make menuconfig   <---- configuriamo il nostro kernel

Ora vi faro vedere solo la sezione dedicata al nostro bluetooth se no avrei chiamato questa guida kernel-hownto :) andiamo nella sezione ” Device Drivers —> ” poi in ” Networking support —> ” Bluetooth support —>” e settiamo tutto come segue:

Poi spostiamoci in ” Bluetooth device drivers —> ” e settiamo ancora come segue:

A questo pure siete ok avete abilitato tutto !!! Questo serve non solo per il trasferimento file ma anche per il gprs ;) per chi ha l’adattatore bluetooth su usb come me DEVE STARE ATTENTO A NON ABILITARLO PRIMA IN ” USB support —>” MA DEVE FARLO QUI POI ANDANDO NELLA SEZIONE ” USB support —>”NOTERA’ CHE a’ DISABILITATO COME DA FIGURA:

PENA… BLOCCO DI SISTEMA! SIETE STATI AVVERTITI LASCIATE STARE IL SUPPORTO BLUETOOTH IN “USB support —>

Bene torniamo a noi configurate tutto il kernel a vostro paicimento e salvate !!! Poi date gli ultimi comandi:

$: make clean && make dep && make bzImage && make modules && make modules_install

A questo punto avete il vostro bel kernel installatelo e riavviate lilo !!! Spero che nessuno mi chieda come fare -_-

Per la serie 2.6 canbia solo il fatto che non dovete applicare la patch e naturalmente cambiano i comandi per ricompilare il kernel tutto si riduce a:

$: make && make modules_install

installatelo e riavviate lilo

Piccola nota per chi ama debian facciamoci un kernel alla nostra :) potete dare una lettura quiFAQ di DEBIAN oppure cercare con Google “kernel debian way”

$: apt-get update
$: apt-get install kernel-package module-init-tools kernel-source-2.6.4
$: cd /usr/src
$: tar xvjf kernel-source-2.6.4.tar.bz2
$: ln -s kernel-source-2.6.4 linux && cd linux
$:  make mrproper && make menuconfig

### Seguire quanto detto sopra per settare il bluetooth###

$: make-kpkg clean && make-kpkg kernel_image

### piccola nota se usate dei sorces di moduli tipo nvidia lirc pcmcia eseguire dopo”make-kpkg kernel_image modules_images”###

ora installiamo i nostri pacchetti:

$: dpkg -i kernel_image-2.6.4-xxxxx.deb ed eventualmente moduli

seguiamo le indicazioni del tools che vi chiederanno prima se volete fare un dischetto di boot ( io rispondo sempre no ) poi vi chiedera’ se volete usare il lilo.conf per l’installazione del kernel E LI’ DOVETE DIRE SI! poi date un bel riavvio alla macchina

appena riavviato con il nuovo kernel e tutto e’ ok installiamo i pacchetti necessari

$: apt-get install bluez-utils bluez-sdp bluez-hcidump obexserver

scarichiamoci questo pacchetto e installiamoloussp-push a questo punto ci siamo quasi inseriamo il nostro adattatore bluetooth e vediamo se esiste agli occhi del sistema di regola avrete i bluez-utils e bluez-sdp gia avviati io per comodita’ li avvio a mano avendo rimosso i link dagli script di init in questo modo:

root# update-rc.d -f bluez-utils remove && update-rc.d -f bluez-sdp remove

quindi li avvio ogni volta come di seguito:

$: /etc/init.d/bluez-utils start
Starting bluez-utils: hcid rfcomm.
$: /etc/init.d/bluez-dsp start - questo potete farlo anche da user ;)
Starting bluez-sdp: sdpd.

### Ora prima di continuare dobbiamo configurare i bluez-utils per associare il cell al pc ###

Facciamo uno scan e vediamo di trovare il MAC address del nostro telefono per associarlo ad una RFCOMM del pc, vi spiego in poche parole noi avremo una volta avviati i bluez-utils “hcid ” che e’ il demone per la connessione usb via bluetooth ed rfcomm che ci creera’ i device che abbiamo bisogno ( fino a 256 )che assoceremo al MAC address del nostro cellulare.Vediamo come trovare sto benedetto indirizzo MAC, useremo i sdptool—> man sdptool oppure sdptool –help

$: sdptool browse
Inquiring...

Browsing 00:02:EE:82:88:36    <----- ECCOLO QUI
Service Name:Fax     <----- Occhio a servizi
Service RecHandle: 0x10000
Service Class ID List:
"Fax" (0x1111)
"Generic Telephony" (0x1204)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1 <---- ed occhio ai canali
Profile Descriptor List:
"Fax" (0x1111)
Version: 0x0100
Service Name: Dial-up Networking   <--- Questa e' per il GPRS se notate e'
       uguale a quella del fax logico non vi spiego
       perche'!
Service RecHandle: 0x10001
Service Class ID List:
"Dialup Networking" (0x1103)
"Generic Networking" (0x1201)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 1
Profile Descriptor List:
"Dialup Networking" (0x1103)
Version: 0x0100
Service Name:Bluetooth Serial Port   <--- Questo abilita' la rfcommi ma noi
         non la useremo  quindi non fatevi illusioni
         di aver gia' capito :)
Service RecHandle: 0x10002
Service Class ID List:
"Serial Port" (0x1101)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 2
Language Base Attr List:
code_ISO639: 0x656e
encoding:    0x6a
base_offset: 0x100

Service Name:OBEX Object Push    <---  Questa ancora non ho capito ci sto
     studiando ... vi faro sapere!
Service RecHandle: 0x10003
Service Class ID List:
"OBEX Object Push" (0x1105)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 9
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX Object Push" (0x1105)
Version: 0x0100

Service Name: OBEX File Transfer   <---Finalmente eccolo e' il canale che ci
       serviva USEREMO QUESTO
Service RecHandle: 0x10005
Service Class ID List:
"OBEX File Transfer" (0x1106)
Protocol Descriptor List:
"L2CAP" (0x0100)
"RFCOMM" (0x0003)
Channel: 10
"OBEX" (0x0008)
Profile Descriptor List:
"OBEX File Transfer" (0x1106)
Version: 0x0100

### Ora non ci resta che editare il file /etc/bluetooth/rfcomm.conf come segue ###

root# vim /etc/bluetooth/rfcomm.conf   <--- qualsiasi editor io ho usato
           vim voi quello che volete ;)
#
# RFCOMM configuration file.
#
# $Id: rfcomm.conf,v 1.1 2002/10/07 05:58:18 maxk Exp $
#

# example:
#
rfcomm0 {
bind yes;
#       # Bluetooth address of the device
device 00:02:EE:82:88:36;
#       # RFCOMM channel for the connection
channel 10;
#       # Description of the connection
comment "Nokia7650";
}

~

"/etc/bluetooth/rfcomm.conf"         17L,313C

### attenzione cosi’ facendo abbiamo occupato la rfcomm0 per il trasferimento file, questa nota e’ per chi vuole avere all’avvio abilitate automaticamente sia il trasferimento file che il gprs se volete potete usare la rfcomm1 sul canale 1 per questo telefono, lo schema e’ uguale cambiate solo ” rfcomm1″ ed il canale “channel 1” ;) ###

perfetto salviamo e diamo i comandi di prima:

$: /etc/init.d/bluez-utils start
Starting bluez-utils: hcid rfcomm.

root# /etc/init.d/bluez-sdp start
Starting bluez-sdp: sdpd.

Il piu’ e’ fatto controlliamo con questo comando basta dare rfcomm senza argomenti

root#rfcomm
rfcomm0: 00:02:EE:82:88:36 channel 10 clean

A questo punto felicitatevi per l’ottimo lavoro ;) Piccola nota nel file /etc/bluetooth/pin controllate che ci sia un pin

$: cat /etc/bluetooth/pin
$: 1234 Altrimenti mettetecelo
$: echo "1234" > /etc/bluetooth/pin

### Ora attivate il bluetooth sul cellulare come segue ed abilitiamo il pc a ricevere e trasferire file ###

Menu —> Connettivita’ —-> Bluetooth —-> Attiva

<—attiviamo il bluetooth

<—cerchiamo i disposistivi

<—troviamo il nostro nome quello del localhostcon lo zero cioe’ il primo dispositivo

<—proviamo a collegarci

<—ci chiede il codice che deve essere uguale a quello nel pc

<—inseriamo il codice che di default e’ 1234

<—verifica codice

connessione complatata <—perfetto siamo collegati

Perfetto ora ritorniamo user e vai trasferiamo tutto quello che ci va useremo ” obexserver ” per traferire dal telefono a linux e “ussp-push” per il contrario, procediamo:

Innanzitutto diamo man obexserver quello che uscira’ sara’ la soluzione riporto in breve il man

user$ man obexserver

OK reso l’idea! ogni volta che avviate bluez-sdp dovete dare questo comando:

user$ sdptool add --channel=10 OPUSH
OBEX Object Push service registered

### Trasferiamo i file dal tel al pc occhio che li mette in /tmp leggete l’ultima riga del man :) ###

user$ obexserver  <--- lanciamo il comando
Waiting for connection... <--- pronto a ricevere

### Ora dal telefono scegliamo cosa inviare, anche file multipli basta selezionare e poi dare invia via bluethoot e scegliere i dispositivo ###

scegli immagine<—-scegliamo le foto o i file e li selezioniamo nel caso siamo molti

scegli tipo invio <—-scegliamo di inviarli via bluetooth

invio in corso <—-invio in corso

inviati <—questa parla da sola non commento :)

Ora torniamo al nostro pc eravamo rimasti che avevamo lanciato obexserver ora vediamo cosa succede

user$: obexserver
Waiting for connection...

.......HEADER_LENGTH = 6879
put_done() Skipped header 42
put_done() Skipped header 44
Filename = 11.jpg
Wrote /tmp/11.jpg (6879 bytes)

Be che ne dite il file e’ arrivato :) ora fatene quello che volete!

### Passiamo al trasferimento file dal pc al telefono usiamo ussp-push ###

Naturalmente stessa storia i dispositivi connessi i server avviati etc da user lanciamo ussp-push! Per prima cosa vediamo come si usa siccome e’ piccolo non ha il man ma basta dare ” ussp-push -h ” per avere le spiegazioni

user$: ussp-push -h
Usage:  ussp-push <rfcomm tty device> <local file><remote name>

Bene semplice bisogna lanciarlo con la rfcoom usata nel nostro caso la 0 nome_del_file_da_inviare come_lo_si_vuole_chiamare_sul_telefono

### PROCEDIAMO ###

user$: ussp-push /dev/rfcomm0 debian.jpg debian.jpg <--- io li richiamo uguali
          poi fate voi !!!ora vediamo
          cosa succede qui poi vi
          illustro sul cell .
pushing file Debian.jpg
name=Debian.jpg, size=49797
Registered transport
set user data
created new objext
Wrote 7 fragmentWrote 7 bytes (expected 7)
started a new request
expect 7 bytesRead 7 bytesreqdone
Command (00) has now finished, rsp: 20Connected!
Connection return code: 0, id: 0
Connection established
connected to server
Sending file: Debian.jpg, path: Debian.jpg, size: 49797
Wrote 1024 fragmentWrote 1024 bytes (expected 1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 1024 fragmentWrote 1024 bytes (expected
1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 1024 fragmentWrote 1024 bytes (expected
1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 1024 fragmentWrote 1024 bytes (expected
1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 1024 fragmentWrote 1024 bytes (expected
1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 1024 fragmentWrote 1024 bytes (expected
1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 1024 fragmentWrote 1024 bytes (expected
1024)Made some progress...
expect 3 bytesRead 3 bytesWrote 969 fragmentWrote 969 bytes (expected
969)expect 3 bytesRead 3 bytesreqdone
Command (02) has now finished, rsp: 20Wrote 3 fragmentWrote 3 bytes (expected
3)Connection terminated.Error while doing OBEX_HandleInput()pushed!!

user$:

Vi rida’ il prompt e la foto e’ stata inviata

Ora vediamo sul telefono che succede:

<—richiesta connessione

<—notate una volta accettato appare la letterina

<—eccolo il nostro sfondo modificato con gimp ;) per il nostro nokia che poi e’ quello di su!

Finisce qui la nostra avventura ma prima di lasciarvi i consueti link e saluti ultima nota carina per avere piu’ comodo ussp-push io ho fatto cosi’ mi sono creato uno script semplice vi pasto di seguito:

#!/bin/bash
##
ussp-push /dev/rfcomm0 $1 $1

editatelo in un file io lo uso da user usando nel PATH /home/user/bin ma voi potete farlo da root una volta creato dategli i permessi di eseguzione e mettetelo nel PATH di sistema l’ho chiamato ” invia ” quindi invece di dare tutta la pappardella do soltanto:

user$  invia  nome_file

ed il gioco e’ fatto ;) Ciao alla prossima

Per qualsiasi problema mi trovate su IRC.AZZURRA.ORG nel canale #linux-help…

Link Utili

questo qui sotto li contiene tutti good luck:

http://www.holtmann.org/linux/bluetooth/

BY ANTONIO DE LUCI

Navigare con Linux e un cellulare Bluetooth

di AAAle

NB: la guida è stata scritta per gentoo, ma ovviamente si applica a tutte le distro linux [r,d]ecenti (N.d.R.)aggiornata il 09/06/2006
scritta il 17/11/2004

Lo scopo di questo tutorial è navigare in internet sfruttando le potenzialità della linea GPRS (o UMTS) trasformando il nostro cellulare in un modem senza fili che andrà ad interagire col computer per mezzo della connessione bluetooth

COMPILAZIONE KERNEL

Iniziamo questa lunga avventura compilando il kernel (nel mio caso e’ un 2.6.x su gentoo) predisponendolo per l’interazione con la penna USB e lo stack bluez:

Andiamo nella directory dei nostri sorgenti del kernel e digitiamo “make menuconfig”

Alla voce “Networking –> Bluetooth Subsystem Support” selezioniamo i moduli come disegnato di seguito:

Access Media FastRate USB 100 con Linux! (II parte)

Patchare e installare i driver

1) Prerequisiti

Prima ancora di pensare ai drivers installiamo alcuni prerequisiti:

per Mandrake 10 e superiori, basta dare (da root):

$: urpmi liblinux-atm1 kernel-source gcc libgtk+1.2-devel

PS: nelle varie versioni di mandrake questo pacchetto ha nomi diversi o sembra comunque introvabile… io non ho mandrake per cui vi chiedo di segnalare il nome del pacchetto nelle varie versioni. grazie!

Per gli utenti Fedora Core 2 e 3 mi e’ arrivato un suggerimento da Michele Reccanello:…vanno sostituiti i pacchetti glibc-kernheaders e linux-atm con quelli attualmente in sviluppo con la Fedora Core 4, dal sito :
http://download.fedora.redhat.com/pub/fedora/linux/core/development/SRPMS/

Access Media FastRate USB 100 con Linux! (I parte)

OK alcune persone sono riuscite a connettersi ad Internet grazie a queste righe e ho avuto un riscontro incredibile da parte della comunità, ma oggi ho deciso di disinteressarmi definitivamente a queste pagine: anche volendo non ho più questo modem ormai da molto tempo e non potrei stare al passo con le nuove versioni di kernel e driver.

Per questo vi chiedo di NON spedire email al mio indirizzo e di NON entrare in canale per chiedermi di risolvere i vostri problemi col fastrate, me ne arrivano decine e sinceramente non mi va di ripetere ogni volta le stesse cose che sono gia’ scritte nella guida… Ovviamente potete sempre segnalare nuove notizie che potrebbero essere utili, quelle continuerò ad integrarle. Grazie :-)

L’unica cosa che posso chiedervi di fare è di mandare una mail alla Telecom chiedendo di essere rispettati come utenti che pagano un servizio, e assicuratevi che vi sia fornito un modem ethernet (quindi NON usb)

Audio Professionale con Linux (III parte)

La prima “killer application” – Ardour
Gli americani hanno questo modo di chiamare una applicazione che nel suo campo “uccide” la concorrenza per la sua eccellenza in un determinato segmento, tanto da convincere un utente al passaggio ad una piattaforma differente pur di usare quel software, ad esempio.
Ardour EditorSe mai questo concetto possa essere applicato ad una applicazione linux in un ambito diverso da quello server o di sviluppo, Ardour sarebbe sicuramente la prima “killer application”. Ha tutte le carte in regola per esserlo: nonostante sia in stato di beta e’ abbastanza stabile, supporta tutti gli standard che col tempo si sono affermati nell’audio digitale, e’ sempre piu’ semplice ed efficace da usare, segue uno sviluppo aperto e sulle ML ogni critica o consiglio da parte dei beta testers e’ sempre ben accetto ed ascoltato. Non vorrei essere troppo scontato, ma ardour e’ ovviamente software libero, quindi gratis, quindi GPL, quindi liberamente estensibilie e modificabile da chiunque.

Audio Professionale con Linux (II parte)

IL server audio professionale per linux – Jack
Abbiamo dunque accennato al fatto che la modalita’ “full duplex”, cioe’ la capacita’ di registrare ed ascoltare allo stesso tempo utilizzando una sola scheda audio, fosse in realta’ una cosa possibile anche utilizzando i vecchi OSS, grazie ad alcuni software chiamati “sound servers”. Un sound server e’ quel software che cerca di sopperire alle mancanze in kernel space, cercando di gestire in user space l’uso e l’accesso a dispositivi audio. Vediamo quali sono i principali sound servers e in cosa Jack si differenzia dagli altri, e perche’ e’ definito sound server professionale.

Audio Professionale con Linux (I parte)

E’ da tanto che ho voglia di scrivere qualcosa sull’enorme progresso che ha compiuto, e che sta tuttora compiendo il nostro sistema operativo preferito come piattaforma Audio. Con l’inclusione dell’Advanced Linux Sound Architecture (ALSA) nel kernel 2.6, credo che sia finalmente arrivato il momento di mettermi all’opera e farvi partecipi delle mie esperienze.
Scrivo di getto, come mio solito, e un po’ per chiarirmi le idee, un po’ per ordine, voglio esporre di cosa intendo trattare, chiarendo subito che non sto scrivendo un aiuto all’installazione o alla configurazione di software o hardware, e che non e’ assolutamente una lista completa, ne’ rappresentativa dell’intero e vasto panorama Audio su Linux:

Vai alla barra degli strumenti