Lampone Pi – Usi del Bluetooth
Molto bene, en este artículo quería documentar alguna utilidad que le saqué a una de las Raspberry que anda por casa, tengo un dispositivo mini USB bluetooth que le conecté a la Pi, os paso un par de scripts por si os puedan interesar: Uno primero nos detectará si estamos para ejecutar una acción; y el segundo conectará un altavoz inalámbrico!
Como os comenté hace tiempo, iré posteando scripts curiosos que he ido recopilando para todo el sistema de domotica que monté en casa, espero que algo os pueda servir. Come dicevo, el primer script usará el dispositivo USB bluetooth conectado en la Raspberry para buscarme, como la Pi está en casa, cuando me encuentre ejecutará un comando (en mi caso desactivará la alarma de casa). E il secondo script collegherà lo stesso dongle Bluetooth della Pi a un altoparlante Bluetooth wireless, per inviare audio, tipo musica, radio o qualche comando che voglio che mi parli.
La prima cosa da fare sarà installare i requisiti, e verificare l'indirizzo MAC del dispositivo, se non appare nella nostra lista, verificheremo che abbiamo i driver caricati, per sapere l'ide del vostro dispositivo lo cercate con 'lsusb'’ .
[Codice sorgente]sudo apt-get install bluez python-bluez
Ha fatto lo sviluppo di strumenti
Dispositivi:
hci0 00:24:94:AA:XX:XX[/Codice sorgente]
La mia prima necessità era cercare di automatizzare il sistema di allerta di casa, e questo è molto facile, se il mio cellulare è in casa allora l'allarme deve disattivarsi, quando il mio cellulare non è presente, l'allarme di casa deve attivarsi. Come? Facilissimo se abbiamo un Android, dato che questi rispondono sempre a PING, quindi nel nostro DHCP di casa facciamo un'assegnazione MAC e con qualsiasi script lo pingiamo, che non risponde… attiva l'allerta! che risponde… disattiva l'allerta! Ma io ho un iPhone e non è così semplice, come saprete, gli iPhone in modalità chillout non rispondono ai PING, Cioè, quasi mai, a meno che non sia sbloccato. Soluzione… usare il bluetooth! A proposito, per i curiosi, attivare l'allerta non è altro che sensori di movimento che ho in casa, che quando l'allerta è attivata inviano un segnale a una telecamera per registrare video (di 10s) e me li inviano per email, oltre a far suonare tramite gli altoparlanti una sirena da sottomarino =). Quei stessi sensori, quando l'allerta è disattivata servono per accendere le varie luci della casa mentre cammino.
Script en Python para comprobar si algo responde por bluetooth, yo le llamo ‘busca_hector.py’, y busca mi iPhone cada constantemente, una vez lo encuentra ejecuta un script y se duerme 5 verbale:
[Codice sorgente]#!/usr/bin/python
import bluetooth
tempo di importazione
HectorIN = 0
HectorOUT = 0
print "In/Out Board"
mentre Vero:
print "Buscando " + time.strftime("%a, %d %b %Y %H:%M:%S", time.gmtime())
result = bluetooth.lookup_name(‘A0:18:28:59:XX:XX’, timeout=5)
se (risultato != None):
print "Hector: in"
if HectorIN == 0:
HectorIN = HectorIN + 1
Sottoprocesso di importazione
sottoprocesso.chiamata([‘bash’,’/home/pi/alarma_apaga.sh’])
sottoprocesso.chiamata([‘bash’,’/home/pi/textoAvoz.sh’,’Bienvenido a casa Hector’])
HectorOUT = 0
tempo.sonno(300)
altro:
print "Hector: Cambio"
HectorIN = 0
HectorOUT = HectorOUT + 1
print "Hector IN:"
print HectorIN
print "HectorOUT"
print HectorOUT
print "——"[/Codice sorgente]
Podremos probarlo ejecutando:
[Codice sorgente]python /home/pi/busca_hector.py[/Codice sorgente]
Non male, come saprete, hay varias maneras de hacer que ese script de Python arranque con la Pi, lo más fácil ponerlo en el cron fácilmente, Eseguiamo 'crontab -e’ e aggiungiamo ‘@reboot python /home/pi/busca_hector.py‘
Conexión de un altavoz inalambrico,
Hasta ahí para detectar cualquier dispositivo bluetooth, con eso podremos detectar cualquier dispositivo como un móvil y ejecutar cualquier acción. Ahora vamos a darle más uso al dongle Bluetooth, ya que tenía un altavoz bluetooth por ahí, os muestro que sería necesario ejecutar para conectar a la Raspberry dicho altavoz inalámbrico:
Al emparejar dará error si no editamos primeramente el fichero ‘sudo vim /usr/bin/bluez-simple-agent’, remplazando la palabra ‘KeyboardDisplay’ por ‘DisplayYesNo’
Non male, comenzamos un escaneo a ver si ve nuestro altavos, ejecutamos ‘hcitool scan’:
[Codice sorgente]Scanning …
00:58:50:52:98:48 H88[/Codice sorgente]
Ahora emparejaremos los dispositivos, per questo, si tiene algún botón el altavoz lo pulsaremos y ejecutamos:
[Codice sorgente]sudo bluez-simple-agent hci0 00:58:50:52:XX:XX
Release
New device (/org/bluez/2405/hci0/dev_00_58_50_52_XX_XX)[/Codice sorgente]
Nos conectamos al altavoz con:
[Codice sorgente]sudo bluez-test-audio connect 00:58:50:52:XX:XX[/Codice sorgente]
Hacemos que confie en nuestro altavoz:
[Codice sorgente]sudo bluez-test-device trusted 00:58:50:52:XX:XX yes[/Codice sorgente]
Y verificamos que ha cambiado a 1:
[Codice sorgente]sudo bluez-test-device trusted 00:58:50:52:XX:XX[/Codice sorgente]
Modificamos el fichero ‘.asocundrc’ con: ‘vim ~/.asoundrc’
[Codice sorgente]pcm.bluetooth {
type bluetooth
device00:58:50:52:XX:XX
}[/Codice sorgente]
Editamos también ‘audio-conf’ con: ‘vim /etc/bluetooth/audio.conf’ e aggiungiamo:
[Codice sorgente]Disable=Media
Enable=Socket[/Codice sorgente]
Anche, instalaré una aplicación para poder reproducir fácilmente cualquier mp3 o m3u, sean de ficheros locales o de URLs, como puede ser una cadena de radio online =)
[Codice sorgente]sudo apt-get install bluez-alsa mpg321
sudo /etc/init.d/bluetooth restart[/Codice sorgente]
Per riprodurre un file mp3 proveremo con:
[Codice sorgente]mpg321 -a bluetooth -g 15 canzone.mp3[/Codice sorgente]
Per riprodurre .m3u o playlist, bastarà con mettere l'indirizzo:
[Codice sorgente]mpg123 -@ http://radio7.oye.fm:7501/listen.pls -a bluetooth[/Codice sorgente]
Possiamo cercare la stazione radio che più ci piace su Internet, che ci sono un sacco di liste! Vi pongo un paio di esempi, Radio 3 –> Protocollo HTTP://radiolive.rtve.es/radio3.m3u & Radio Euskadi –> Protocollo HTTP://www.listenlive.eu/radioeuskadi.m3u








































