I'm trying to work out the feasibility of this project...
I bought an IOIO from sparkfun and managed to get eclipse installed and the hello IOIO example working- it's now talking to my phone! I can use a button on the screen of the android phone to turn on and off an led. So far so good!
Thing is, I thought i'd be able to use arduino code to do what I need to do - that is, set up a series of buttons on the phone screen, each of which activates a different number of solenoids and a sweep of a servo arm when pressed. I'm confident i could do this using a standard arduino, the servo library and a number of physical buttons, however it looks like i'm going to need to code in java to use the ioio board directly to do the same thing. And i'm really struggling to understand how it works.
Should I ask someone for some in depth java tutoring, (can i even use the servo library?) to achieve this, or connect an arduino to the ioio somehow so that it takes inputs as triggers from the ioio to carry out the functions I want to get out? A quick response form the solenoids and the servo is important too once the button is pressed on the phone screen.
It sounds as if the hard part is writing the Android application to display the buttons and send the corresponding commands to the IOIO.
I suggest you start with the example Android application you already have working, and see if you can recognise the part of the code that defines the button and what happens when the button is pressed. Since this is provided as an example, it should be reasonably simple and I think you have a good chance of figuring out what it does.
Although it means you have to write a little bit of Java code, the code you'd be writing would be very simple and essentially just adding code similar to what is already there. Since the syntax of Java is very similar to 'C' (which is very similar to the Wiring code you will be using to write your Arduino sketch) you should find that work in either language helps you understand the other.
If that seems like too much to tackle at first, you can always leave the Android application alone, stick with your existing example, and just change the Arduino sketch to do something different triggered by the existing button on the Android. Once you're more confident on the Arduino sied you can go back and add the extra buttons to your Android application so that you can access the different Arduino commands independently.
Thank you for your help! Perhaps I just need to look at it more carefully as you suggest, i'm pretty sure i can use the same output that switches an led on and off to control a solenoid, but producing a predefined sweep using a servo i'm less sure about. When you say
"just change the Arduino sketch to do something different triggered by the existing button on the Android."
I'm a little less certain about what you mean, as far as i can make out, there is no arduino sketch on the ioio, just the java program used to make the android application. Do you mean i should connect an arduino to the ioio? Maybe i've got the wrong end of the stick here?
IOIO has been specifically designed so that you don't need to write embedded code, but rather do everything on the Android side. If you don't like Java, there are several users using IOIO from processing for Android and from Basic4Android (don't have much more info on that).
The handbag library for Arduino took the opposite approach where you only write Arduino code but the downside is that you are very limited on what you can do on the Android side, and that you're probably limited to a very few Android devices (those with USB accessory support). IOIO would support any Android devices, will work over Bluetooth too and is probably cheaper than any ADK board.
Last, IOIO is NOT Arduino, so this forum is probably the wrong place to ask. The ioio-users Google group is your friend.
Ah, thank you. I think i did get the wrong end of the stick, I figured this was a new type of arduino which uses the interface of an android phone instead of processing on the computer for example, rather than a way to add on new functions to android applications, if that make sense. I've never attempted java code before, but it looks like i need to do some research and learning. I'll look at processing for android as you suggest too. I'll head on over to the google group and stop being off-topic here!
I'm really impressed so far by the ioio, once i finally got eclipse working it ran the helloioio like a dream! I'm going to try it with a bluetooth dongle later on.