Add motelist as a submodule

This commit adds contiki-ng/motelist as a submodule under tools/motelist.

The tool aims to automatically detect and output a list of sensor/IoT devices connected to a computer. It has been developed and tested in OSX and Ubuntu. There is currently no support for Cygwin, nor does the tool's author plan to provide such in the future :). The tool is expected to work with Python 2.7 and 3+. It has been tested and successfully detects CC26xx Launchpads and Zolertia RE-Mote and Firefly devices.

Motelist's ultimate goal is to replace vendor-specific motelist-foo tools under the respective tools/ subdirectories, with a single tool that can detect as many devices as possible and that provides its output in a homogenous and script-friendly format. This pull does not remove anything until the new motelist has been tested and found useful.

Unless stated otherwise within individual files, motelist sources are distributed under the terms of the 3-clause BSD license.

Some parts of motelist.py (especially the Linux backend), are based on ideas and original work done by Janis Judvaitis and Atis Elsts.

## Usage
```bash
$ python motelist.py -h
usage: motelist.py [-c] [-o] [-b] [-h] [-v]

Automatically detect and print out a list of motes connected to this computer

optional arguments:
  -c, --csv          Print list in CSV format
  -o, --omit-header  Omit header row
  -b, --brief        Only print serial port paths
  -h, --help         Show this message and exit
  -v, --version      Prints software version

```

Standard output:
```bash
$ python motelist.py
Port          Serial              VID     PID     Product                              Vendor
------------  ------------------  ------  ------  -----------------------------------  -----------------
/dev/ttyACM0  L200015Z            0x0451  0xBEF3  XDS110 (02.02.05.01) with CMSIS-DAP  Texas Instruments
/dev/ttyACM1  L200015Z            0x0451  0xBEF3  XDS110 (02.02.05.01) with CMSIS-DAP  Texas Instruments
/dev/ttyUSB0  ZOL-B001-A20000777  0x10C4  0xEA60  Zolertia Firefly platform            Silicon Labs
```

You can get the output in CSV format:
```bash
$ python motelist.py -c
Port;Serial;VID;PID;Product;Vendor
/dev/ttyUSB0;ZOL-B001-A20000777;0x10C4;0xEA60;Zolertia Firefly platform;Silicon Labs
/dev/ttyACM0;L200015Z;0x0451;0xBEF3;XDS110 (02.02.05.01) with CMSIS-DAP;Texas Instruments
/dev/ttyACM1;L200015Z;0x0451;0xBEF3;XDS110 (02.02.05.01) with CMSIS-DAP;Texas Instruments

```

You can ommit the header row with `-o`. You can also ommit all columns
except the first one with `-b`. You can also combine the `-cob` options:
```bash
$ python motelist.py -ob
/dev/ttyUSB0
/dev/ttyACM0
/dev/ttyACM1
```
This commit is contained in:
George Oikonomou 2018-08-04 14:43:22 +01:00
parent 950bde89c2
commit ffcd04d413
2 changed files with 4 additions and 0 deletions

3
.gitmodules vendored
View File

@ -19,3 +19,6 @@
[submodule "tests/18-coap-lwm2m/example-lwm2m-standalone"]
path = tests/18-coap-lwm2m/example-lwm2m-standalone
url = https://github.com/contiki-ng/example-lwm2m-standalone.git
[submodule "tools/motelist"]
path = tools/motelist
url = https://github.com/contiki-ng/motelist

1
tools/motelist Submodule

@ -0,0 +1 @@
Subproject commit 2f089ac9277521b32371e68391e53d0bd0017288