Tom posts some excellent points:
>Why is Android is such a good platform for programming radios that you're willing to rewrite Chirp?
>You should try to articulate this. If you can't, maybe it's not worth your time.(TRUE!!)

- Because I don't carry a laptop or netbook, and don't want to start. I do carry a phone or tablet. 
- Android vs. iOS....because Android has a larger market share, and because I think it will be easier. I might be proven wrong!  
- I see a few other people have requested it
- Because I have too much time on my hands?? ;)

>If you're going to use the Chirp brand name, we should probably review your work before release.

I concur.

> You have to go to great lengths to run Python on Android, such as not using the standard development
tools.

Based on my short-term research, there are already several python engines already in the Play store for Android. I'm not sure they have all the required modules, but the point is that there are already several tools available.  Early thoughts are to write a native Android app for the GUI, with callouts to python scripts to do the real work, including talking to the phone. Based on my limited info on the structure of Chirp, I think this may be a feasible approach, which could (should) lead to comparable radio/driver support to the regular version.

>The app [USB-Serial port driver] is free, but he sells the use of the library that makes it possible, right?

You may be right. In the meantime, I have found several other serial port implementations, including Prolific themselves, as well as certain versions of Android. So there are options, subject to significantly more research. Very much hardware dependent...I sense some cable shopping coming up if this moves forward. I admit I would target those devices I have access to first: Nexus, Moto X, Samsung Stratosphere and Samsung S4. More variety might be helpful.

Bluetooth is the only interface I can see being popular with Chirp for Android. 

Well, I can't say I disagree, however the price point for bluetooth dongle vs a serial cable + adapter for micro may shift the demand somewhat. Personally, I am more willing to spend $10 for a USB adapter than $85 for a BT adapter on the chance that it might work.  I have concerns about the reliability of serial communications across BT. A good place to explore - but that's more of a stretch, since Chirp doesn't do that today, right?  (or maybe that's the killer feature??)

> #4: Is this list the right place to continue discussions?
>If this gains traction it may be worth creating a dedicated list.

I hope it does...I'm not able to do all the work required!



On Tue, Apr 8, 2014 at 1:08 PM, Tom Hayward <esarfl@gmail.com> wrote:
On Tue, Apr 8, 2014 at 7:02 AM, Rich Barstow <kc1bhr@barstow.cx> wrote:
> So I'm new to Chirp, did some looking around, and posted some questions
> around Android-based CHIRP to the user list, and they (Tom H) suggested the
> Developers list would be a better place to discuss.
>
> Exec Summary:
> I want to lead an effort to develop an Android version of CHIRP.
>
> My Goals of the Project:
>
> Get permission from the existing owners to extend CHIRP

No permission required. That's the beauty of the GPL :-) The primary
stipulation is that you release the source along with any binary you
distribute that contains any intellectual property from the Chirp
project.

> Questions for this list: (I have so many!)
> #1: Is this a good idea?

I'm a Chirp power user (I don't just develop for fun; I program a lot
of radios!) and I've never needed or wanted to use Android to power a
radio. The lack of keyboard and screen space makes this sound very
unappealing (yes, I have a tablet and a Bluetooth keyboard and still
feel the laptop is a better solution).

I'm not sure exactly why you've decided Android is such a good
platform for programming radios that you're willing to rewrite Chirp.
You should try to articulate this. If you can't, maybe it's not worth
your time.

> #2: Are you willing to let me try?

Can't hurt.

> #3: What would be a good level of "linkage" between the "computer" and
> "mobile" teams?

If you're going to use the Chirp brand name, we should probably review
your work before release. I'd expect feature parity, 100%
compatibility of radio drivers (ability to run our Python radio
drivers--I'll touch on this later), and code review to ensure there's
nothing malicious.

> #4: Is this list the right place to continue discussions?

If this gains traction it may be worth creating a dedicated list.

> Milton Hywatt:
> In my early Android days I did a lot of data mining Using Google for any
> information I could get my hands on. I guess if you are lucky to find people
> that know and program both PyGTK and the Android GUI would be a good start.
> Like mentioned before the actual guts of the program that moves, collects
> and  organizes the data portion would probably have no trouble in Android.

This isn't really accurate. Almost all Android development is done in
Java, and Chirp is written in Python. You have to go to great lengths
to run Python on Android, such as not using the standard development
tools. I suggested Kivy because it provides a way to compile Python
for Android. This is not a trivial thing and makes the Android
development process very different.

Disclaimer: I've done very little Android development so this may not
be 100% accurate.

On Tue, Apr 8, 2014 at 7:31 AM, Rich Barstow <kc1bhr@barstow.cx> wrote:
> Jon:
>
> Actually, I found a (free) app written by someone that implements a driver
> for the Prolific USB-Serial port chipset. (Orginally written to support
> Tablet to Router/Switch for command line changes)
>
> https://play.google.com/store/apps/details?id=slickdevlabs.apps.usb2serialdemo

The app is free, but he sells the use of the library that makes it
possible, right? Ignoring the cost, I presume this comes with the
inability to release the source code as part of an open source
project.

By the way, this app/library is only useful for Android devices that:
1. Have USB host/OTG
2. Don't have the PL-2303 kernel drivers

He implements the driver in userspace (a Java lib I believe--oh, I
wonder if this makes it impossible to use with Chirp) so that it can
be used by devices that lack the kernel driver. If your Android device
already has this driver built in or you can compile your own kernel,
this library is unnecessary.

P.S. I think he has one for FTDI too. I've used it for packet, converse mode :-)

> Native BlueTooth on Android supports serial communications, however most
> target radio devices do not. (Ok, I did see that Baofung released a BT
> adapter - that costs 150% of the radio cost.)

Bluetooth is the only interface I can see being popular with Chirp for
Android. Everything else has too many dependencies. I've never tried
programming a radio with serial-over-Bluetooth. Not sure how well it
would work. You should test it.

Tom KD7LXL