You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
[](https://badge.fury.io/py/pytelemetrycli)[](https://gitter.im/Overdrivr/pytelemetry?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)[](http://waffle.io/Overdrivr/pytelemetrycli)
[](https://gitter.im/Overdrivr/pytelemetry?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[](http://waffle.io/Overdrivr/pytelemetrycli)
2
6
3
7
## pytelemetry command line interface
4
8
5
-
This tool enables superior communication with any embedded device. It is for you if:
9
+
This tool is a command-line interface (CLI). It enables superior communication with any embedded device. It was designed for:
6
10
7
-
* you are using `printf` to debug your application
8
-
* you are all the time re-writing custom protocols for the serial port
9
-
* you need a **reliable** and **error-tolerant** communication protocol
10
-
* you want to finely tune your application without loosing time compiling & flashing just to tune a parameter
11
-
* you want to **plot** parameters on the device in **real-time**
12
-
* your embedded device has very limited resources and will tolerate only a lightweight communication library
11
+
***fast prototyping and debugging**. Set everything up in a few minutes and start debugging any embedded device efficiently. Forget about `printf`. Forever.
12
+
***communication-based applications**. Stop re-writing custom protocols for each new project.
13
+
***real-time update of embedded application parameters**. Tune your application without loosing time compiling & flashing just for parameter tuning.
14
+
***plot** data from the device in real-time. Standard linear data is supported, but also arrays, sparse arrays. In the future, also Matrices, XYZ, and RGB-type codes.
15
+
***Reusability**. The protocol is highly flexible, loosely coupled to your application. It can be used in a wide number of application scenarios.
13
16
14
17
## overview
15
-
pytelemetry-cli is a **command line interface**. It provides a set of commands to connect to a device, read, plot and write data on it.
18
+
This CLI provides a set of commands to connect to a device, read, plot, write data on it, log any received and sent data.
The communication protocol that carry all exchanged information is implemented in Python and C:
23
+
*[`pytelemetry`](https://github.com/Overdrivr/pytelemetry)[](https://badge.fury.io/py/pytelemetry) for scripting the communication from your PC
24
+
*[`telemetry`](https://github.com/Overdrivr/pytelemetry): for enabling communication in the embedded device.
22
25
23
-
To communicate with the device, you only need to make your device use the [`telemetry`](https://github.com/Overdrivr/pytelemetry)
24
-
library.
26
+
Officially supported embedded platforms are for now `Arduino` and `Mbed`.
25
27
26
-
## principle
27
-
The underlying communication protocol mostly follows the [PubSub](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern)(publish/subscribe) messaging pattern.
28
-
29
-
> [..] messages are published to "topics" or named logical channels. Subscribers in a topic-based system will receive all messages published to
30
-
> the topics to which they subscribe [..].
31
-
> *Source: Wikipedia*
28
+
See the [central documentation](https://github.com/Overdrivr/Telemetry/wiki) for installation instructions, tutorials, description of the protocol, etc.
32
29
33
30
## interface and plot widget
34
31
Aan example of listing serial ports `ls -s`, connecting to a device through COM20 `serial com20 --bauds 115200`, listing all received topics `ls` and opening a plot on topic touch `plot touch`
@@ -37,49 +34,6 @@ Aan example of listing serial ports `ls -s`, connecting to a device through COM2
`pytelemetrycli` requires python 3.5+, PyQt4 and numpy.
43
-
44
-
### Windows
45
-
It is recommended to download [`numpy`](http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy) and [`PyQt4`](http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4) wheels python packages (courtesy of Christoph Gohlke).
46
-
47
-
In case you were wondering, **no** you **don't** have to install Qt. The binary wheel is enough.
@@ -152,3 +106,49 @@ Exits the terminal application.
152
106
153
107
Usage: quit
154
108
```
109
+
110
+
## installation
111
+
`pytelemetrycli` requires python 3.3+, PyQt4 and numpy.
112
+
113
+
### Windows
114
+
It is recommended to download [`numpy`](http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy) and [`PyQt4`](http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4) wheels python packages (courtesy of Christoph Gohlke).
115
+
116
+
In case you were wondering, **no** you **don't** have to install Qt. The binary wheel is enough.
0 commit comments