Puncte:-1

Compilarea bibliotecii bluetooth tinyB

drapel pt

Încerc să compilez biblioteca TinyB de la Intel. Am gasit acest script: https://gist.github.com/StevenRudenko/b6c032c3c1fdfb5c641ff95883e6cd02

https://github.com/intel-iot-devkit/tinyb

https://mcuoneclipse.com/2016/12/19/tutorial-ble-pairing-the-raspberry-pi-3-model-b-with-hexiwear/


# Actualizați BlueZ
sudo apt-get update
sudo apt-get install git build-essential autoconf cmake libtool libglib2.0 libdbus-1-dev libudev-dev libical-dev libreadline-dev
wget http://www.kernel.org/pub/linux/bluetooth/bluez-5.39.tar.xz
tar xvf bluez-5.39.tar.xz 
cd bluez-5.39/

aclocal 
autoheader 
automake --force-missing --add-missing 
autoconf
./configure --prefix=/usr --mandir=/usr/share/man --sysconfdir=/etc --localstatedir=/var --enable-experimental --with-systemdsystemunitdir=/lib/systemd/system -- with-systemduserunitdir=/usr/lib/systemd

./configure --prefix=/usr \
            --mandir=/usr/share/man \
            --sysconfdir=/etc \
            --localstatedir=/var \
            --enable-experimental \
            --enable-maintainer-mode

face
sudo make install
sudo cp attrib/gatttool /usr/local/bin
sudo sed -i '/^ExecStart.*bluetoothd\s*$/ s/$/ --experimental/' /lib/systemd/system/bluetooth.service
sudo ln -s /lib/firmware /etc/firmware
sudo systemctl activa bluetooth
sudo systemctl daemon-reload

sudo apt-mark hold bluez



sudo nano /lib/systemd/system/bluetooth.service
  ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental  
sudo systemctl daemon-reload
sudo systemctl reporniți bluetooth

bluetoothctl
  aprinde
  agent activ
  scanează
  scanare dezactivată
  info 00:34:40:0A:00:4E
  pereche 00:34:40:0A:00:4E
  dispozitive
  list-attributes 00:34:40:0A:00:4E
  citit
  atribute-info
  select-attribute /org/bluez/hci0/dev_00_32_40_08_00_12/service002e/char002f
  scrie 0x3 0x4 0x10 0x20 0x30 0x40
  deconectați 00:32:40:08:00:12
  părăsi

sudo apt-get install cmake build-essentials verificați-instalați libglib2.0-dev doxygen

clona git https://github.com/intel-iot-devkit/tinyb.git

mkdir build
CD build
cmake -DBUILDJAVA=ON ..
face
sudo checkinstall install
// pentru a elimina dpkg -r build

java -Djava.library.path=/usr/lib/jni -cp /usr/share/java/RXTXcomm.jar -jar your.jar

dar asta este un pic irelevant. M-ați putea ajuta să repar asta?

In primul rand:

Acest script dorește să compileze bluez-5.39 cu indicatorul -enable-experimental. Este chiar necesar acum? Pot să descarc doar cea mai nouă versiune a bibliotecii? Dacă nu, atunci când compilați BlueZ, există multe avertismente care completează compilarea cu steag-ul -Werror. De asemenea, există o problemă cu funcția âSIOCGSTAMPâ și nu știu ce funcție ar trebui să folosesc aici: âSIOCGSTAMP_NEWâ sau âSIOCGSTAMP_OLDâ?

Al doilea: sudo systemctl activa bluetooth nu merge, datorita Fișierul unității /etc/systemd/system/bluetooth.service este mascat. Ar trebui să-l demasc?

În al treilea rând: ce face exact această comandă:

sudo nano /lib/systemd/system/bluetooth.service
  ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental  

si de ce am nevoie de el?

Nu am trecut mai departe prin scenariu, pentru că partea a treia mi se pare lipsită de sens. De ce se duplica ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental la începutul fișierului? sper in ajutorul tau.

Poate că un depozit are deja o bibliotecă tinyB compilată care va funcționa?

Puncte:0
drapel pt

Ok, am făcut-o. Am fost folosit SIOCGSTAMP_OLD, ignora ediția ciudată: "

sudo nano /lib/systemd/system/bluetooth.service
  ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental 

", (a fost suficient):

sudo sed -i '/^ExecStart.*bluetoothd\s*$/ s/$/ --experimental/' /lib/systemd/system/bluetooth.service

ignora partea: "

bluetoothctl
  aprinde
  agent activ
  scanează
  scanare dezactivată
  info 00:34:40:0A:00:4E
  pereche 00:34:40:0A:00:4E
  dispozitive
  list-attributes 00:34:40:0A:00:4E
  citit
  atribute-info
  select-attribute /org/bluez/hci0/dev_00_32_40_08_00_12/service002e/char002f
  scrie 0x3 0x4 0x10 0x20 0x30 0x40
  deconectați 00:32:40:08:00:12
  părăsi

" și compilați astfel:

export PATH=/usr/lib/jvm/java-8-openjdk/bin/:$PATH
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk/
mkdir build
CD build
cmake -DBUILDJAVA=ON -DCMAKE_INSTALL_PREFIX=/usr ..
face instalarea

https://github.com/intel-iot-devkit/tinyb/issues/27

TinyB funcționează pentru mine acum, atât versiunea c++, cât și versiunea Java. Noroc.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.