FWIW: I *have* been, off and on, working on an Android GUI wrapper for that library. The library, though works, is quite poorly written. I've leaned it out a huge amount by dropping features that make absolutely no sense (like storing favorite channels on the radio's internal storage, rather than on the FRIKKIN COMPUTER YOU ARE RUNNING IT ON!!!!!), and stripping it of dependencies that are redundant and stupid, like using a complex data structure like a vector where a 32 byte integer array would be more than adequate. I'm also stripping out its use of a config file, since the whole use of it can be replaced by a single commandline parameter. There are some other things stored in the config file that are really the responsibility of the application *implementing* the library, and not the library itself. I.e., things that SHOULD be stored, in the case of an Android application, in an sqlite database. He's also got some stupid crap in it, like iterating over all the serial devices in /dev and probing them dangerously to see if they respond like an hdradio. Imagine if you're programming a PROM and just want to listen to some radio while its going....
What I'm going to end up with is a bare bones Android application, using the fixed up HDRadioController library via jni. This, I *will* post on github, once I get it to actually work.
I'm mulling over the idea of converting it from C++ to C, which would be much more appropriate, but other parts of it are so poorly written (like the hddefs crap for response type lookup, and processing of RBDS/RDS data) that to really do it well does actually require a bit of a rewrite... and since I'm only using this radio as a stopgap until getting a proper radio circuit working, all that would be wasted. BUT, like I said, I'm going to put it all on github, so anybody feels like continuing the work, they can.