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: src/pycyphal2/__init__.py
+12-12Lines changed: 12 additions & 12 deletions
Original file line number
Diff line number
Diff line change
@@ -5,15 +5,15 @@
5
5
6
6
Supports various transports such as Ethernet (UDP) and CAN FD with optional redundancy.
7
7
8
-
## Installation
8
+
# Installation
9
9
10
10
Optional features inside the brackets can be removed if not needed; see `pyproject.toml` for the full list:
11
11
12
12
```
13
13
pip install 'pycyphal2[udp,pythoncan]'
14
14
```
15
15
16
-
## Usage
16
+
# Usage
17
17
18
18
Set up a transport, make a node, publish and subscribe:
19
19
@@ -48,7 +48,7 @@ async def main():
48
48
49
49
There exist 4 kinds of topic names in Cyphal, used effectively they allow the developer to split up complex systems into smaller sub-systems, simplifying development and debugging.
50
50
51
-
#### 1. Relative Name
51
+
### Relative Name
52
52
53
53
A relative name is a name that does not start with '/' or `~/`.
Example: We want to configure an antenna to transmit at a specific frequency. The antenna node has a `~/config/frequency` topic that we can publish to.
125
125
126
-
#### 4. Pattern Name
126
+
### Pattern Name
127
127
128
128
A pattern name contains wildcard `*` (matches any _single_ name segment)
129
129
@@ -143,7 +143,7 @@ async def main():
143
143
Example: `*/battery_pct` to subscribe to all nodes publishing battery data, of which there may be multiple per vehicle.
144
144
'logs/>' to subscribe to all topics publishing under '/logs' which may contain 'log_info', 'log_warning', 'log_error' topics.
145
145
146
-
#### Extra functions
146
+
### Extra functions
147
147
148
148
*Topping* is the process by which a unique subject ID is assigned upon initialization.
149
149
For some applications that require a high level of reliability, determinism is required and can be achieved by using `#` to pin a topic to a specific subject ID.
@@ -186,7 +186,7 @@ async def main():
186
186
187
187
See also :meth:`Node.remap`.
188
188
189
-
### Publish
189
+
## Publish
190
190
191
191
Publication is best-effort by default. Pass `reliable=True` when publishing to retry delivery until
192
192
acknowledged by every known subscriber or until the deadline; if the remote side does not acknowledge in time,
0 commit comments