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
Copy file name to clipboardExpand all lines: README.md
+70-59Lines changed: 70 additions & 59 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,33 +6,85 @@
6
6
7
7
## pytelemetry command line interface
8
8
9
-
This tool is a command-line interface (CLI). It enables superior communication with any embedded device. It was designed for:
9
+
This command-line interface (CLI) enables data visualization and communication with embedded platforms.
10
+
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.
14
+
***Data-plotting**. Plot data from the device in no time, with a single command. Time-varying values, arrays and sparse arrays.
15
+
***Reusability**. Highly flexible protocol, loosely coupled to your application. Suited for a wide number of application scenarios.
16
+
17
+
`Arduino` and `ARM mbed` are currently officially supported.
18
+
19
+
## interface and plot
20
+
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`
***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.
16
26
17
27
## overview
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.
19
28
20
-
*In the future*: export to Excel and CSV and replay command in the CLI for offline inspection.
29
+
The CLI provides a set of commands to connect to a device, read, plot, write data on it, log any received and sent data.
21
30
22
31
The communication protocol that carry all exchanged information is implemented in Python and C:
23
32
*[`pytelemetry`](https://github.com/Overdrivr/pytelemetry)[](https://badge.fury.io/py/pytelemetry) for scripting the communication from your PC
24
33
*[`telemetry`](https://github.com/Overdrivr/pytelemetry): for enabling communication in the embedded device.
25
34
26
35
Officially supported embedded platforms are for now `Arduino` and `Mbed`.
27
36
28
-
See the [central documentation](https://github.com/Overdrivr/Telemetry/wiki) for installation instructions, tutorials, description of the protocol, etc.
37
+
This CLI runs on Windows, Mac OS and Linux.
29
38
30
-
## interface and plot widget
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`
39
+
See the [central documentation](https://github.com/Overdrivr/Telemetry/wiki) for installation tutorials and description of the protocol.
`pytelemetrycli` requires python 3.3+, PyQt4 and numpy.
44
+
45
+
### Windows
46
+
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).
47
+
48
+
In case you were wondering, **no** you **don't** have to install Qt. The binary wheel is enough.
Then, simply install `pytelemetrycli` with pip as usual
58
+
59
+
```bash
60
+
pip install pytelemetrycli
61
+
```
62
+
63
+
### Mac OS
64
+
The easiest way to install numpy and PyQt4 seem to be using `homebrew`.
65
+
lease note that you should also have installed python 3.5 with homebrew for this to work correctly.
66
+
Also, avoid to have another python 3.5 distribution on your system otherwise you will face import issues as well.
67
+
68
+
```bash
69
+
brew install python3
70
+
brew install pyqt --with-python3
71
+
pip3 install pytelemetrycli
72
+
```
73
+
74
+
### Linux
75
+
76
+
The setup used for testing relies on miniconda.
77
+
```
78
+
conda install numpy
79
+
conda install pyqt
80
+
conda install pip
81
+
pip install pytelemetrycli
82
+
```
83
+
However, if you have PyQt4 and numpy already installed in your directory, simply run
84
+
```
85
+
pip install pytelemetrycli
86
+
```
87
+
36
88
37
89
## List of commands
38
90
The command line interface can be started like this
@@ -101,8 +153,8 @@ of the maximum baudrate is being used, etc.
101
153
102
154
Usage: stats
103
155
```
104
-
105
156
### disconnect
157
+
106
158
```bash
107
159
Disconnects from any open connection.
108
160
@@ -115,49 +167,8 @@ Exits the terminal application.
115
167
116
168
Usage: quit
117
169
```
170
+
# Future milestones
118
171
119
-
## installation
120
-
`pytelemetrycli` requires python 3.3+, PyQt4 and numpy.
121
-
122
-
### Windows
123
-
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).
124
-
125
-
In case you were wondering, **no** you **don't** have to install Qt. The binary wheel is enough.
0 commit comments