ラズベリーパイ – Bluetooth の使用法

非常にいいです, この記事では、家にあるラズベリーパイの1つで役立ったことを記録したいと思います, ミニUSB BluetoothデバイスをPiに接続しました, もし興味があれば、いくつかのスクリプトを紹介します: 最初のスクリプトは、アクションを実行する準備ができているかどうかを検出します; 2つ目はワイヤレススピーカーを接続します!

Raspberry-Bluetooth-bujarra

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. 私が言っていたように, 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). Y el segundo script conectará el mismo dongle de bluetooth de la Pi a un altavoz bluetooth inalámbrico, para mandarle audios, tipo música, radio o algún comando que quiero que me hable.

 

Lo primero de todo será instalar los requisitos, y verificar la MAC del dispositivo, si no sale en nuestra lista, verificaremos que tenemos los drivers cargados, para saber el ide de vuestro dispositivo lo buscáis con ‘lsusb’ .
[ソースコード]sudo apt-get install bluez python-bluez

彼はツール開発をしました
デバイス:
hci0 00:24:94:AAさん:XXさん:XXさん[/ソースコード]
 

Mi primera necesidad era intentar automatizar el sistema de alarma de casa, y esto es muy fácil, si mi móvil está en casa entonces la alarma se debe desactivar, cuando mi móvil no esté, la alarma de casa se debe armar. Como? Facilísimo si tenemos un Android, ya que estos responden a PING siempre, así que en nuestro DHCP de casa hacemos una asignación de MAC y con cualquier script le pingeamos, que no respondemonta la alarma! que respondedesmonta la alarma! Pero yo tengo un iPhone y esto no es tan sencillo, como sabréis, los iPhones en modo chillout no responden a PINGs, それです, casi nunca, a menos que lo tengas desbloqueado. Soluciónusar el bluetooth! ところで, para los curiosos, montar la alarma no es más que sensores de movimiento que tengo por la casa, que cuando la alarma está montada mandan señal a una camara para grabar videos (de 10s) y me los manda por mail, además de sonar por los altavoces una sirena de estas de submarino =). Esos mismos sensores, cuando la alarma está desconectada me sirven para encender las distintas luces de la casa según voy andando.

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 議事録:
[ソースコード]#!/usr/bin/python
import bluetooth
インポート時間

HectorIN = 0
HectorOUT = 0

print "In/Out Board"

トゥルー:
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)
もし (結果 != None):
print "Hector: で"
if HectorIN == 0:
HectorIN = HectorIN + 1
import サブプロセス
subprocess.call を呼び出します。([‘bash’,’/home/pi/alarma_apaga.sh’])
subprocess.call を呼び出します。([‘bash’,’/home/pi/textoAvoz.sh’,’Bienvenido a casa Hector’])
HectorOUT = 0
時間.スリープ(300)
然も無くば:
print "Hector: アウト"
HectorIN = 0
HectorOUT = HectorOUT + 1
print "Hector IN:"
print HectorIN
print "HectorOUT"
print HectorOUT
print "——"[/ソースコード]
 

Podremos probarlo ejecutando:
[ソースコード]python /home/pi/busca_hector.py[/ソースコード]

悪くありません, como sabréis, hay varias maneras de hacer que ese script de Python arranque con la Pi, cronに簡単に入れるのが一番簡単です, 'crontab -e を実行します’ そして、私たちは追加します ‘@reboot python /home/pi/busca_hector.py

 

ワイヤレススピーカーの接続,

ここまでで任意のBluetoothデバイスを検出できます, これでスマートフォンなどの任意のデバイスを検出して任意のアクションを実行できます. さて、Bluetoothドングルをもっと活用しましょう, ちょうどBluetoothスピーカーを持っていたので, Raspberryにそのワイヤレススピーカーを接続するために実行する必要があることをお見せします:

 

ペアリング時にエラーが出る場合は、まずファイル'sudo vim /usr/bin/bluez-simple-agent'を編集しなければなりません, ‘KeyboardDisplay’を‘DisplayYesNo’に置き換えます

悪くありません, スキャンを開始してスピーカーが見えるか確認します, ‘hcitool scan’を実行します:
[ソースコード]スキャン中 …
00:58:50:52:98:48 H88[/ソースコード]

Ahora emparejaremos los dispositivos, こちらは, si tiene algún botón el altavoz lo pulsaremos y ejecutamos:
[ソースコード]sudo bluez-simple-agent hci0 00:58:50:52:XXさん:XXさん
解放
new device (/org/bluez/2405/hci0/dev_00_58_50_52_XX_XX)[/ソースコード]

Nos conectamos al altavoz con:
[ソースコード]sudo bluez-test-audio connect 00:58:50:52:XXさん:XXさん[/ソースコード]

Hacemos que confie en nuestro altavoz:
[ソースコード]sudo bluez-test-device trusted 00:58:50:52:XXさん:XX yes[/ソースコード]

Y verificamos que ha cambiado a 1:
[ソースコード]sudo bluez-test-device trusted 00:58:50:52:XXさん:XXさん[/ソースコード]

Modificamos el fichero '.asocundrc’ で: 'vim ~/.asoundrc’
[ソースコード]pcm.bluetooth {
type bluetooth
device00:58:50:52:XXさん:XXさん
}[/ソースコード]

editamos también 'audio-conf’ で: 'vim /etc/bluetooth/audio.conf’ そして、私たちは追加します:
[ソースコード]Disable=Media
Enable=Socket[/ソースコード]
 

また, 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 =)
[ソースコード]sudo apt-get install bluez-alsa mpg321
sudo /etc/init.d/Bluetooth restart[/ソースコード]
 

Para reproducir un archivo mp3 probaremos con:
[ソースコード]mpg321 -a Bluetooth -g 15 cancion.mp3[/ソースコード]
 

Para reproducir .m3u o listas, bastará con la dirección:
[ソースコード]mpg123 -@ http://radio7.oye.fm:7501/listen.pls -a bluetooth[/ソースコード]
 

Podemos buscar la cadena de radio que más nos guste en Internet, Que hay un monton de listas! Os pongo un par de ejemplos, ラジオ 3 –> HTTPの://radiolive.rtve.es/radio3.m3u & Radio Euskadi –> HTTPの://www.listenlive.eu/radioeuskadi.m3u

おすすめの投稿

著者

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, 私に連絡することを躊躇しないでください, できる限りお手伝いします, シェアリングは生きていること ;) . ドキュメントを楽しむ!!!