söndag 24 januari 2016

Hur man använder en Seriell-Bluetooth enhet i Linux

Jag köpte en sån här för att kunna köra något slags fattigmans IPMI mot en raspberrypi.

Jag kör i princip bara linux (Archlinux) och så här gjorde jag för att få igång den

Steg ett var att ändra till samma baud rate som en raspberrypi använder på sin seriella anslutning vilket är 115200.
Jag kopplade den enligt följande ritning till en Arduino Uno som ni kan hitta på den här länken.
Notera att jag kopplade den till 3,3V på Arduinon för den bluetooth modulen klarar bara 3,3Volt.
När seriell gränsnittet var öppet i Arduinon så skickade jag kommandot
AT+BAUD8
Vilket ställde modulens baudrate i 115200

Steg 2 var att koppla den till en raspberrypi
På  baksidan av bluetoothmodulen står det vilka pinnar som är vad, Jag kopplade enligt https://www.raspberrypi.org/documentation/usage/gpio/
VCC -> 3,3V
GND -> Ground
TXD -> pin15
RXD -> pin14
När raspberryn strömsätts nu så bör bluetooth-modulen börja blinka.

Steg 3 är att para den med datorn. Jag har bluetooth aktiverat och kör kommandot bluetoothctl som root
kalle@computer ~ %sudo bluetoothctl
[NEW] Device 20:14:12:58:22:57 HC-06
[bluetooth]# agent KeyboardOnly
Agent registered
[bluetooth]# default-agent
Default agent request successful
[bluetooth]# pair 20:14:12:58:22:57
Attempting to pair with 20:14:12:58:22:57
[CHG] Device 20:14:12:58:22:57 Connected: yes
Request PIN code
[agent] Enter PIN code: 1234
[CHG] Device 20:14:12:58:22:57 UUIDs: 01001001-0000-1010-8000-00805e9bd4fbc
[CHG] Device 20:14:12:58:22:57 Paired: yes
Pairing successful
[CHG] Device 20:14:12:58:22:57 Connected: no
[bluetooth]# exit
Nu är modulen och datorn parad så nu fattas bara att skapa porten och koppla upp sig
kalle@computer ~ %sudo modprobe rfcomm
kalle@computer ~ %sudo rfcomm bind rfcomm0 20:14:12:58:22:57
kalle@computer ~ %ls -la /dev/rfcomm0                                                                                                  
crw-rw---- 1 root uucp 216, 0 24 jan 17.49 /dev/rfcomm0
Koppla upp sig med
kalle@computer ~ %screen /dev/rfcomm0 115200

Inga kommentarer:

Skicka en kommentar