Как можно изменить дружественное имя удаленного устройства Bluetooth (используя командную строку в Linux или что-то подобное)? Я просмотрел некоторые из программ, включенных в bluez-tools
такие как hcitool
и bt-device
, но ни в одном из них нет функции изменения имени удаленного устройства. Похоже, что для этого также нет команды HCI.
Я знаю, что можно изменить псевдоним устройств во многих менеджерах Bluetooth, но это не одно и то же. Псевдоним виден только на локальном компьютере, тогда как имя устройства видно всем новым устройствам.
решение1
Используйте bt-device (входит в bluez-tools
комплект).
Получите список сопряженных устройств:
bt-device -l
Чтобы установить новый псевдоним:
bt-device --set macaddress|name Alias "New Name"
то есть:
bt-device --set S530 Alias "S530 Blue"
решение2
Отвечаю спустя полгода, но лучше поздно, чем никогда. Это может помочь другим людям.
Этот ответ основан на этомСообщение блога. У меня это сработало. В очень Linux-стиле это основано на редактировании файлов конфигурации, а не на использовании инструмента.
Вам необходимо отредактировать два файла:
В
/var/lib/bluetooth/[your MAC address]/config
отредактируйте строку, начинающуюся сname
.В
/etc/bluetooth/main.conf
измените строку сName = %h-%d
так, чтобы она читала толькоName = %h
, предполагая, что вы хотите использовать свое имя хоста в качестве имени Bluetooth (%d
добавляет другой индекс для каждого локального адаптера Bluetooth, но у вас, вероятно, только один). Использование чего-то другого должно сработать, но я сам этого не пробовал.
После завершения перезапустите службу Bluetooth:
$ sudo service bluetooth restart
решение3
В Fedora я использую команду bluetoothctl
для изменения этих настроек.
Она предоставляется пакетом bluez
, и в моем случае она уже была установлена.
bluetoothctl
имеет приглашение, доступ к которому осуществляется простым запуском команды.
Его команды также могут использоваться без доступа к приглашению, но в этом случае нет автодополнения.
Существует различие между внешнимустройства(мышь, клавиатура, геймпад и т. д.) и хостконтроллеры(встроенная карта BT, внешний USB BT адаптер и т. д.).
Поскольку bluetoothctl
можно изменить псевдоним как устройства, так и контроллера, процесс можно разделить на 3 этапа:
- список доступных контроллеров/устройств
- выберите контроллер/устройство для изменения
- изменить контроллер/устройство
Команды следующие:
Контроллер
- запустить
bluetoothctl
, чтобы получить доступ к его приглашению - запустите
list
, чтобы получить список доступных контроллеров- в моем случае у меня только 1 контроллер, карта BT моего ноутбука
- запустите
select 00:11:22:33:44:55
, чтобы выбрать контроллер для изменения- адрес может быть автоматически заполнен с помощью
TAB
, в моем случае доступен только 1 адрес
- адрес может быть автоматически заполнен с помощью
- запустите
system-alias "new alias for my BT controller"
, чтобы изменить псевдоним контроллера
Устройство
- запустить
bluetoothctl
, чтобы получить доступ к его приглашению - запустить
devices
, чтобы получить список доступных устройств- вывод можно отфильтровать, используя необязательные свойства, например
devices Connected
- вывод можно отфильтровать, используя необязательные свойства, например
- запустите
connect AA:BB:CC:DD:EE:FF
, чтобы выбрать устройства для изменения- адрес может быть автоматически дополнен
TAB
- адрес может быть автоматически дополнен
- запустите
set-alias "new alias for my BT device"
, чтобы изменить псевдоним устройства
help
можно использовать для получения обзора доступных команд:
[bluetooth]# help
Menu main:
Available commands:
-------------------
...
list List available controllers
...
select <ctrl> Select default controller
devices [Paired/Bonded/Trusted/Connected] List available devices, with an optional property as the filter
system-alias <name> Set controller alias
reset-alias Reset controller alias
...
set-alias <alias> Set device alias
...
connect <dev> Connect device
...