Ciao, ho necessità di inviare dati con un modulo bluetooth ble, però a velocità ragionevole, dovrei inviare 16 byte, che visto il limite per singolo pacchetto di 20 byte si può fare.
Ho provato a trasmettere con la UART bluetooth una cosa tipo:
BLEuart.write("0123456789abcdef");
ed effettivamente funziona, ed ottengo cosi circa 200 trasmissioni al secondo.
Il problema è che se devo inviare dati da un array devo fare un ciclo, inviando ogni volta una voce dell’array, però questo rallenta notevomente il trasferimento perchè ad ogni pezzetto viene invocata una trasmissione di un solo byte e credo che questo sia un problema del ble.
Tanto è vero che sul ricevitore, se vado a capo ad ogni trasmissione ricevuta, nel primo caso ottengo una riga completa (fino a 20 caratteri/byte), nel secondo caso ottengo tutti i valori uno sotto l’altro a testimonianza che sono pacchetti diversi.
Ora è facile capire che se devo dividere per 16 (il numero dey byte) la velocità di trasmissione questo è un problema.