android usb serial: Prepare device / driver select

This commit contains the serial_android_usb part of the changes proposed
in issue #2657.

What's implemented:
- A data structure that contains all the data that can be used to
  describe an usb device (including user-facing string).
- A function to get a list of all attached usb devices (optionally with
  selectable driver class).
- Changes in the serial_android_usb_open-function and in the Java part
  to use the information about the usb device and optionally selected
  driver when connecting.

This commit keeps compatibility with the current UI-Code in the case
that only one USB-Device is connected. If two devices are connected,
only the first one is tried.

There are still some small things to do:
- Change the user-facing string to something more descriptive.
- Parts which aren't uesd anymore when the UI-Part is implemented are
  simply marked as obsolete (to keep compatibility for now).

But generally it seems to work.

[Dirk Hohndel: some white space / coding style adjustments]

Signed-off-by: Christof Arnosti <charno@charno.ch>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Christof Arnosti 2020-03-11 11:33:52 +01:00 committed by Dirk Hohndel
parent 822b05bec4
commit a34a81d120
4 changed files with 147 additions and 25 deletions

View file

@ -89,7 +89,7 @@ int main(int argc, char **argv)
void set_non_bt_addresses()
{
#if defined(Q_OS_ANDROID)
connectionListModel.addAddress("usb-serial");
connectionListModel.addAddress("usb-serial"); /* obsolete, can be removed when the new USB device selection is implemented. */
#elif defined(Q_OS_LINUX) // since this is in the else, it does NOT include Android
connectionListModel.addAddress("/dev/ttyS0");
connectionListModel.addAddress("/dev/ttyS1");