CONTROLLIAMO LA NOSTRA RASPBERRY PI DA CELLULARE E TABLET
Questo articolo descrive come attivare la console tramite bluetooth per poter controllare la nostra raspberry pi da qualsiasi smartfone sia android che ios
- HARDWARE RICHIESTO
Modulo bluetooth tipo hc06
Pins
RPi GPIO pin | BT module pin |
5V (Pin #2) |
VCC |
GND (Pin #6) |
GND |
TXD (Pin #8) |
RXD |
RXD (Pin #10) |
TXD |
Nota : La connessione TXD
e RXD
fra la RPi e il terminale Bluetooth e invertita .
- Configurazione del RPi
io utilizzo come sistema operativo Raspbian
Per default la nostra Raspberry Pi e' configurata per scrivere i messaggi di boot sulla porta seriale e inizializza la console da seriale.
Per default i baud rate della nostra RPi sono impostati a 115200 bps, generalmente il modulo Bluetooth lavora a 9600 bps.
Quindi occore configurare la RPi a 9600 bps modificando due file di configurazione.
Il file /boot/cmdline.txt
contiene la configurazione usata dal kernel in fase di boot del susstema
Contiene la seguente riga:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
The interesting options are console
and kgdboc
, because these configure the serial port device /dev/ttyAMA0
to 115200 bps. You need to change these two configurations to 9600 bps. After you make these changes the file should read:
dwc_otg.lpm_enable=0 console=ttyAMA0,9600 kgdboc=ttyAMA0,9600 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait
Il secondo file di configurazione e' /etc/inittab
. dove troviamo la seguente linea
T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100
Questo dice al sistema di avviare un terminale sulla porta seriale, e ancora una volta utilizza 115200 bps per configurare la porta devi cambiare questa linea a 9600 bps:
T0:23:respawn:/sbin/getty -L ttyAMA0 9600 vt100
Ricordate che essengo file di configurazione del sistema per modificare questi file è necessario utilizzare sudo. Per quanto riguarda gli editor di testo, Per modificare cmdline.txt con pico si eseguire il seguente comando:
$ sudo pico /boot/cmdline.txt
Con le modifiche apportate al RPI è configurato per comunicare con il modulo Bluetooth. Se ora si accende il Raspberry Pi si noterà che il LED nel modulo Bluetooth lampeggia rapidamente. Questo è il segno che il modulo Bluetooth è pronto e in attesa di essere accoppiato con un altro dispositivo.
Connessione al terminale Bluetooth
Se si utilizza un dispositivo Android con BlueTerm quindi avviare l'applicazione e dal menu app selezionate "Collegare il dispositivo".
Android fa automaticamente la selezione baud in modo da non dover configurarlo. Da un software del terminale in esecuzione in un computer, è probabile che sarà necessario configurare la velocità, il numero di bit di dati per carattere, la parità, e il numero di bit di stop per carattere. I valori è necessario utilizzare sono:
- Speed: 9600 bps
- Data bits: 8 bits
- Parity: None
- Stop bits: 1 bit
Il modulo Bluetooth è preconfigurato con un codice PIN. Per completare il collegamento al computer o smartphone vi chiederà di inserire il PIN. Il PIN di default è 1234.
Il LED nel modulo Bluetooth ora smette di lampeggiare e rimane acceso, a indicare che ha fatto un collegamento.
E qui viene il bello. È necessario riavviare il Raspberry Pi in modo che le nuove impostazioni della porta seriale abbiano effetto. Per riavviare l'RPI eseguire il seguente comando in una shell locale o di rete:
$ sudo reboot
Ora guarda il terminale Bluetooth sul vostro PC o smartphone, mentre il Pi riavvia. Messaggi di avvio devono essere visualizzate sul terminale, e non appena l'RPI è up si dovrebbe ottenere un prompt di login anche lì.
Ora è possibile accedere dal vostro terminale Bluetooth e utilizzare il prompt dei comandi come si farebbe normalmente sopra un guscio di locale o di rete.