Arduino Controller android app

hello Marque,

I worked a little bit with my adapted Sketch. I will attach the new Sketch to this post. The new Errorlog is this:

ARDUINO_CONTROLLER.ino: In function 'void checkclient()':
ARDUINO_CONTROLLER:141: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:142: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:143: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:144: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:145: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:146: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:147: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER:158: error: cannot convert 'RedFlyClient' to 'RedFlyClient ()()' for argument '2' to 'void action(int, RedFlyClient ()())'
ARDUINO_CONTROLLER.ino: In function 'void action(int, RedFlyClient ()())':
ARDUINO_CONTROLLER:180: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:181: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient ()()'
ARDUINO_CONTROLLER:186: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:187: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient ()()'
ARDUINO_CONTROLLER:192: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:193: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient ()()'
ARDUINO_CONTROLLER:198: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:199: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient ()()'
ARDUINO_CONTROLLER:204: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:205: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient ()()'
ARDUINO_CONTROLLER:210: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:211: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient ()()'
ARDUINO_CONTROLLER:216: error: request for member 'print' in 'client', which is of non-class type 'RedFlyClient (
)()'
ARDUINO_CONTROLLER:217: error: request for member 'println' in 'client', which is of non-class type 'RedFlyClient (*)()'

There is a new version of the arduino controller android app available in google play. This app will cost you a beer for my effort but it has a some new features and it will let you costumize it so it looks specialy disigned for your arduino project.

Changes made to this version:
-The size of the webview automaticaly ajusts to the content
-Improved use of resources and battery usage
-URL and IP support (eg. www.mysite.com or 143.34.175.45)
-Custom activity name (the name you see on the main screen of the app)
-More buttons (32!)
-Buttons are hidden when you dont use them
-Strings can contain all alpha numeric symbols

Arduino Controller Pro can be found in google play.
And the example sketch on dropbox.

Now there is a free version with ads as well.

Hi Marque

