aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/nrf52840/Cargo.toml2
-rw-r--r--examples/nrf52840/src/bin/usb_hid_keyboard.rs9
-rw-r--r--examples/nrf52840/src/bin/usb_hid_mouse.rs9
-rw-r--r--examples/rp/src/bin/usb_hid_keyboard.rs6
-rwxr-xr-xexamples/rp/src/bin/usb_hid_mouse.rs6
-rw-r--r--examples/rp235x/src/bin/usb_hid_keyboard.rs8
-rw-r--r--examples/stm32f4/src/bin/usb_hid_keyboard.rs6
-rw-r--r--examples/stm32f4/src/bin/usb_hid_mouse.rs6
-rw-r--r--examples/stm32l5/src/bin/usb_hid_mouse.rs6
9 files changed, 39 insertions, 19 deletions
diff --git a/examples/nrf52840/Cargo.toml b/examples/nrf52840/Cargo.toml
index 9a1fc080e..452e83b7e 100644
--- a/examples/nrf52840/Cargo.toml
+++ b/examples/nrf52840/Cargo.toml
@@ -28,7 +28,7 @@ cortex-m-rt = "0.7.0"
28panic-probe = { version = "1.0.0", features = ["print-defmt"] } 28panic-probe = { version = "1.0.0", features = ["print-defmt"] }
29rand = { version = "0.9.0", default-features = false } 29rand = { version = "0.9.0", default-features = false }
30embedded-storage = "0.3.1" 30embedded-storage = "0.3.1"
31usbd-hid = { version = "0.8.1", features = ["defmt"] } 31usbd-hid = "0.8.1"
32serde = { version = "1.0.136", default-features = false } 32serde = { version = "1.0.136", default-features = false }
33embedded-hal = { version = "1.0" } 33embedded-hal = { version = "1.0" }
34embedded-hal-async = { version = "1.0" } 34embedded-hal-async = { version = "1.0" }
diff --git a/examples/nrf52840/src/bin/usb_hid_keyboard.rs b/examples/nrf52840/src/bin/usb_hid_keyboard.rs
index a4931099a..8649d5667 100644
--- a/examples/nrf52840/src/bin/usb_hid_keyboard.rs
+++ b/examples/nrf52840/src/bin/usb_hid_keyboard.rs
@@ -13,11 +13,12 @@ use embassy_nrf::usb::Driver;
13use embassy_nrf::{bind_interrupts, pac, peripherals, usb}; 13use embassy_nrf::{bind_interrupts, pac, peripherals, usb};
14use embassy_sync::blocking_mutex::raw::CriticalSectionRawMutex; 14use embassy_sync::blocking_mutex::raw::CriticalSectionRawMutex;
15use embassy_sync::signal::Signal; 15use embassy_sync::signal::Signal;
16use embassy_usb::class::hid::{HidReaderWriter, ReportId, RequestHandler, State}; 16use embassy_usb::class::hid::{
17 HidBootProtocol, HidProtocolMode, HidReaderWriter, HidSubclass, ReportId, RequestHandler, State,
18};
17use embassy_usb::control::OutResponse; 19use embassy_usb::control::OutResponse;
18use embassy_usb::{Builder, Config, Handler}; 20use embassy_usb::{Builder, Config, Handler};
19use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor}; 21use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor};
20use usbd_hid::hid_class::HidProtocolMode;
21use {defmt_rtt as _, panic_probe as _}; 22use {defmt_rtt as _, panic_probe as _};
22 23
23bind_interrupts!(struct Irqs { 24bind_interrupts!(struct Irqs {
@@ -81,8 +82,10 @@ async fn main(_spawner: Spawner) {
81 request_handler: None, 82 request_handler: None,
82 poll_ms: 60, 83 poll_ms: 60,
83 max_packet_size: 64, 84 max_packet_size: 64,
85 hid_subclass: HidSubclass::ReportOrBoot,
86 hid_boot_protocol: HidBootProtocol::Keyboard,
84 }; 87 };
85 let hid = HidReaderWriter::<_, 1, 8>::new_keyboard(&mut builder, &mut state, config); 88 let hid = HidReaderWriter::<_, 1, 8>::new(&mut builder, &mut state, config);
86 89
87 // Build the builder. 90 // Build the builder.
88 let mut usb = builder.build(); 91 let mut usb = builder.build();
diff --git a/examples/nrf52840/src/bin/usb_hid_mouse.rs b/examples/nrf52840/src/bin/usb_hid_mouse.rs
index 6ec8a2d33..4baf2e814 100644
--- a/examples/nrf52840/src/bin/usb_hid_mouse.rs
+++ b/examples/nrf52840/src/bin/usb_hid_mouse.rs
@@ -10,11 +10,12 @@ use embassy_nrf::usb::vbus_detect::HardwareVbusDetect;
10use embassy_nrf::usb::Driver; 10use embassy_nrf::usb::Driver;
11use embassy_nrf::{bind_interrupts, pac, peripherals, usb}; 11use embassy_nrf::{bind_interrupts, pac, peripherals, usb};
12use embassy_time::Timer; 12use embassy_time::Timer;
13use embassy_usb::class::hid::{HidWriter, ReportId, RequestHandler, State}; 13use embassy_usb::class::hid::{
14 HidBootProtocol, HidProtocolMode, HidSubclass, HidWriter, ReportId, RequestHandler, State,
15};
14use embassy_usb::control::OutResponse; 16use embassy_usb::control::OutResponse;
15use embassy_usb::{Builder, Config}; 17use embassy_usb::{Builder, Config};
16use usbd_hid::descriptor::{MouseReport, SerializedDescriptor}; 18use usbd_hid::descriptor::{MouseReport, SerializedDescriptor};
17use usbd_hid::hid_class::HidProtocolMode;
18use {defmt_rtt as _, panic_probe as _}; 19use {defmt_rtt as _, panic_probe as _};
19 20
20bind_interrupts!(struct Irqs { 21bind_interrupts!(struct Irqs {
@@ -72,9 +73,11 @@ async fn main(_spawner: Spawner) {
72 request_handler: Some(&mut request_handler), 73 request_handler: Some(&mut request_handler),
73 poll_ms: 60, 74 poll_ms: 60,
74 max_packet_size: 8, 75 max_packet_size: 8,
76 hid_subclass: HidSubclass::ReportOrBoot,
77 hid_boot_protocol: HidBootProtocol::Mouse,
75 }; 78 };
76 79
77 let mut writer = HidWriter::<_, 5>::new_mouse(&mut builder, &mut state, config); 80 let mut writer = HidWriter::<_, 5>::new(&mut builder, &mut state, config);
78 81
79 // Build the builder. 82 // Build the builder.
80 let mut usb = builder.build(); 83 let mut usb = builder.build();
diff --git a/examples/rp/src/bin/usb_hid_keyboard.rs b/examples/rp/src/bin/usb_hid_keyboard.rs
index 8658da6b5..fa78d0c2e 100644
--- a/examples/rp/src/bin/usb_hid_keyboard.rs
+++ b/examples/rp/src/bin/usb_hid_keyboard.rs
@@ -10,7 +10,7 @@ use embassy_rp::bind_interrupts;
10use embassy_rp::gpio::{Input, Pull}; 10use embassy_rp::gpio::{Input, Pull};
11use embassy_rp::peripherals::USB; 11use embassy_rp::peripherals::USB;
12use embassy_rp::usb::{Driver, InterruptHandler}; 12use embassy_rp::usb::{Driver, InterruptHandler};
13use embassy_usb::class::hid::{HidReaderWriter, ReportId, RequestHandler, State}; 13use embassy_usb::class::hid::{HidBootProtocol, HidReaderWriter, HidSubclass, ReportId, RequestHandler, State};
14use embassy_usb::control::OutResponse; 14use embassy_usb::control::OutResponse;
15use embassy_usb::{Builder, Config, Handler}; 15use embassy_usb::{Builder, Config, Handler};
16use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor}; 16use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor};
@@ -67,8 +67,10 @@ async fn main(_spawner: Spawner) {
67 request_handler: None, 67 request_handler: None,
68 poll_ms: 60, 68 poll_ms: 60,
69 max_packet_size: 64, 69 max_packet_size: 64,
70 hid_subclass: HidSubclass::ReportOrBoot,
71 hid_boot_protocol: HidBootProtocol::Keyboard,
70 }; 72 };
71 let hid = HidReaderWriter::<_, 1, 8>::new_keyboard(&mut builder, &mut state, config); 73 let hid = HidReaderWriter::<_, 1, 8>::new(&mut builder, &mut state, config);
72 74
73 // Build the builder. 75 // Build the builder.
74 let mut usb = builder.build(); 76 let mut usb = builder.build();
diff --git a/examples/rp/src/bin/usb_hid_mouse.rs b/examples/rp/src/bin/usb_hid_mouse.rs
index 4d8fc354e..100e6048a 100755
--- a/examples/rp/src/bin/usb_hid_mouse.rs
+++ b/examples/rp/src/bin/usb_hid_mouse.rs
@@ -11,7 +11,7 @@ use embassy_rp::clocks::RoscRng;
11use embassy_rp::peripherals::USB; 11use embassy_rp::peripherals::USB;
12use embassy_rp::usb::{Driver, InterruptHandler}; 12use embassy_rp::usb::{Driver, InterruptHandler};
13use embassy_time::Timer; 13use embassy_time::Timer;
14use embassy_usb::class::hid::{HidReaderWriter, ReportId, RequestHandler, State}; 14use embassy_usb::class::hid::{HidBootProtocol, HidReaderWriter, HidSubclass, ReportId, RequestHandler, State};
15use embassy_usb::control::OutResponse; 15use embassy_usb::control::OutResponse;
16use embassy_usb::{Builder, Config, Handler}; 16use embassy_usb::{Builder, Config, Handler};
17use rand::Rng; 17use rand::Rng;
@@ -69,8 +69,10 @@ async fn main(_spawner: Spawner) {
69 request_handler: None, 69 request_handler: None,
70 poll_ms: 60, 70 poll_ms: 60,
71 max_packet_size: 64, 71 max_packet_size: 64,
72 hid_subclass: HidSubclass::ReportOrBoot,
73 hid_boot_protocol: HidBootProtocol::Mouse,
72 }; 74 };
73 let hid = HidReaderWriter::<_, 1, 8>::new_keyboard(&mut builder, &mut state, config); 75 let hid = HidReaderWriter::<_, 1, 8>::new(&mut builder, &mut state, config);
74 76
75 // Build the builder. 77 // Build the builder.
76 let mut usb = builder.build(); 78 let mut usb = builder.build();
diff --git a/examples/rp235x/src/bin/usb_hid_keyboard.rs b/examples/rp235x/src/bin/usb_hid_keyboard.rs
index fa9eaa863..3203176cb 100644
--- a/examples/rp235x/src/bin/usb_hid_keyboard.rs
+++ b/examples/rp235x/src/bin/usb_hid_keyboard.rs
@@ -10,7 +10,9 @@ use embassy_rp::bind_interrupts;
10use embassy_rp::gpio::{Input, Pull}; 10use embassy_rp::gpio::{Input, Pull};
11use embassy_rp::peripherals::USB; 11use embassy_rp::peripherals::USB;
12use embassy_rp::usb::{Driver as UsbDriver, InterruptHandler}; 12use embassy_rp::usb::{Driver as UsbDriver, InterruptHandler};
13use embassy_usb::class::hid::{HidReaderWriter, ReportId, RequestHandler, State as HidState}; 13use embassy_usb::class::hid::{
14 HidBootProtocol, HidReaderWriter, HidSubclass, ReportId, RequestHandler, State as HidState,
15};
14use embassy_usb::control::OutResponse; 16use embassy_usb::control::OutResponse;
15use embassy_usb::{Builder, Config, Handler}; 17use embassy_usb::{Builder, Config, Handler};
16use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor}; 18use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor};
@@ -67,8 +69,10 @@ async fn main(_spawner: Spawner) {
67 request_handler: None, 69 request_handler: None,
68 poll_ms: 60, 70 poll_ms: 60,
69 max_packet_size: 64, 71 max_packet_size: 64,
72 hid_subclass: HidSubclass::ReportOrBoot,
73 hid_boot_protocol: HidBootProtocol::Keyboard,
70 }; 74 };
71 let hid = HidReaderWriter::<_, 1, 8>::new_keyboard(&mut builder, &mut state, config); 75 let hid = HidReaderWriter::<_, 1, 8>::new(&mut builder, &mut state, config);
72 76
73 // Build the builder. 77 // Build the builder.
74 let mut usb = builder.build(); 78 let mut usb = builder.build();
diff --git a/examples/stm32f4/src/bin/usb_hid_keyboard.rs b/examples/stm32f4/src/bin/usb_hid_keyboard.rs
index 6ddfba83a..740fbcaef 100644
--- a/examples/stm32f4/src/bin/usb_hid_keyboard.rs
+++ b/examples/stm32f4/src/bin/usb_hid_keyboard.rs
@@ -11,7 +11,7 @@ use embassy_stm32::gpio::Pull;
11use embassy_stm32::time::Hertz; 11use embassy_stm32::time::Hertz;
12use embassy_stm32::usb::Driver; 12use embassy_stm32::usb::Driver;
13use embassy_stm32::{bind_interrupts, peripherals, usb, Config}; 13use embassy_stm32::{bind_interrupts, peripherals, usb, Config};
14use embassy_usb::class::hid::{HidReaderWriter, ReportId, RequestHandler, State}; 14use embassy_usb::class::hid::{HidBootProtocol, HidReaderWriter, HidSubclass, ReportId, RequestHandler, State};
15use embassy_usb::control::OutResponse; 15use embassy_usb::control::OutResponse;
16use embassy_usb::{Builder, Handler}; 16use embassy_usb::{Builder, Handler};
17use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor}; 17use usbd_hid::descriptor::{KeyboardReport, SerializedDescriptor};
@@ -105,9 +105,11 @@ async fn main(_spawner: Spawner) {
105 request_handler: None, 105 request_handler: None,
106 poll_ms: 60, 106 poll_ms: 60,
107 max_packet_size: 8, 107 max_packet_size: 8,
108 hid_subclass: HidSubclass::ReportOrBoot,
109 hid_boot_protocol: HidBootProtocol::Keyboard,
108 }; 110 };
109 111
110 let hid = HidReaderWriter::<_, 1, 8>::new_keyboard(&mut builder, &mut state, config); 112 let hid = HidReaderWriter::<_, 1, 8>::new(&mut builder, &mut state, config);
111 113
112 // Build the builder. 114 // Build the builder.
113 let mut usb = builder.build(); 115 let mut usb = builder.build();
diff --git a/examples/stm32f4/src/bin/usb_hid_mouse.rs b/examples/stm32f4/src/bin/usb_hid_mouse.rs
index 8d035d0d5..09af204c4 100644
--- a/examples/stm32f4/src/bin/usb_hid_mouse.rs
+++ b/examples/stm32f4/src/bin/usb_hid_mouse.rs
@@ -8,7 +8,7 @@ use embassy_stm32::time::Hertz;
8use embassy_stm32::usb::Driver; 8use embassy_stm32::usb::Driver;
9use embassy_stm32::{bind_interrupts, peripherals, usb, Config}; 9use embassy_stm32::{bind_interrupts, peripherals, usb, Config};
10use embassy_time::Timer; 10use embassy_time::Timer;
11use embassy_usb::class::hid::{HidWriter, ReportId, RequestHandler, State}; 11use embassy_usb::class::hid::{HidBootProtocol, HidSubclass, HidWriter, ReportId, RequestHandler, State};
12use embassy_usb::control::OutResponse; 12use embassy_usb::control::OutResponse;
13use embassy_usb::Builder; 13use embassy_usb::Builder;
14use usbd_hid::descriptor::{MouseReport, SerializedDescriptor}; 14use usbd_hid::descriptor::{MouseReport, SerializedDescriptor};
@@ -95,9 +95,11 @@ async fn main(_spawner: Spawner) {
95 request_handler: Some(&mut request_handler), 95 request_handler: Some(&mut request_handler),
96 poll_ms: 60, 96 poll_ms: 60,
97 max_packet_size: 8, 97 max_packet_size: 8,
98 hid_subclass: HidSubclass::ReportOrBoot,
99 hid_boot_protocol: HidBootProtocol::Mouse,
98 }; 100 };
99 101
100 let mut writer = HidWriter::<_, 5>::new_mouse(&mut builder, &mut state, config); 102 let mut writer = HidWriter::<_, 5>::new(&mut builder, &mut state, config);
101 103
102 // Build the builder. 104 // Build the builder.
103 let mut usb = builder.build(); 105 let mut usb = builder.build();
diff --git a/examples/stm32l5/src/bin/usb_hid_mouse.rs b/examples/stm32l5/src/bin/usb_hid_mouse.rs
index 6f9200548..30dbd2698 100644
--- a/examples/stm32l5/src/bin/usb_hid_mouse.rs
+++ b/examples/stm32l5/src/bin/usb_hid_mouse.rs
@@ -7,7 +7,7 @@ use embassy_futures::join::join;
7use embassy_stm32::usb::Driver; 7use embassy_stm32::usb::Driver;
8use embassy_stm32::{bind_interrupts, peripherals, usb, Config}; 8use embassy_stm32::{bind_interrupts, peripherals, usb, Config};
9use embassy_time::Timer; 9use embassy_time::Timer;
10use embassy_usb::class::hid::{HidWriter, ReportId, RequestHandler, State}; 10use embassy_usb::class::hid::{HidBootProtocol, HidSubclass, HidWriter, ReportId, RequestHandler, State};
11use embassy_usb::control::OutResponse; 11use embassy_usb::control::OutResponse;
12use embassy_usb::Builder; 12use embassy_usb::Builder;
13use usbd_hid::descriptor::{MouseReport, SerializedDescriptor}; 13use usbd_hid::descriptor::{MouseReport, SerializedDescriptor};
@@ -77,9 +77,11 @@ async fn main(_spawner: Spawner) {
77 request_handler: Some(&mut request_handler), 77 request_handler: Some(&mut request_handler),
78 poll_ms: 60, 78 poll_ms: 60,
79 max_packet_size: 8, 79 max_packet_size: 8,
80 hid_subclass: HidSubclass::ReportOrBoot,
81 hid_boot_protocol: HidBootProtocol::Mouse,
80 }; 82 };
81 83
82 let mut writer = HidWriter::<_, 5>::new_mouse(&mut builder, &mut state, config); 84 let mut writer = HidWriter::<_, 5>::new(&mut builder, &mut state, config);
83 85
84 // Build the builder. 86 // Build the builder.
85 let mut usb = builder.build(); 87 let mut usb = builder.build();