Buongiorno a tutti!
Utilizzando la nota libreria BluetoothSerial.h per ESP32 mi sono accorto che manca la possibilità di impostare un pin di associazione bluetooth per appunto associare un dispositivo.
Ho cercato qualche soluzione sul web e mi sono imbattuto in questo thread su GitHub dove qualche tempo fa si discuteva proprio di questo. Una soluzione ci sarebbe, ed è quella di sostituire il file libbt.a, contenuto nel file zip disable_ssp, con quello presente presso questo percorso:
(WIN) C:\Users<user_name>\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.0\tools\sdk\lib
Tale soluzione funzionerà solo se si fa il downgrade delle schede Espressif 32 alla versione 1.0.1 e ciò comporterà che molte librerie (specie quelle nuove e adattate per le nuovi versioni) avranno problemi, dando errori vari in fase di compilazione in quanto, presumibilmente, andrebbero a mancare delle implementazioni con la vecchissima 1.0.1.
Per ovviare alla mancanza di un pairing pin ho aggiunto al codice la possibilità di comparare il MAC address del dispositivo che si sta connettendo, con quello contenuto in una variabile, e se questo è uguale allora il dispositivo avrà accesso alle varie funzioni, altrimenti il bluetooth si disconnetterà.
Però come soluzione non mi piace tanto e mi sarebbe piaciuta più la possibilità di fare un'associazione con pin, la prima volta che si connette un nuovo dispositivo.
Qualcuno sa se ci sono novità su qualche implementazione per questo pairing pin mancante, oppure se c'è qualche soluzione?
Grazie in anticipo!