diff options
| author | James Munns <[email protected]> | 2024-06-25 11:09:37 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-06-25 11:09:37 +0000 |
| commit | 89cd0e7cca8472073a1c5bc2dd72352041075d25 (patch) | |
| tree | be90171c1618a42f8e8cf8b3832a819c09e9444e /examples | |
| parent | dfdbcb400c3615698aa3bc0885faac376c3ff7bd (diff) | |
| parent | 080b5869dad3d2eca9b290c11cdbf4c0e38b6463 (diff) | |
Merge pull request #3117 from 9names/rp-example-fixes
RP network example fixes
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/rp/Cargo.toml | 2 | ||||
| -rw-r--r-- | examples/rp/src/bin/usb_ethernet.rs | 5 | ||||
| -rw-r--r-- | examples/rp/src/bin/wifi_ap_tcp_server.rs | 5 | ||||
| -rw-r--r-- | examples/rp/src/bin/wifi_tcp_server.rs | 5 | ||||
| -rw-r--r-- | examples/rp/src/bin/wifi_webrequest.rs | 5 |
5 files changed, 17 insertions, 5 deletions
diff --git a/examples/rp/Cargo.toml b/examples/rp/Cargo.toml index 0610be0a0..9bd403f02 100644 --- a/examples/rp/Cargo.toml +++ b/examples/rp/Cargo.toml | |||
| @@ -25,7 +25,7 @@ fixed = "1.23.1" | |||
| 25 | fixed-macro = "1.2" | 25 | fixed-macro = "1.2" |
| 26 | 26 | ||
| 27 | # for web request example | 27 | # for web request example |
| 28 | reqwless = { git = "https://github.com/drogue-iot/reqwless", features = ["defmt",]} | 28 | reqwless = { version = "0.12.0", features = ["defmt",]} |
| 29 | serde = { version = "1.0.203", default-features = false, features = ["derive"] } | 29 | serde = { version = "1.0.203", default-features = false, features = ["derive"] } |
| 30 | serde-json-core = "0.5.1" | 30 | serde-json-core = "0.5.1" |
| 31 | 31 | ||
diff --git a/examples/rp/src/bin/usb_ethernet.rs b/examples/rp/src/bin/usb_ethernet.rs index f1b124efa..22dc88d28 100644 --- a/examples/rp/src/bin/usb_ethernet.rs +++ b/examples/rp/src/bin/usb_ethernet.rs | |||
| @@ -9,6 +9,7 @@ use defmt::*; | |||
| 9 | use embassy_executor::Spawner; | 9 | use embassy_executor::Spawner; |
| 10 | use embassy_net::tcp::TcpSocket; | 10 | use embassy_net::tcp::TcpSocket; |
| 11 | use embassy_net::{Stack, StackResources}; | 11 | use embassy_net::{Stack, StackResources}; |
| 12 | use embassy_rp::clocks::RoscRng; | ||
| 12 | use embassy_rp::peripherals::USB; | 13 | use embassy_rp::peripherals::USB; |
| 13 | use embassy_rp::usb::{Driver, InterruptHandler}; | 14 | use embassy_rp::usb::{Driver, InterruptHandler}; |
| 14 | use embassy_rp::{bind_interrupts, peripherals}; | 15 | use embassy_rp::{bind_interrupts, peripherals}; |
| @@ -16,6 +17,7 @@ use embassy_usb::class::cdc_ncm::embassy_net::{Device, Runner, State as NetState | |||
| 16 | use embassy_usb::class::cdc_ncm::{CdcNcmClass, State}; | 17 | use embassy_usb::class::cdc_ncm::{CdcNcmClass, State}; |
| 17 | use embassy_usb::{Builder, Config, UsbDevice}; | 18 | use embassy_usb::{Builder, Config, UsbDevice}; |
| 18 | use embedded_io_async::Write; | 19 | use embedded_io_async::Write; |
| 20 | use rand::RngCore; | ||
| 19 | use static_cell::StaticCell; | 21 | use static_cell::StaticCell; |
| 20 | use {defmt_rtt as _, panic_probe as _}; | 22 | use {defmt_rtt as _, panic_probe as _}; |
| 21 | 23 | ||
| @@ -45,6 +47,7 @@ async fn net_task(stack: &'static Stack<Device<'static, MTU>>) -> ! { | |||
| 45 | #[embassy_executor::main] | 47 | #[embassy_executor::main] |
| 46 | async fn main(spawner: Spawner) { | 48 | async fn main(spawner: Spawner) { |
| 47 | let p = embassy_rp::init(Default::default()); | 49 | let p = embassy_rp::init(Default::default()); |
| 50 | let mut rng = RoscRng; | ||
| 48 | 51 | ||
| 49 | // Create the driver, from the HAL. | 52 | // Create the driver, from the HAL. |
| 50 | let driver = Driver::new(p.USB, Irqs); | 53 | let driver = Driver::new(p.USB, Irqs); |
| @@ -102,7 +105,7 @@ async fn main(spawner: Spawner) { | |||
| 102 | //}); | 105 | //}); |
| 103 | 106 | ||
| 104 | // Generate random seed | 107 | // Generate random seed |
| 105 | let seed = 1234; // guaranteed random, chosen by a fair dice roll | 108 | let seed = rng.next_u64(); |
| 106 | 109 | ||
| 107 | // Init network stack | 110 | // Init network stack |
| 108 | static STACK: StaticCell<Stack<Device<'static, MTU>>> = StaticCell::new(); | 111 | static STACK: StaticCell<Stack<Device<'static, MTU>>> = StaticCell::new(); |
diff --git a/examples/rp/src/bin/wifi_ap_tcp_server.rs b/examples/rp/src/bin/wifi_ap_tcp_server.rs index 69ce4e8be..4fc2690e3 100644 --- a/examples/rp/src/bin/wifi_ap_tcp_server.rs +++ b/examples/rp/src/bin/wifi_ap_tcp_server.rs | |||
| @@ -13,11 +13,13 @@ use embassy_executor::Spawner; | |||
| 13 | use embassy_net::tcp::TcpSocket; | 13 | use embassy_net::tcp::TcpSocket; |
| 14 | use embassy_net::{Config, Stack, StackResources}; | 14 | use embassy_net::{Config, Stack, StackResources}; |
| 15 | use embassy_rp::bind_interrupts; | 15 | use embassy_rp::bind_interrupts; |
| 16 | use embassy_rp::clocks::RoscRng; | ||
| 16 | use embassy_rp::gpio::{Level, Output}; | 17 | use embassy_rp::gpio::{Level, Output}; |
| 17 | use embassy_rp::peripherals::{DMA_CH0, PIO0}; | 18 | use embassy_rp::peripherals::{DMA_CH0, PIO0}; |
| 18 | use embassy_rp::pio::{InterruptHandler, Pio}; | 19 | use embassy_rp::pio::{InterruptHandler, Pio}; |
| 19 | use embassy_time::Duration; | 20 | use embassy_time::Duration; |
| 20 | use embedded_io_async::Write; | 21 | use embedded_io_async::Write; |
| 22 | use rand::RngCore; | ||
| 21 | use static_cell::StaticCell; | 23 | use static_cell::StaticCell; |
| 22 | use {defmt_rtt as _, panic_probe as _}; | 24 | use {defmt_rtt as _, panic_probe as _}; |
| 23 | 25 | ||
| @@ -40,6 +42,7 @@ async fn main(spawner: Spawner) { | |||
| 40 | info!("Hello World!"); | 42 | info!("Hello World!"); |
| 41 | 43 | ||
| 42 | let p = embassy_rp::init(Default::default()); | 44 | let p = embassy_rp::init(Default::default()); |
| 45 | let mut rng = RoscRng; | ||
| 43 | 46 | ||
| 44 | let fw = include_bytes!("../../../../cyw43-firmware/43439A0.bin"); | 47 | let fw = include_bytes!("../../../../cyw43-firmware/43439A0.bin"); |
| 45 | let clm = include_bytes!("../../../../cyw43-firmware/43439A0_clm.bin"); | 48 | let clm = include_bytes!("../../../../cyw43-firmware/43439A0_clm.bin"); |
| @@ -74,7 +77,7 @@ async fn main(spawner: Spawner) { | |||
| 74 | }); | 77 | }); |
| 75 | 78 | ||
| 76 | // Generate random seed | 79 | // Generate random seed |
| 77 | let seed = 0x0123_4567_89ab_cdef; // chosen by fair dice roll. guarenteed to be random. | 80 | let seed = rng.next_u64(); |
| 78 | 81 | ||
| 79 | // Init network stack | 82 | // Init network stack |
| 80 | static STACK: StaticCell<Stack<cyw43::NetDriver<'static>>> = StaticCell::new(); | 83 | static STACK: StaticCell<Stack<cyw43::NetDriver<'static>>> = StaticCell::new(); |
diff --git a/examples/rp/src/bin/wifi_tcp_server.rs b/examples/rp/src/bin/wifi_tcp_server.rs index bbb531807..5575df677 100644 --- a/examples/rp/src/bin/wifi_tcp_server.rs +++ b/examples/rp/src/bin/wifi_tcp_server.rs | |||
| @@ -13,11 +13,13 @@ use embassy_executor::Spawner; | |||
| 13 | use embassy_net::tcp::TcpSocket; | 13 | use embassy_net::tcp::TcpSocket; |
| 14 | use embassy_net::{Config, Stack, StackResources}; | 14 | use embassy_net::{Config, Stack, StackResources}; |
| 15 | use embassy_rp::bind_interrupts; | 15 | use embassy_rp::bind_interrupts; |
| 16 | use embassy_rp::clocks::RoscRng; | ||
| 16 | use embassy_rp::gpio::{Level, Output}; | 17 | use embassy_rp::gpio::{Level, Output}; |
| 17 | use embassy_rp::peripherals::{DMA_CH0, PIO0}; | 18 | use embassy_rp::peripherals::{DMA_CH0, PIO0}; |
| 18 | use embassy_rp::pio::{InterruptHandler, Pio}; | 19 | use embassy_rp::pio::{InterruptHandler, Pio}; |
| 19 | use embassy_time::{Duration, Timer}; | 20 | use embassy_time::{Duration, Timer}; |
| 20 | use embedded_io_async::Write; | 21 | use embedded_io_async::Write; |
| 22 | use rand::RngCore; | ||
| 21 | use static_cell::StaticCell; | 23 | use static_cell::StaticCell; |
| 22 | use {defmt_rtt as _, panic_probe as _}; | 24 | use {defmt_rtt as _, panic_probe as _}; |
| 23 | 25 | ||
| @@ -43,6 +45,7 @@ async fn main(spawner: Spawner) { | |||
| 43 | info!("Hello World!"); | 45 | info!("Hello World!"); |
| 44 | 46 | ||
| 45 | let p = embassy_rp::init(Default::default()); | 47 | let p = embassy_rp::init(Default::default()); |
| 48 | let mut rng = RoscRng; | ||
| 46 | 49 | ||
| 47 | let fw = include_bytes!("../../../../cyw43-firmware/43439A0.bin"); | 50 | let fw = include_bytes!("../../../../cyw43-firmware/43439A0.bin"); |
| 48 | let clm = include_bytes!("../../../../cyw43-firmware/43439A0_clm.bin"); | 51 | let clm = include_bytes!("../../../../cyw43-firmware/43439A0_clm.bin"); |
| @@ -77,7 +80,7 @@ async fn main(spawner: Spawner) { | |||
| 77 | //}); | 80 | //}); |
| 78 | 81 | ||
| 79 | // Generate random seed | 82 | // Generate random seed |
| 80 | let seed = 0x0123_4567_89ab_cdef; // chosen by fair dice roll. guarenteed to be random. | 83 | let seed = rng.next_u64(); |
| 81 | 84 | ||
| 82 | // Init network stack | 85 | // Init network stack |
| 83 | static STACK: StaticCell<Stack<cyw43::NetDriver<'static>>> = StaticCell::new(); | 86 | static STACK: StaticCell<Stack<cyw43::NetDriver<'static>>> = StaticCell::new(); |
diff --git a/examples/rp/src/bin/wifi_webrequest.rs b/examples/rp/src/bin/wifi_webrequest.rs index e0c91df53..70b6f0949 100644 --- a/examples/rp/src/bin/wifi_webrequest.rs +++ b/examples/rp/src/bin/wifi_webrequest.rs | |||
| @@ -14,10 +14,12 @@ use embassy_net::dns::DnsSocket; | |||
| 14 | use embassy_net::tcp::client::{TcpClient, TcpClientState}; | 14 | use embassy_net::tcp::client::{TcpClient, TcpClientState}; |
| 15 | use embassy_net::{Config, Stack, StackResources}; | 15 | use embassy_net::{Config, Stack, StackResources}; |
| 16 | use embassy_rp::bind_interrupts; | 16 | use embassy_rp::bind_interrupts; |
| 17 | use embassy_rp::clocks::RoscRng; | ||
| 17 | use embassy_rp::gpio::{Level, Output}; | 18 | use embassy_rp::gpio::{Level, Output}; |
| 18 | use embassy_rp::peripherals::{DMA_CH0, PIO0}; | 19 | use embassy_rp::peripherals::{DMA_CH0, PIO0}; |
| 19 | use embassy_rp::pio::{InterruptHandler, Pio}; | 20 | use embassy_rp::pio::{InterruptHandler, Pio}; |
| 20 | use embassy_time::{Duration, Timer}; | 21 | use embassy_time::{Duration, Timer}; |
| 22 | use rand::RngCore; | ||
| 21 | use reqwless::client::{HttpClient, TlsConfig, TlsVerify}; | 23 | use reqwless::client::{HttpClient, TlsConfig, TlsVerify}; |
| 22 | use reqwless::request::Method; | 24 | use reqwless::request::Method; |
| 23 | use serde::Deserialize; | 25 | use serde::Deserialize; |
| @@ -46,6 +48,7 @@ async fn main(spawner: Spawner) { | |||
| 46 | info!("Hello World!"); | 48 | info!("Hello World!"); |
| 47 | 49 | ||
| 48 | let p = embassy_rp::init(Default::default()); | 50 | let p = embassy_rp::init(Default::default()); |
| 51 | let mut rng = RoscRng; | ||
| 49 | 52 | ||
| 50 | let fw = include_bytes!("../../../../cyw43-firmware/43439A0.bin"); | 53 | let fw = include_bytes!("../../../../cyw43-firmware/43439A0.bin"); |
| 51 | let clm = include_bytes!("../../../../cyw43-firmware/43439A0_clm.bin"); | 54 | let clm = include_bytes!("../../../../cyw43-firmware/43439A0_clm.bin"); |
| @@ -80,7 +83,7 @@ async fn main(spawner: Spawner) { | |||
| 80 | //}); | 83 | //}); |
| 81 | 84 | ||
| 82 | // Generate random seed | 85 | // Generate random seed |
| 83 | let seed = 0x0123_4567_89ab_cdef; // chosen by fair dice roll. guarenteed to be random. | 86 | let seed = rng.next_u64(); |
| 84 | 87 | ||
| 85 | // Init network stack | 88 | // Init network stack |
| 86 | static STACK: StaticCell<Stack<cyw43::NetDriver<'static>>> = StaticCell::new(); | 89 | static STACK: StaticCell<Stack<cyw43::NetDriver<'static>>> = StaticCell::new(); |