Thanks for the excellent update, very useful and easy to adapt to my needs.
Suggestion for next update:

  • login to access to the application for security reason (switch off on alarm, ..).
  • in settings - add button for save profile for save configuration (conf. A, conf B, ..(I use this app to access to different arduino board with different functionality: alarm, control heat pump, lights, ...)

thx

Lesz

Alesz:
Hi Marque

Thanks for the excellent update, very useful and easy to adapt to my needs.
Suggestion for next update:

  • login to access to the application for security reason (switch off on alarm, ..).
  • in settings - add button for save profile for save configuration (conf. A, conf B, ..(I use this app to access to different arduino board with different functionality: alarm, control heat pump, lights, ...)

thx

Lesz

Profiles willen be implemented in the next version, coming next week. Login feature is still on the drawingboard.

Hello Marque,
is it possible to control more than one Arduino with different IP-Adresses?
(Home Automation for different Rooms)

thx
Ruediger

ruediger64:
Hello Marque,
is it possible to control more than one Arduino with different IP-Adresses?
(Home Automation for different Rooms)

thx
Ruediger

Hi, In the next version there is support for three profiles with diferent ip adresses. I hope to finish it next week.

marque:
Now there is a free version with ads as well.

On rooted phones it is already possible to back up your settings by backing up the XML file in data/data/com.marquesoft.arduinocontroller/shared_prefs

I received a question in my mail, but i prefer to give support in this forum.

Hey,

Thanks for making the app I just have one quick question. I was looking at your example sketch (http://dl.dropbox.com/u/29369544/Arduino%20Controller/ArduinoController/ArduinoController.ino) and I am confused as to where you are sending an html line back to the app? Can you please point me to the line of code where you send the simple html line that you can view in the browser on the phone?

Thanks, W

Hi W,
Just above setup are the html lines that are send to the android aplication;

char content_main_top[] = "<body bgcolor=black><font color=white><center>";
char S1[] = "1 is on" ;
char S2[] = "1 is off" ;
char S3[] = "2 is on";
char S4[] = "2 is off";
char S5[] = "up";
char S6[] = "down";
char S404[] = "Not Found";

The first line sets background black, text white and allignment centered. The last line is the defaul one so when there is no command recognized.
The rest of the lines can be customised.

They are send in the following code;

if (x == 1) 
  {client.print (content_main_top);
   client.println(S1);
   Serial.println(S1);

You don´t need to use the static references, you can do the following as well;

if (x == 1) 
  {client.print (content_main_top);
client.print(" Software version: ");
    client.print(sketchname);
    client.print("
 ");
    client.print("Free Ram: ");
    client.print(freeRam());
    client.print("
 ");
    client.print(" System time: ");
    client.print(time);

I hope you get it working! Else, please let me know.

Now there is a updated version available in Google play.
Changes made to this version:

  • complete new layout
  • three different profiles
  • example layout on profile 3 set up for the arduino example sketch
  • password protected login

Next version will have a customisable widget and can save and restore profiles.

Well, my news does not actually relates to this app, but i believe it will be interesting for those who love Arduino and Android.
Please welcome ArduinoDroid - Arduino IDE for Android:
https://play.google.com/store/apps/details?id=name.antonsmirnov.android.arduinodroid

Now there is a new tutorial in the first post.

this system is amazing man!very great work!
if it helps,i noticed something to fix or at least check:
1-sometimes the switch from an example to other,need 2\3 taps,it doesn't refresh how it would
2-i have third and second colomns names inverted in the settings (only names)

After that,the application is great!
can you point me out what kind of use i can do with b and c square box?what do i have to write there?
thanks for the work,very appreciated!

sert00:
this system is amazing man!very great work!
if it helps,i noticed something to fix or at least check:
1-sometimes the switch from an example to other,need 2\3 taps,it doesn't refresh how it would
2-i have third and second colomns names inverted in the settings (only names)

After that,the application is great!
can you point me out what kind of use i can do with b and c square box?what do i have to write there?
thanks for the work,very appreciated!

Hi Sert00,
Great to hear you like the Arduino Controller and thanks for giving me the feedback so I can make it even better.
Problem "1" you are mentioning should be solved from version 2.0.8. Problem "2" I was not aware of that yet, so I will fix it in the next update.
If you have more suggestions, tips or bugs please let me know.

Hi marque! :slight_smile:
i'm trying the new update.what i see at first look is that:

  1. in settings,every profile has a little typo in adress name (adres)
    2.in settings,the name "application settings has a little typo (aplication)and also in the box inside when you click
  2. the previous release problem of name inverted is still here.i mean,when you want to write a label on buttons for each coloumn(3 in total)you have:
    first coloumn parameters..and is ok
    second coloumn parameters---and it's ok because it act directly to second coloumn's settings,but it's labelled third colomn instead of second.
    of course also the third is switched,you have only to switch 2 name.
    Like you see i reported only very little bugs related only to grammatical and logic things.
    I'll report as well if find something wrong!thanks for the hard work XD
    ps--can you reply on what i asked you 2 post ago?here below pasted :

"can you point me out what kind of use i can do with b and c square box?what do i have to write there?"

sert00:
Hi marque! :slight_smile:
i'm trying the new update.what i see at first look is that:

  1. in settings,every profile has a little typo in adress name (adres)
    2.in settings,the name "application settings has a little typo (aplication)and also in the box inside when you click
  2. the previous release problem of name inverted is still here.i mean,when you want to write a label on buttons for each coloumn(3 in total)you have:
    first coloumn parameters..and is ok
    second coloumn parameters---and it's ok because it act directly to second coloumn's settings,but it's labelled third colomn instead of second.
    of course also the third is switched,you have only to switch 2 name.
    Like you see i reported only very little bugs related only to grammatical and logic things.
    I'll report as well if find something wrong!thanks for the hard work XD

Hi,
Thanks for point out the typo's, everything should be fixed now.

ps--can you reply on what i asked you 2 post ago?here below pasted :

"can you point me out what kind of use i can do with b and c square box?what do i have to write there?"

I explaned the use of these boxes in the message below:

thanks Marque,i didn't see that post!

Hallo Marque,
Do You know why the light version works on my galaxy S7500, and the other versions(pro ad and pro)are not compatible ?(according to google play).

Great program.
Nico

Hello Marque

First of all i would like to thank you for this great application you have no idea how helpful it is with my project, to begin with my project is a multi-axis sun tracking system that uses mathematical models to calculate the suns position and then send the servo motors to the the calculated angles. The program starts with a simple user interface where it asks the user to enter the location as (Longitude/ latitude) then the date and time, this is done by using an attached keypad and an lcd screen. To not take any longer of your time here is my question can i use the arduino application as the other alternative for the data input and for feed back; for example i can add a temperature sensor and use it for feedback in case of extreme temperatures, if this is possible please let me know how and also i would like to know what level of programing it needs because am still a beginner and have limited information on arduino programing. Thank you very much and i appreciate you work.

Negmy..

vadeveni:
Hallo Marque,
Do You know why the light version works on my galaxy S7500, and the other versions(pro ad and pro)are not compatible ?(according to google play).

Great program.
Nico

Hi,

This is because the pro versions are designed for android 3.0+