- Saved searches
- Use saved searches to filter your results more quickly
- clopresti/rpi-bluetooth
- Name already in use
- Sign In Required
- Launching GitHub Desktop
- Launching GitHub Desktop
- Launching Xcode
- Launching Visual Studio Code
- Latest commit
- Git stats
- Files
- README.md
- Управление контактами ввода/вывода (GPIO) Raspberry Pi через Bluetooth и Android приложение
- Установка необходимых пакетов для работы с Bluetooth в Raspberry Pi
Saved searches
Use saved searches to filter your results more quickly
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.
clopresti/rpi-bluetooth
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Sign In Required
Please sign in to use Codespaces.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching GitHub Desktop
If nothing happens, download GitHub Desktop and try again.
Launching Xcode
If nothing happens, download Xcode and try again.
Launching Visual Studio Code
Your codespace will open once ready.
There was a problem preparing your codespace, please try again.
Latest commit
Git stats
Files
Failed to load latest commit information.
README.md
Using Bluetooth With The Raspberry Pi
The following instructions show how to setup and use a USB Bluetooth adapter with the Raspberry Pi. Please note that these instructions only apply to the latest Raspbian Jessie distribution. If you are using a different distribution or an older Raspbian build such as Wheezy some of the instructions will need to be changed as the Bluetooth stack and utilities have changed with the Jessie release and BlueZ 5.23.
A lot of the instructions I found online were relating to the older wheezy builds and it took some extra time to find the correct way to do things with Jessie. There were also a few configuration changes that needed to be made in order to work around some known issues/bugs relating to the RFCOMM (serial over Bluetooth) communication on the Pi. I have documented all this and hopefully I can save you some time if you are trying to do a similar things.
I am using a USB Bluetooth 4.0 adapter with a Broadcom BCM20702 chipset but there are many other supported Bluetooth adapters including those with CSR (Cambridge Silicon Radio) chipsets. I tested on a Raspberry Pi 2 but all this should work with any version of the Raspberry Pi as long as you are running the latest Raspbian Jessie distribution.
First make sure your Pi is up to date:
> sudo apt-get update > sudo apt-get upgrade > sudo rpi-update > sudo reboot
Insert your USB Bluetooth adapter into one of the USB ports on the Pi and enter:
You should see output similar to the following:
If you used an adapter with a different chipset like CSR you might see ‘Cambridge Silicon Radio’ insead of ‘Broadcom Corp’. If you do not see something similar to this it might mean that there is something wrong with your adapter or it is not recognized/supported.
Next install the bluez and bluetooth manager packages:
> sudo apt-get install bluetooth blueman bluez python-gobject python-gobject-2
Now you can check you your adapter state:
You should see output similar to the following:
BD Address: XX:XX:XX:XX:XX:XX UP RUNNING PSCAN ISCAN
The [XX:XX:XX:XX:XX:XX] part is the MAC address of your Bluetooth adapter If you do not see «UP RUNNING» enter the following to turn on Bluetooth:
Part 2. Paring and Connecting Devices
Start the command line Bluetooth manager
You should see a line similar to:
Controller XX:XX:XX:XX:XX:XX raspberrypi [default]
‘raspberrypi’ is the default name you will see when pairing/connecting to the Pi from other devices
Управление контактами ввода/вывода (GPIO) Raspberry Pi через Bluetooth и Android приложение
Плата Raspberry Pi находит широкое применение в различных проектах, относящихся к тематике интернета вещей (Internet of Things, IoT), во многом благодаря тому что у нее есть встроенные Wi-Fi и Bluetooth, в настоящее время являющиеся самыми популярными протоколами беспроводной связи. В данной статье мы рассмотрим управление контактами ввода/вывода (GPIO) платы Raspberry Pi через Bluetooth и Android приложение. Ранее на нашем сайте мы рассматривали аналогичный проект для платы Arduino.
В данном проекте мы использовали плату Raspberry 2 Pi Model B, у которой нет встроенного модуля Bluetooth, поэтому для использования в ней возможностей данного протокола мы использовали простой USB Bluetooth адаптера. Для демонстрации возможностей данного проекта мы использовали светодиод, подключенный к плате Raspberry Pi через резистор 220 Ом. В данном проекте для беспроводной связи между смартфоном и платой Raspberry Pi мы использовали протокол RFCOMM Bluetooth.
Программирование Bluetooth в языке Python основано на концепции программирования сокетов (socket programming) и взаимодействие между Bluetooth устройствами в данном случае осуществляется через RFCOMM сокет. RFCOMM (Radio Frequency Communication) представляет собой Bluetooth протокол, который обеспечивает эмуляцию последовательного порта RS-232 и также известен под именем Serial Port Emulation. Профиль последовательного порта Bluetooth основан на этом протоколе. RFCOMM является достаточно популярным приложением Bluetooth поскольку он обеспечивается хорошей поддержкой и имеет свободно доступные инструменты API
Для работы с данным протоколом в нашем проекте мы будем использовать Bluetooth модуль HC-06, на нашем сайте вы можете посмотреть все проекты, в которых он был использован.
Установка необходимых пакетов для работы с Bluetooth в Raspberry Pi
Первым делом нам необходимо установить последние обновления для операционной системы Raspberry Pi OS: