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
+25-18
Original file line number
Diff line number
Diff line change
@@ -5,22 +5,22 @@
5
5
The `comsrv` utility exposes an [RPC interface](https://github.com/raffber/wsrpc) mainly intended for communicating with lab instruments.
6
6
Currently, the following type of instruments are supported:
7
7
8
-
* Serial Ports
9
-
* VXI-11/LXI Instruments
10
-
* Prologix USB-to-GPIB adapters
11
-
* Modbus/TCP instruments
12
-
* Modbus/RTU over serial ports or TCP streams
13
-
* Raw TCP Sockets
14
-
* USB HID based devices
15
-
* FTDI devices
16
-
* CAN over PCAN and SocketCAN (linux-only)
17
-
* All VISA controlled instruments as fallback (requires VISA installation)
8
+
- Serial Ports
9
+
- VXI-11/LXI Instruments
10
+
- Prologix USB-to-GPIB adapters
11
+
- Modbus/TCP instruments
12
+
- Modbus/RTU over serial ports or TCP streams
13
+
- Raw TCP Sockets
14
+
- USB HID based devices
15
+
- FTDI devices
16
+
- CAN over PCAN and SocketCAN (linux-only)
17
+
- All VISA controlled instruments as fallback (requires VISA installation)
18
18
19
19
`comsrv` automatically manages connections and operating system handles:
20
20
21
-
* If no connection has been established, the connection is automatically opened
22
-
* If the connection drops and a new request is issued, the connection is automatically reopened
23
-
* In case the configuration of a instrument changes (such as the baud-rate on a serial port), it is appropriately re-initialized
21
+
- If no connection has been established, the connection is automatically opened
22
+
- If the connection drops and a new request is issued, the connection is automatically reopened
23
+
- In case the configuration of a instrument changes (such as the baud-rate on a serial port), it is appropriately re-initialized
24
24
25
25
Thus, the application using the `comsrv` should not care much about how connections are managed. It must also not care about spawning threadpools for IO, bridging async and sync interface or worry about library support for exotic protcols. As a consequence most of the connectivity error handling is offloaded
26
26
to the `comsrv`.
@@ -41,16 +41,23 @@ The log will print executed commands as well as inform about communication error
41
41
42
42
## Documentation
43
43
44
-
* The RPC protocol is: https://github.com/raffber/wsrpc. `comsrv` specific information [here](doc/rpc-protocol.md).
45
-
* The Python API is described [here](doc/python_api.md).
46
-
* Optional VISA-compatible resource strings for short-hand initialization of instrument are documented [here](doc/python_resource_strings.md).
44
+
- The RPC protocol is: https://github.com/raffber/wsrpc. `comsrv` specific information [here](doc/rpc-protocol.md).
45
+
- The Python API is described [here](doc/python_api.md).
46
+
- Optional VISA-compatible resource strings for short-hand initialization of instrument are documented [here](doc/python_resource_strings.md).
47
+
48
+
## Building
49
+
50
+
Apart from the rust toolchain you also need the following debian/ubuntu packages:
51
+
52
+
-`libuv-dev`
53
+
-`libclang-dev`
47
54
48
55
## License
49
56
50
57
Licensed under either of
51
58
52
-
* Apache License, Version 2.0, (LICENSE-APACHE or <http://www.apache.org/licenses/LICENSE-2.0>)
53
-
* MIT license (LICENSE-MIT or <http://opensource.org/licenses/MIT>)
59
+
- Apache License, Version 2.0, (LICENSE-APACHE or <http://www.apache.org/licenses/LICENSE-2.0>)
60
+
- MIT license (LICENSE-MIT or <http://opensource.org/licenses/MIT>)
0 commit comments