ios - Communication issues between Arch Linux and iPad -


i'm running arch linux , bluez libraries on computer, , i'm trying connect ipad [w/ retina] on ble. can see ipad in bluetoothctl, pair it, trust it, , connect it. question in 2 parts:

1) want able select attributes, more map service. however, running

list-attributes 

either during or outside of connection returns no information.

2) ipad cannot see computer can see ipad, either through settings --> bluetooth menu or cbcentralmanager in app i'm developing. computer set discoverable , pairable forever, doesn't find it.

how able connect ipad appropriately, if there way?

disclaimer using bluez user space tools:

op mentioned in comments utilized hcitool. it's best not use hciconfig nor hcitool these in process of being phased out of bluez , have been unmaintained long time. prone errors , raw calls these programs make blocking , cause interference other bluetooth applications.

bluez publishes methods in order users use bluetooth (le) functionality applications or tasks: dbus , lower-level approach. programs included in bluez user space package include bluetoothctl, uses dbus bluetooth related tasks, such scanning, advertising , gatt. tools btmgmt, can considered maintained version of hcitool, use lower level libraries. bluez recommends using dbus api applications. sure have compiled source code , have followed recommended instructions use mentioned tools. check licensing on mentioned tools , source files can not included in proprietary software.


dbus-less solution:

if using bluetoothctl or dbus doesn't work out you, suggest use btmgmt. can found in /tools folder of user space source code.

if you're looking or wanting include gatt-related tasks, can use btgatt-client act gatt client or btgatt-server act gatt server same /tools folder. these not use dbus, nor corresponding bluetooth daemon (bluetoothd) bluetoothctl does

dbus solution:

what cause of not seeing services using bluetoothctl, however, not running aforementioned bluetooth daemon -e flag (experimental). currently, gatt-related functionality usable when running in experimental mode. (they're working out of experimental-only mode) think because it's still being developed. if recall correctly bluez can configured/installed in experimental mode, no manual actions required.

to restart bluez daemon (bluetoothd) gatt enabled run:

sudo service bluetooth stop && bluetoothd -e

in cases, when stopping bluetooth service, bluetooth controller power down , bluetoothctl won't respond user input/freezes on startup. if indeed case, use btmgmt , issue power on power bluetooth controller again.


Comments

Popular posts from this blog

php - Wordpress website dashboard page or post editor content is not showing but front end data is showing properly -

How to get the ip address of VM and use it to configure SSH connection dynamically in Ansible -

javascript - Get parameter of GET request -