estou aprendendo a trabalhar com arduino e android, segui alguns tutoriais, e consegui comunicar, trocar dados, mas a aplicação nao roda, está dando erro de leitura na tabela e nao sei como corrigir, alguém consegue me ajudar?
esse é o erro:
aqui está a parte do programa que envio os dados:
void loop() {
if (bluetooth.available()) {
parser (bluetooth.read()) ;
}
if (Serial.available()) {
parser (Serial.read()) ;
}
Me parece que este erro da imagem "Runtime Error" significa que seu programa está tentando usar dados que não estão disponíveis na lista, geralmente para não ocorrer este tipo de erro, o programador deve testar o tamanho da lista, se houver um tamanho de 20 posições por exemplo, como o programa vai conseguir ler a posição 21?
Sempre que houver algum erro que não conheça, experimente colocar as referencias do erro no Google, neste caso "Attempt to get item number" em conjunto com o nome do software que está sendo usado, ou a linguagem.
E um dos problemas mais comuns que eu tive relacionado a comunicação serial, é o valor e comprimento dos dados, eu não consigo no momento analisar seu trabalho, mas eu tive sucesso com comunicação serial só após definir um protocolo, onde os dados são transmitidos em uma ordem e tamanho pré definidos,
Também pode ajudar se utilizar um terminal para analisar os dados, um que me ajudou muito foi o Hercules, que pode ser configurado para exibir os dados em valor hexadecimal, muito útil no caso de usar cabeçalhos, checksum etc, que não são exibidos em modo texto:
Talvez isso ajude: No Google, buscando por "API Frame Format in Zigbee Protocol", no modo imagens pode ser mais fácil encontrar detalhes interessantes.