Merge pull request #3702 from BartMassey-upstream/std-example-cosmetics

std example cosmetics
This commit is contained in:
Dario Nieuwenhuis 2025-01-02 10:30:17 +00:00 committed by GitHub
commit 87b4d949bd
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 18 additions and 11 deletions

View File

@ -1,16 +1,12 @@
## Running the `embassy-net` examples
First, create the tap0 interface. You only need to do this once.
First, create the tap99 interface. (The number was chosen to
hopefully not collide with anything.) You only need to do
this once.
```sh
sudo ip tuntap add name tap0 mode tap user $USER
sudo ip link set tap0 up
sudo ip addr add 192.168.69.100/24 dev tap0
sudo ip -6 addr add fe80::100/64 dev tap0
sudo ip -6 addr add fdaa::100/64 dev tap0
sudo ip -6 route add fe80::/64 dev tap0
sudo ip -6 route add fdaa::/64 dev tap0
sudo sh tap.sh
```
Second, have something listening there. For example `nc -lp 8000`
@ -19,5 +15,5 @@ Then run the example located in the `examples` folder:
```sh
cd $EMBASSY_ROOT/examples/std/
cargo run --bin net -- --static-ip
sudo cargo run --bin net -- --tap tap99 --static-ip
```

View File

@ -1,3 +1,5 @@
use core::fmt::Write as _;
use clap::Parser;
use embassy_executor::{Executor, Spawner};
use embassy_net::tcp::TcpSocket;
@ -71,8 +73,10 @@ async fn main_task(spawner: Spawner) {
return;
}
info!("connected!");
loop {
let r = socket.write_all(b"Hello!\n").await;
for i in 0.. {
let mut buf = heapless::String::<100>::new();
write!(buf, "Hello! ({})\r\n", i).unwrap();
let r = socket.write_all(buf.as_bytes()).await;
if let Err(e) = r {
warn!("write error: {:?}", e);
return;

7
examples/std/tap.sh Normal file
View File

@ -0,0 +1,7 @@
ip tuntap add name tap99 mode tap user $USER
ip link set tap99 up
ip addr add 192.168.69.100/24 dev tap99
ip -6 addr add fe80::100/64 dev tap99
ip -6 addr add fdaa::100/64 dev tap99
ip -6 route add fe80::/64 dev tap99
ip -6 route add fdaa::/64 dev tap99