Informazioni sul collegamento di un dispositivo PalmOS ad un sistema Debian tramite Bluetooth. Si noti che la maggior parte di questo materiale è stato copiato spudoratamente da qui.
Configurazione di una connessione Bluetooth
Su un sistema Debian
La prima fase di questo processo è la configurazione di una connessione Bluetooth tra il sistema Debian e il dispositivo PalmOS; una volta finito si otterrà una connessione PPP tra i due sistemi, si dà per scontato che il Bluetooth sia già installato, le istruzioni per farlo sono su questa pagina.
Nel giugno del 2009, i demoni necessari sono stati rimossi dal pacchetto bluetooth e spostati in bluez-compat. Quindi installarlo:
aptitude install bluez-compat ppp
Configurare DUN
Assicurarsi che DUN (Dial Up Networking) sia abilitato in /etc/default/bluetooth:
DUND_ENABLED=1
Impostare le opzioni in questo modo:
DUND_OPTIONS="--listen --persist --msdun call palmdevice
palmdevice è un nome arbitrario, creare un file corrispondente chiamato /etc/ppp/peers/palmdevice contenente le seguenti informazioni:
115200 10.0.1.8:10.0.1.40 local ms-dns <indirizzo IP del server DNS> noauth debug
Al posto di quella fornito nell'esempio si può naturalmente utilizzare qualsiasi schema di indirizzamento di IP privato, ms-dns dovrebbe essere impostato sui nomi dei server DNS, o 127.0.0.1 se si dispone di un DNS locale o non sia richiesta alcuna risoluzione di nomi.
Poiché il programma dund è stato rimosso dal pacchetto bluetooth principale, bisogna avviarselo da soli: non viene avviato dallo script /etc/init.d/bluetooth. Aggiungere le seguenti righe al file /etc/rc.local:
test -f /etc/default/bluetooth && . /etc/default/bluetooth [ "$HIDD_ENABLED" -eq 1 ] && /usr/bin/hidd $HIDD_OPTIONS [ "$PAND_ENABLED" -eq 1 ] && /usr/bin/pand $PAND_OPTIONS [ "$DUND_ENABLED" -eq 1 ] && /usr/bin/dund $DUND_OPTIONS
Provare il collegamento
Si suppone che i dispositivi siano già stati associati, in caso contrario si seguano i collegamenti a inizio pagina. Avviare quindi manualmente il server dund (come root):
$ sudo dund --nodetach --listen --persist --msdun call palmdevice
Il "- nodetach" significa che dund rimarrà in primo piano in modo da poter monitorare la connessione, premere Ctrl-C quando si vuole chiuderlo.
Avviare una sincronizzazione di dati sul Palm con la connessione del modem configurata (come da link a inizio pagina), se tutto è andato bene si dovrebbe vedere il Palm passare con successo attraverso il suo processo di collegamento e si vedrà un messaggio come questo sulla riga di comando:
dund[7252]: Bluetooth DUN daemon version 4.42 dund[7277]: New connection from -Palm MAC Address- using channel 1 Using interface ppp0 Connect: ppp0 <--> /dev/rfcomm0 sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x1feeedf7> <pcomp> <accomp>] rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x1feeedf7> <pcomp> <accomp>] sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x1feeedf7> <pcomp> <accomp>] rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x1feeedf7> <pcomp> <accomp>] rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <pcomp> <accomp>] sent [LCP ConfAck id=0x2 <asyncmap 0x0> <pcomp> <accomp>] sent [LCP EchoReq id=0x0 magic=0x1feeedf7] sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>] sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 10.0.1.8>] rcvd [LCP EchoRep id=0x0 magic=0x0] rcvd [IPCP ConfReq id=0x1 <addr 0.0.0.0> <compress VJ 0f 01> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>] sent [IPCP ConfNak id=0x1 <addr 10.0.1.40> <ms-dns1 192.168.1.1> <ms-dns3 192.168.1.1>] rcvd [LCP ProtRej id=0x3 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 ConfAck id=0x1 <compress VJ 0f 01> <addr 10.0.1.8>] rcvd [IPCP ConfReq id=0x2 <addr 10.0.1.40> <compress VJ 0f 01> <ms-dns1 192.168.1.1> <ms-dns3 192.168.1.1>] sent [IPCP ConfAck id=0x2 <addr 10.0.1.40> <compress VJ 0f 01> <ms-dns1 192.168.1.1> <ms-dns3 192.168.1.1>] Cannot determine ethernet address for proxy ARP local IP address 10.0.1.8 remote IP address 10.0.1.40 Script /etc/ppp/ip-up started (pid 7304) Script /etc/ppp/ip-up finished (pid 7304), status = 0x0 rcvd [IPCP TermReq id=0x3] IPCP terminated by peer Connect time 0.7 minutes. Sent 40 bytes, received 52 bytes. Script /etc/ppp/ip-down started (pid 7335) sent [IPCP TermAck id=0x3] Script /etc/ppp/ip-down finished (pid 7335), status = 0x0 rcvd [LCP TermReq id=0x4] LCP terminated by peer sent [LCP TermAck id=0x4] Hangup (SIGHUP) Modem hangup Connection terminated. dund[7360]: New connection from 00:1D:FE:2D:3B:3B using channel 2 Using interface ppp0 Connect: ppp0 <--> /dev/rfcomm0 sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x78b8c2b5> <pcomp> <accomp>] rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x78b8c2b5> <pcomp> <accomp>] sent [LCP ConfReq id=0x1 <asyncmap 0x0> <magic 0x78b8c2b5> <pcomp> <accomp>] rcvd [LCP ConfAck id=0x1 <asyncmap 0x0> <magic 0x78b8c2b5> <pcomp> <accomp>] rcvd [LCP ConfReq id=0x2 <asyncmap 0x0> <pcomp> <accomp>] sent [LCP ConfAck id=0x2 <asyncmap 0x0> <pcomp> <accomp>] sent [LCP EchoReq id=0x0 magic=0x78b8c2b5] sent [CCP ConfReq id=0x1 <deflate 15> <deflate(old#) 15> <bsd v1 15>] sent [IPCP ConfReq id=0x1 <compress VJ 0f 01> <addr 10.0.1.8>] rcvd [LCP EchoRep id=0x0 magic=0x0] rcvd [IPCP ConfReq id=0x1 <addr 0.0.0.0> <compress VJ 0f 01> <ms-dns1 0.0.0.0> <ms-dns3 0.0.0.0>] sent [IPCP ConfNak id=0x1 <addr 10.0.1.40> <ms-dns1 192.168.1.1> <ms-dns3 192.168.1.1>] rcvd [LCP ProtRej id=0x3 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 ConfAck id=0x1 <compress VJ 0f 01> <addr 10.0.1.8>] rcvd [IPCP ConfReq id=0x2 <addr 10.0.1.40> <compress VJ 0f 01> <ms-dns1 192.168.1.1> <ms-dns3 192.168.1.1>] sent [IPCP ConfAck id=0x2 <addr 10.0.1.40> <compress VJ 0f 01> <ms-dns1 192.168.1.1> <ms-dns3 192.168.1.1>] Cannot determine ethernet address for proxy ARP local IP address 10.0.1.8 remote IP address 10.0.1.40 Script /etc/ppp/ip-up started (pid 7370) Script /etc/ppp/ip-up finished (pid 7370), status = 0x0 rcvd [IPCP TermReq id=0x3] IPCP terminated by peer Connect time 0.2 minutes. Sent 1544 bytes, received 20078 bytes. Script /etc/ppp/ip-down started (pid 7382) sent [IPCP TermAck id=0x3] Script /etc/ppp/ip-down finished (pid 7382), status = 0x0 rcvd [LCP TermReq id=0x4] LCP terminated by peer sent [LCP TermAck id=0x4] Hangup (SIGHUP) Modem hangup Connection terminated.
A questo punto si può chiudere dund e riavviare il computer (per assicurarsi che tutto venga impostato correttamente all'avvio), controllare quindi con il comando 'ps aux | grep dund' che dund sia avviato. Eseguire 'pilot-xfer -l -p net:any' e premere il pulsante HotSync sul palmare, si dovrebbe vedere una connessione riuscita e l'elenco di tutti i file presenti. È anche possibile usare 'export PILOTPORT=net:' affinché tutte le invocazioni di pilot-link cerchino connessioni attraverso la rete.