Skip to content

Commit fbd3fd1

Browse files
Merge pull request #2118 from jasonrandrews/review
spelling and link fixes
2 parents c5e0bfc + 73c6ab4 commit fbd3fd1

File tree

18 files changed

+173
-40
lines changed

18 files changed

+173
-40
lines changed

.wordlist.txt

Lines changed: 126 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4323,4 +4323,129 @@ taskset
43234323
unicast
43244324
wrk's
43254325
yy
4326-
zenoh
4326+
zenoh
4327+
AFM
4328+
AOR
4329+
AWSEC
4330+
Agrawal
4331+
Arcee
4332+
Atheros
4333+
ChenYing
4334+
Colima
4335+
Corellium
4336+
Corestone
4337+
Croci
4338+
DBAREMETAL
4339+
Denormal
4340+
Docker's
4341+
Dpls
4342+
ETHOSU
4343+
FVP's
4344+
Gopalakrishnan
4345+
Gorman
4346+
HVM
4347+
Higham
4348+
Huai
4349+
ICML
4350+
IIR
4351+
IIoT
4352+
ImageStreams
4353+
Joana
4354+
Kuo
4355+
LANs
4356+
Liang
4357+
Libmath
4358+
MACC
4359+
MACCs
4360+
MachineSets
4361+
MobileNet
4362+
OpenShift's
4363+
PMLR
4364+
PipelineRun
4365+
PreserveOriginal
4366+
Queryable
4367+
Reimport
4368+
SPRA
4369+
STRINGIFY
4370+
Sram
4371+
TMS
4372+
Tekton
4373+
VPs
4374+
VSCode
4375+
WANs
4376+
WR
4377+
Waheed
4378+
Weidmann
4379+
Wikitest
4380+
XQuartz
4381+
Xiu
4382+
ZGVnN
4383+
Zenon
4384+
afm
4385+
aot
4386+
arXiv
4387+
arcee
4388+
armpl
4389+
ath
4390+
bitbake
4391+
bootloaders
4392+
cntr
4393+
cosf
4394+
cpp's
4395+
datadir
4396+
dddd
4397+
denormal
4398+
denormalized
4399+
edgeimpulse
4400+
ethosu
4401+
expf
4402+
geo
4403+
gupta
4404+
iMac
4405+
instrinsics
4406+
ish
4407+
keypair
4408+
learnable
4409+
libcurl
4410+
lldb
4411+
mL
4412+
mM
4413+
mR
4414+
mlr
4415+
nbc
4416+
nbr
4417+
nodeAffinity
4418+
nordic
4419+
oc
4420+
oe
4421+
openshift
4422+
pcs
4423+
podTemplate
4424+
podTemplate's
4425+
postinstallation
4426+
prepending
4427+
prog
4428+
queryable
4429+
redhat
4430+
reimport
4431+
shadergraph
4432+
sheel
4433+
spra
4434+
stefanalfbo
4435+
subnormals
4436+
taskrun
4437+
tg
4438+
thisunrolling
4439+
tokio
4440+
topologies
4441+
umax
4442+
varg
4443+
vexp
4444+
vgetq
4445+
vres
4446+
wifi
4447+
wlan
4448+
wlp
4449+
wlx
4450+
xquartz
4451+
zenohd

content/learning-paths/automotive/_index.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,17 @@ title: Automotive
1212
weight: 4
1313
subjects_filter:
1414
- Containers and Virtualization: 3
15-
- Performance and Architecture: 1
15+
- Performance and Architecture: 2
1616
operatingsystems_filter:
1717
- Baremetal: 1
18-
- Linux: 3
18+
- Linux: 4
1919
- RTOS: 1
2020
tools_software_languages_filter:
2121
- Automotive: 1
22+
- C: 1
2223
- Docker: 2
2324
- Python: 2
25+
- Raspberry Pi: 1
2426
- ROS 2: 1
25-
- ROS2: 1
27+
- ROS2: 2
2628
---

content/learning-paths/cross-platform/multiplying-matrices-with-sme2/1-get-started.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ code-examples/learning-paths/cross-platform/multiplying-matrices-with-sme2/
5858
└── sme2_check.c
5959
```
6060

61-
Amongst other files, it includes:
61+
Among other files, it includes:
6262
- Code examples.
6363
- A `Makefile` to build the code.
6464
- `run-fvp.sh` to run the FVP model.

content/learning-paths/cross-platform/multiplying-matrices-with-sme2/7-sme2-matmul-intr.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -248,8 +248,8 @@ The core of the multiplication is done in 2 parts:
248248
249249
Once again, intrinsics makes it easy to fully leverage SME2, provided you have a
250250
solid understanding of its available instructions. The compiler is automatically
251-
handling many low-level aspects (saving / restoring of the difeerent contexts),
252-
as well as not using registers that are reserved on specific plaforms (like
251+
handling many low-level aspects (saving / restoring of the diferent contexts),
252+
as well as not using registers that are reserved on specific platforms (like
253253
`x18`). Predicates handle corner cases elegantly, ensuring robust execution.
254254
Most importantly, the code adapts to different SVL values across various
255255
hardware implementations without requiring recompilation. This follows the key

content/learning-paths/cross-platform/multiplying-matrices-with-sme2/_index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ prerequisites:
1818
- Intermediate proficiency with the C programming language and the Armv9-A assembly language
1919
- A computer running Linux, macOS, or Windows
2020
- Installations of Git and Docker for project setup and emulation
21-
- A platform that supports SME2 (see the list of [devices with SME2 support](/learning-paths/cross-platform/multiplying-matrices-with-sme2/1-get-started/#devices-with-sme2-support)) or an emulator to run code with SME2 instructions
21+
- A platform that supports SME2 (see the list of [devices with SME2 support](/learning-paths/cross-platform/multiplying-matrices-with-sme2/1-get-started/#devices) or an emulator to run code with SME2 instructions
2222
- Compiler support for SME2 instructions (for example, LLVM 17+ with SME2 backend support)
2323

2424
author: Arnaud de Grandmaison

content/learning-paths/cross-platform/zenoh-multinode-ros2/3_zenoh-multinode.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ In this session, you’ll use Raspberry Pi boards to simulate a scalable, distri
1414

1515
You’ll learn how to use Docker to deploy the environment on physical devices, and how to duplicate virtual instances using snapshot cloning on Arm Virtual Hardware.
1616

17-
This setup lets you simulate `real-world`, `cross-node communication`, making it ideal for validating Zenohs performance in robotics and industrial IoT use cases.
17+
This setup lets you simulate `real-world`, `cross-node communication`, making it ideal for validating Zenoh's performance in robotics and industrial IoT use cases.
1818

1919
### Install Docker on Raspberry Pi
2020

content/learning-paths/cross-platform/zenoh-multinode-ros2/4_zenoh-ex1-pubsub.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ layout: learningpathall
88

99
## Example 1: Simple Pub/Sub
1010

11-
This first test demonstrates Zenoh’s real-time publish/subscribe model using two Raspberry Pi devices.
11+
This first test demonstrates real-time publish/subscribe model using two Raspberry Pi devices.
1212

1313
The following command is to initiate a subscriber for a key expression `demo/example/**`, i.e. a set of topics starting with the path `demo/example`.
1414

@@ -36,4 +36,4 @@ The result will look like:
3636
In the left-side window, I have logged into the device Pi4 and run the z_sub program.
3737
It receives values with the key `demo/example/zenoh-rs-pub` continuously published by z_pub running on Pi in the right-side window.
3838

39-
This basic example shows Zenohs zero-config discovery and low-latency pub/sub across physical nodes.
39+
This basic example shows Zenoh's zero-config discovery and low-latency pub/sub across physical nodes.

content/learning-paths/cross-platform/zenoh-multinode-ros2/5_zenoh-ex2-storagequery.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,13 @@ layout: learningpathall
88

99
## Example 2: Storage and Query
1010

11-
The second example adds Zenohs data storage and querying capabilities—enabling nodes to retrieve historical values on demand.
11+
The second example adds Zenoh's data storage and querying capabilities—enabling nodes to retrieve historical values on demand.
1212

1313
Building on the previous Pub/Sub example, you’ll now explore how Zenoh supports `persistent data storage` and `on-demand querying` -- a powerful feature for robotics and IIoT applications.
1414

1515
In a typical warehouse or factory scenario, autonomous robots may periodically publish sensor data (e.g., position, temperature, battery level), and a central system—or another robot—may later need to query the latest state of each unit.
1616

17-
Unlike Pub/Sub, which requires live, real-time message exchange, Zenohs storage and query model enables asynchronous access to data that was published earlier, even if the original publisher is no longer online.
17+
Unlike Pub/Sub, which requires live, real-time message exchange, Zenoh's storage and query model enables asynchronous access to data that was published earlier, even if the original publisher is no longer online.
1818

1919
In this example, you’ll run the zenohd daemon with in-memory storage and use z_put to publish data and z_get to retrieve it.
2020

@@ -70,5 +70,5 @@ The result will look like:
7070
If you have more than two Raspberry Pi devices, you can run the z_get command on a third RPi to validate that storage queries work seamlessly across a multi-node setup.
7171
{{% /notice %}}
7272

73-
This example shows how Zenohs Storage + Query model supports asynchronous data access and resilient state-sharing—critical capabilities in robotics and industrial IoT systems where network connectivity may be intermittent or system components loosely coupled.
73+
This example shows how Zenoh's Storage + Query model supports asynchronous data access and resilient state-sharing—critical capabilities in robotics and industrial IoT systems where network connectivity may be intermittent or system components loosely coupled.
7474

content/learning-paths/cross-platform/zenoh-multinode-ros2/6_zenoh-ex3-queryable.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ layout: learningpathall
88

99
## Example 3: Computation on Query using Queryable
1010

11-
Next, you’ll explore Zenohs queryable capability, which lets a node dynamically respond to data queries by executing a custom computation or data generation function in this example.
11+
Next, you’ll explore Zenoh's queryable capability, which lets a node dynamically respond to data queries by executing a custom computation or data generation function in this example.
1212

1313
Unlike zenohd which simply returns stored data, a queryable node can register to handle a specific key expression and generate responses at runtime. This is ideal for distributed computing at the edge, where lightweight devices—such as Raspberry Pi nodes—can respond to requests with calculated values (e.g., sensor fusion, AI inference results, or diagnostics).
1414

1515
### Use Case: On-Demand Battery Health Estimation
1616

1717
Imagine a robot fleet management system where the central planner queries each robot for its latest battery health score, which is not published continuously but calculated only when queried.
1818

19-
This saves bandwidth and enables edge compute optimization using Zenohs Queryable.
19+
This saves bandwidth and enables edge compute optimization using Zenoh's Queryable.
2020

2121
### Step 1: Launch a Queryable Node
2222

content/learning-paths/cross-platform/zenoh-multinode-ros2/7_zenoh-querycomp.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ layout: learningpathall
1010

1111
Finally, you’ll combine pub/sub, storage, and queryable components to simulate a distributed computation flow—demonstrating how Zenoh enables intelligent, coordinated edge systems.
1212

13-
You’ll learn how to use Zenohs Queryable API in Rust to build a parameterized query system for estimating battery health at the edge.
13+
You’ll learn how to use Zenoh's Queryable API in Rust to build a parameterized query system for estimating battery health at the edge.
1414

1515
This extends a previous example by supporting runtime query parameters like battery level and temperature.
1616

@@ -93,7 +93,7 @@ async fn main() -> zenoh::Result<()> {
9393
}
9494
```
9595

96-
This edge node responds to real-time queries using Zenohs Queryable API. It listens for requests on the robot/battery/estimate key and returns a calculated battery health score based on provided input parameters.
96+
This edge node responds to real-time queries using Zenoh's Queryable API. It listens for requests on the robot/battery/estimate key and returns a calculated battery health score based on provided input parameters.
9797

9898
The program starts by establishing a Zenoh session using open(Config::default()). It then registers a queryable resource on the robot/battery/estimate key. Whenever this key is queried, a callback function is invoked asynchronously using tokio::spawn.
9999

@@ -160,7 +160,7 @@ The excepted output will be
160160
>> Received ('robot/battery/estimate': 'Estimated battery health: 85%')
161161
```
162162

163-
You’ve just built a responsive, parameterized edge compute service using Zenohs Queryable API in Rust — a lightweight but powerful pattern for real-time intelligence at the edge.
163+
You’ve just built a responsive, parameterized edge compute service using Zenoh's Queryable API in Rust — a lightweight but powerful pattern for real-time intelligence at the edge.
164164

165165
This approach not only minimizes network overhead but also enables each device to process and respond to context-aware queries on demand.
166166
It’s a strong foundation for building scalable, event-driven IoT systems that can adapt dynamically to operational needs.

0 commit comments

Comments
 (0)