Arduino to Android or some other front end


I am working on a project where I have some sensor data processing on Arduino.

I want to add a front-end and some controls to display and log the data and control some outputs
on Arduino.

So far, I have tried using HC-05 Bluetooth module and my Android application which I have written.

I can successfully control Arduino from my Android device, however, when I send sensor data from Arduino to Android, it seems to become garbled, or the datatype is not correct. I am sure this is some simple problem which I have overlooked (as I am not a professional) however...

I am doubting my approach, should I instead use the Internet and some kind of web service to do this? Would this be easier? Are there any popular methods of achieving this which I have missed?

I welcome any comments and opinions of the project, but understand that I do not want to use the Arduino Terminal style applications available on the Play Store.


Without seeing your Arduino program how can we help?

Have you tried sending the Arduino output to the Arduino Serial Monitor? If that works properly then the problem is within your Android program and you need to seek help on an Android Forum.


Thanks for the reply Robin2.

I can post my code but is this the correct place for that? I would prefer to post a more specific question in the programming sub-forum.

I was more interested in hearing about any other de-facto standard approaches such as using web services or some kind of eco-system with dedicated hardware and software API.

Thanks again.

Of course it's OK - actually it's pretty much mandatory to post your code if you want help fixing it.

There are several ways to have Arduinos communicate with Android phones; Bluetooth being one of them and for short-range peer to peer communication the simplest to set up.

Indeed first make sure your data looks correct in the Serial monitor. That way you can make sure you're transmitting your data correctly for starters. Only when you know you're sending out the data as you intend to, you can work on fixing the receiving end (assuming that's where the error is).