USB OTG - 3





Il protocollo HNP

Nella nomenclatura dell'OTG il dispositivo HOST iniziale e' chiamato dispositivo A e la periferica iniziale e' chiamata dispositivo B. La parola iniziale e' importante e non usata a caso. Quando connesso, un dispositivo dual role può cambiare ruolo, ovvero da host a  periferica e viceversa, usando il nuovo protocollo HNP (Host Negotiation Protocol ). Tale protocollo risolve due quesiti fondamentali: 

a) come sono determinati i ruoli iniziali

b) perché e' necessario invertire i ruoli?


L'orientamento del cavo di collegamento definisce il ruolo iniziale come mostrato in figura 2. I dispositivi dual role usano un nuovo connettore chiamato mini-AB. I connettori di tipo  mini-A, mini-B e mini-AB hanno un quinto terminale  (ID) per dare una identità elettrica diversa alla parte terminale del cavo. Questo terminale ID e' connesso al potenziale di massa all'interno del connettore di tipo mini-A mentre nel connettore di tipo mini-B e' lasciato flottante ovvero non connesso. 

Il dispositivo OTG che riceve il terminale ID posto a massa assume il ruolo iniziale di host (dispositivo A), mentre quello che riceve i piedino ID flottante assume il ruolo iniziale di periferica ( dispositivo B)

quinto terminale (ID) della porta mini USB determina il ruolo iniziale di host.

Figura 2. Il quinto terminale (ID) determina il ruolo iniziale di host.

Per comprendere la necessità di utilizzare un protocollo HNP e la possibilità di cambiare ruolo, si osservi la figura 3 che mostra la connessione mediante cavo OTG tra due dispositivi dual-role, per esempio un PDA e una stampante. 

 

Collegamento mediante un cavo OTG: situazione opposta a quella richiesta dai dispositivi connessi dal cavo.

Figura 3. Collegamento mediante un cavo OTG: situazione opposta a quella richiesta dai dispositivi connessi dal cavo.

Come si evince dalla figura 3 la connessione utilizzata rende la stampante HOST (dispositivo A) e il PDA come periferica  (dispositivo B)  in quanto il terminale ID e' messo a GND dal lato della stampante. Questo e' in realtà l'opposto di quello che dovrebbe essere in quanto il PDA contiene al suo interno il driver per la stampante e dovrebbe quindi agire come HOST. Per evitare di infastidire l'utente con una richiesta di inversione dei collegamenti si utilizza il protocollo HNP che permette di scambiare i ruoli in maniera automatica.