One of the simplest ways to get IP in the air has got to be using a smartphone.
I want to work on Android for a couple of reasons, but mostly because you can get an Android phone, unlocked and cheap (used) anywhere in the world.
So... how to get the Android OS to talk to a peripheral via USB? There's a few different approaches, seen in the chart below
|Android OS||ADK||ADB||BT||USB HOST|
|OS < 2.2 (pre Froyo)|
|2.3.3 ≥ OS ≥ 2.2|
|OS ≥ 2.3.4 (phones)|
|OS ≥ 3.1 (tablets)|
The PhoneDrone platform was developed primarily as an ADK (Accessory), rather than using ADB (Android Debug Bridge). The problem is that ADK is only supported in phones running Android v2.3.4 and above, with a linux kernel of 2.6.35 and above.
There are not many Android phones, yet, that support ADK.
However, the PhoneDrone can also be used to run ADB. There are quite a few advantages to ADB communication with the phone, including:
- It runs on pretty much any Android phone
- It does not need a rooted or jail-broken phone
- It is already implemented as an Arduino library
To summarize: There are many ways to get an Android phone connected to a peripheral over USB. I am currently working with the PhoneDrone, but using ADB instead of ADK, so that it is supported by more phones.
Android phones, even used, are far more expensive then drone cell, at least on Ontario they are.
Unless you want to purchase a "used" phone, which in the previous owner had no intention of placing it on the market...... aka Hot :)
Sorry, I disagree. I can get an Android phone, refurbished from a store for less than $100 in the US.
A lot of people may have an older android (like a first generation Droid) that they don't use.
The DroneCell is a good "embedded" solution, but it is $120 + S&H and it can only be used for this purpose.
I will continue working on both DroneCell and Android solutions, though.
You can buy a cheap samsung Android phone here in europe for 60 euros brand new,and even includes credit.Second hand they go for around 20 euro.
I've been planning on adding a feature like this to Andropilot for a while. If you'd like to use andropilot code for this, please let me know and I'll happily answer any questions if you want to hack on it...