Documente online.
Username / Parola inexistente
  Zona de administrare documente. Fisierele tale  
Am uitat parola x Creaza cont nou
  Home Exploreaza
Upload




























Tehnologia Bluetooth

tehnica mecanica




Introducere



Stiva de protocoale Bluetooth



Stiva de protocoale Bluetooth


Necesitatea de a comunica a dispozitivelor



Descoperirea dispozitivelor vecine



LAP - partea inferioara a adresei;

Inquiry_Length - lungimea investigarii - investigarea se va termina dupa aceasta perioada;

Number_of_Responses - numarul de raspunsuri - daca numarul maxim de raspunsuri date este atins atunci investigarea se termina înainte ca durata investigarii sa ajunga la final.



LAP determina codul modului de investigare (IAC) folosit în mesajul de identificare transmis la care dispozitivele raspund.

Exista de asemenea optiunea pentru aplicatii de a folosi comanda HCI_Periodic_Inquiry_Mode astfel încât se configureaza nivele inferioare pentru a realiza automat procedurile de investigare dupa o anumita perioada. Exista si comenzile HCI_Periodic_Inquiry_Mode si HCI_Periodic_Inquiry_Mode care anuleaza comenzile de investigare.

Modul de ascultare pentru investigare se numeste scanarea investigarii. Numai dispozitivele în Inquiry Scan pot raspunde la investigari si apoi la investigarile care au codul corect de investigare (IAC). Acest lucru are consecinte pentru aplicatii deoarece se pot ascunde anumite dispozitive prin dezactivarea scanarii. Un dispozitiv de acest fel este în modul nedescoperibil. În mod contrar nu exista garantia descoperirii tuturor dispozitivelor Bluetooth din zona deoarece nu sunt în modul scanarea investigarii si deci practic sunt invizibile.

Plasând un dispozitiv în modul Inquiry Scan implica setarea parametrilor corespunzatori si apoi a modului. HCI_Write_Inquiry_Scan_Activity este folosit pentru a seta timpul scanarii si intervalul dintre doua scanari.

HCI_Write_IAC_LAP este folosit pentru a defini codul de acces pentru investigare pe care dispozitivele îl vor cauta. Exista doua astfel de coduri valide. IAC general este utilizat de majoritatea dispozitivelor si toate dispozitivele accepta acest cod. Unele dispozitive pot accepta de asemenea si IAC limitat care poate fi utilizat doar daca se doreste descoperirea pentru o perioada limitata de timp si ca raspuns la un anume eveniment. Este indicat în cazul mediilor aglomerate când poate fi greu sa descoperi dispozitivul dorit. O pereche de dispozitive poate functiona o perioada în modul limitat. Daca dispozitivele suporta acest lucru cele doua moduri pot functiona simultan. De cele mai multe ori însa cele mai multe implementari accepta scanarea seriala. În acest caz este responsabilitatea aplicatiei sa determine schimbare între cele doua moduri.

HCI_Write_Scan_Enable este folosit atât pentru activarea cât si dezactivarea modului de scanare.

Daca un dispozitiv în modul de scanare raspunde la o investigare acest raspuns este transmis la dispozitivul investigator printr-un eveniment numit HCI_Inquiry_Result. Acesta este de lungime variabila depinzând de numarul de raspunsuri si are 7 parametri :

Num_Response : numarul de mesaje raportate în mesaj ;

BD_ADDR : adresele Bluetooth pentru fiecare dispozitiv care raspunde;

Page_Scan_Repetition_Mode: pentru fiecare dispozitiv care raspunde;

Page_Scan_Period_Mode: pentru fiecare dispozitiv care raspunde;

Page_Scan_Mode: pentru fiecare dispozitiv care raspunde;

Clasa dispozitivelor (CoS) : este o descriere a tipului dispozitivului care raspunde si este unic pentru fiecare dispozitiv ;

Clock_offset : din momentul determinarii saltului de frecventa al dispozitivului care raspunde pâna la adresa sa si tact , informatia din offsetul de tact poate fi folosita pentru predictia    frecventei pentru ascultare si se reduce astfel timpul conectarii.

Parametrii Page_Scan se refera la frecventa, intervalele si metoda exacta prin care dispozitivele de scanare permit celorlalte dispozitive sa se conecteze la ele.

Din moment ce atât dispozitivele de investigare cât si cele de scanare a investigarii realizeaza salturile de frecventa întâmplator se poate întâmpla sa se afle pe aceeasi frecventa mai mult chiar de o singura data în timpul unei proceduri de investigare si se pot genera astfel mai multe raspunsuri. Fiecare raspuns raportat de HCI_Inquiry_Result depinde de implementarea nivelelor inferioare si de numarul de raspunsuri pe care aceste nivele le pot depista. Aplicatia trebuie sa fie capabila sa identifice raspunsurile duplicat si sa le filtreze.

Când o investigare este completa pentru ca numarul specificat de raspunsuri a fost atins este generat HCI_Inquiry_Complete. Acesta contine numai un parametru de stare.


▪ Sincronizarea


Din moment ce un dispozitiv trebuie sa fie în investigare iar altul în scanarea investigarii pentru o descoperire reusita este important pentru aplicatii sa se descopere dispozitivele într-un timp cât mai scurt. Dispozitivele care sunt în general descoperibile emit în mod repetat o scurta scanare a investigarii la un interval mare ( cel putin 10,625 ms la fiecare 2,65 s), în timp ce dispozitivele care investigheaza emit o investigare de durata mare (cel putin 10,24sec) fie o data fie periodic, dar cu interval mare între investigari.

Datele actuale oferite de profilul generic de acces ( GAP ) sunt:

cât sunt descoperibile intra în scanarea investigarii pentru cel putin 10,625 ms la fiecare 2,65 s. Ramân descoperibile cel putin 30,72 s.

cât investigheaza, intra în modul de investigare cel putin 10,24s.

pentru dispozitivele care utilizeaza coduri de investigare limitate ( LIAC ) nu este recomandat sa stea în scanarea interogarii mai mult de 1 minut.

Conectarea la un dispozitiv



sa se trimita HCI_Connection_Request la gazda si sa se astepte HCI_Accept_Connection_Request sau HCI_Reject_Connection_Request ;



sa se accepte apelul automat ;

sa se accepte apelul automat numai daca dispozitivul de apel accepta schimbul master/slave.

Ultima varianta este importanta pentru profile cum ar fi accesul într-o retea locala, unde un punct de acces este descoperibil si conectabil cât timp exista masterul retelei. Un nou dispozitiv, când se conecteaza, devine prin definitie master. Noul dispozitiv trebuie sa permita schimbarea de roluri ca punctul de acces sa poate deveni master din nou si sa continue sa mentina comunicatia cu dispozitivele inferioare existente.

Daca identificarea este realizata cu succes este generat HCI_Connection_Complete si ambele capete ale noii legaturi contin parametri de stare « succes » si alti parametri care descriu conexiunea. Aceasta include utilizarea conexiunii care pentru un dispozitiv master cu inferiori multipli este folosit pentru a ruta date. O identificare poate esua pentru ca este întrerupta sau este respinsa caz în care dispozitivul de identificare genereaza HCI_Connection_Complete cu parametrul de stare « esec ».


▪ Sincronizarea


Multe din principiile din cazul investigarii se aplica si în cazul apelului. Unde exista restrictii asupra sincronizarii investigatiei se definesc si restrictii legate de scanarea apelului. Restrictiile asupra duratei scanarii pentru fiecare apel, numita scanarea ferestrei, variaza în functie de numarul de legaturi de voce existente. Transmisiile de voce au prioritate peste operatiile de apel astfel încât scanarea ferestrei trebuie extinsa pentru a compensa reducerea benzii :

daca nu exista transmisii de voce (SCO) scanarea ferestrei va dura cel putin 11,25 milisecunde ;

daca exista o legatura HV3 scanarea ferestrei va dura cel putin 22.4 milisecunde ;

daca exista 2 legaturi HV3 sau o legatura HV2 scanarea ferestrei va dura cel putin 33,75milisecunde .

Gasirea informatiilor în serviciile pe care le ofera un dispozitiv



Utilizarea si conectarea la serviciile Bluetooth



Trebuie parcurse câteva etape pentru a se folosi un serviciu Bluetooth:

gasirea dispozitivului - investigare ;

conectarea la dispozitiv - apel ;

descoperirea serviciilor pe care le suporta dispozitivul - SDP ;

decizia asupra serviciului la care sa se conecteze si modul de conectare -SDP ;

conectarea la acel serviciu.

Etapele de la 3 la 5 implica conectarea la mai mult de un nivel superior. Conexiunile la aceste nivele superioare trebuie deschise fiecare separat si în ordine. Urmatoarele scheme ilustreaza acest proces în cazul unui dispozitiv audio care se conecteaza si realizeaza o legatura audio cu castile audio.

Etapa1 : gasirea dispozitivului prin investigare





Diagramele sunt simplificate si sunt omise detalii de configurare, deci se considera ca dispozitivul de acces audio si-a configurat parametrii de investigare iar castile sunt în modul de scanare a investigarii.

dispozitivul audio transmite o cerere de investigare nivelelor inferioare.

nivelele inferioare transmit pachetele de investigare în vecinatate.



toate dispozitivele de scanare a investigarii din vecinatate, inclusiv castile, transmit replici cu raspunsul de investigare.

nivele inferioare transmit raspunsurile aplicatiei audio

Este necesar sa se precizeze ca aplicatia legata de casti nu este implicata total : o data configurate nivelele inferioare pentru scanarea investigarii este complet detasata de orice raspunsuri de investigare genereaza nivelele.

Etapa2 : conectarea la dispozitive prin apel




Din nou diagramele sunt simplificate si se omit detaliile de configurare. Se presupune ca poarta audio a configurat parametrii de apel si castile sunt în modul de scanare a apelului.

poarta audio trimite un raspuns de apel nivelelor inferioare.

nivelele inferioare ale portii audio apeleaza castile utilizând propria adresa Bluetooth pentru a genera identificatorul pachetelor pe care numai le vor asculta. Alte dispozitive de scanare a apelului din vecinatate nu vor detecta apelul si nu vor raspunde la el. În aceasta etapa o serie de pachete de nivel scazut sunt interschimbate. Detaliile nu sunt importante cu exceptia faptului ca, castile au transmis informatiile dispozitivului audio incluzând adresa sa Bluetooth si clasa.

nivelele inferioare din casti transmit un mesaj la aplicatiile castilor notificând raspunsul de conexiune. Notificarea cuprinde si adresa si clasa dispozitivului audio care au fost adunate în timpul apelului.

aplicatia castilor trimite o replica la nivelele inferioare acceptând conexiunea.

nivelele inferioare ale castilor trimit raspunsul nivelelor inferioare ale portii audio.

nivelele inferioare ale portii audio trimit mai departe mesajul acceptând conexiunea. Acum poarta audio stie ca are o conexiune de date gata de folosit.

Etapa3 : descoperirea serviciilor pe care le suporta un dispozitiv




Primul lucru pentru conectarea la protocolul de descoperire a serviciilor este realizarea unei legaturi L2CAP utilizând PSM-ul care identifica nivelul SDP.

poarta audio trimite o cerere la propriul nivel L2CAP cerând o conexiune prin PSM la protocolul de servicii al castilor.

cererea este transmisa nivelului L2CAP al castilor care întreaba aplicatia daca doreste sa accepte cererea.

aplicatia headset raspunde ca va accepta o comunicatie cu nivelul SDP.

raspunsul este trimis catre nivelul L2CAP al portii audio care informeaza aplicatia corespunzatoare ca o conexiune L2CAP la nivelul SDP al castilor poate fi folosita.

Etapa4 : decizia asupra serviciului pentru care se realizeaza conexiunea si modul de utilizare al acestuia.





Aplicatia portii audio poate transmite cereri SDP si va primi raspunsuri SDP de la serverul SDP al castilor. Se precizeaza ca din moment ce aplicatia a înregistrat o înregistrare de servicii nu este necesar sa fie implicate tranzactii SDP - nivelul SDP poate raspunde cererii autonom.

Aplicatia portii audio va trimite cererea pentru a regasi înregistrarea serviciilor pentru functia headset. Aceasta verifica daca serviciul este acceptat si ofera informatii despre cum se realizeaza conexiunea la aceasta.

Etapa5 : conectarea la serviciu.





Aceasta etapa începe în acelasi mod în care se conecteaza nivelul SDP prin crearea unei conexiuni L2CAP. Procedura este la fel ca si în cazul în care se creeaza o conexiune L2CAP la SDP cu exceptia faptului ca PSM utilizat în acest caz este cel corespunzator RFCOMM.

Din moment ce conexiunea L2CAP la RFCOMM este stabilita poate fi folosita pentru a trimite mesaje între aplicatia audio si aplicatia headset. Asa cum s-a precizat RFCOMM poate purta mai multe legaturi în acelasi timp, deci dispozitivul audio trebuie sa identifice legatura corecta pe care sa o utilizeze pentru a comunica cu castile.





Din momentul în care poarta audio si castile comunica prin RFCOMM poarta audio poate transmite mesaje de control utilizând comenzi AT. Pentru a notifica aplicatia headset ca exista un apel în asteptare aplicatia audio trimite o comanda AT+RING prin legatura RFCOMM. Daca utilizatorul castilor apasa un buton pentru a accepta apelul castile trimit acest mesaj într-o comanda de tastatura AT+KPD.





Din momentul în care utilizatorul a acceptat apelul o legatura de voce trebuie stabilita. Desi aceasta legatura este controlata folosind RFCOMM este stabilita separat de obicei printr-un nivel de control audio. Din momentul în care legatura de voce este stabilita este controlata de RFCOMM. De exemplu, unele casti suporta controlul volumului utilizând comenzi AT si legatura de voce poate fi distrusa de transmiterea unei comenzi de întrerupere AT+HUP prin legatura RFCOMM.



Procedura exacta pentru utilizarea serviciului este definita în profilul Bluetooth corespunzator. Dupa cum s-a vazut nivelul detaliilor dintr-un profil merge exact la comanda AT care va fi trimisa pe un canal RFCOMM când un anumit buton este apasat. Acest nivel al detaliilor permite un anumit grad de interoperabilitate. Unele proceduri ca cele pentru casti sunt relativ simple în timp ce altele sunt cu mult mai complexe, cum ar fi profilul pentru imprimare.


































Document Info


Accesari: 3841
Apreciat:

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site

Copiaza codul
in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate




Copyright © Contact (SCRIGROUP Int. 2023 )