1
resposta

[Dúvida] Arduino e Flutter com Bluetooth

Preciso enviar e receber dados do arduino para o app que estou desenvolvendo (Flutter com Dart) via bluetooth. A parte de enviar do app para o arduino deu certo, mas estou tendo dificuldades em enviar do arduino para o app, especificamente no modo como o flutter deve receber o dado. Estou enviando uma string bluetooth.write("teste") (também já tentei o bluetooth.print("teste")), ela não será printada no app mas servirá como decisor de algumas ações. Alguém tem alguma sugestão? Estou usando o android studio, arduino uno, HC-05.

1 resposta

Olá, Ana!

Embora o bluetooth.write("teste") não mostre a mensagem diretamente no app, ele de fato envia o dado para o dispositivo conectado. Pra capturar essa informação e utilizá-la nas ações desejadas, algumas etapas são necessárias:

1. Implementar a recepção de dados no Flutter:

  • Utilize o pacote flutter_bluetooth_serial para gerenciar a comunicação Bluetooth.
  • Crie um canal de recepção (StreamSubscription) para escutar os dados recebidos do Arduino.
  • Dentro do manipulador de eventos do canal (onDataReceived), processe os dados recebidos (no seu caso, a string "teste").

2. Decodificar e interpretar a mensagem:

  • Verifique se a mensagem recebida corresponde ao formato esperado (no caso, uma string).
  • Se necessário, converta a string em um tipo de dado útil para sua aplicação (por exemplo, int, double ou um objeto personalizado).

3. Executar as ações desejadas:

  • Com base na mensagem interpretada, utilize estruturas de controle (como if/else ou switch/case) para direcionar o fluxo do seu código e executar as ações correspondentes.
  • Atualize a interface do usuário do seu aplicativo de acordo com as ações realizadas.

Recursos Adicionais: