From 749e6dcc8ab494603bada6fc126ec3148efd08a8 Mon Sep 17 00:00:00 2001 From: taks <857tn859@gmail.com> Date: Thu, 27 Jun 2024 10:13:47 +0900 Subject: [PATCH 1/3] Fixed build.rs --- build.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/build.rs b/build.rs index 5fbf93d..e86441c 100644 --- a/build.rs +++ b/build.rs @@ -1,5 +1,3 @@ -// Necessary because of this issue: https://github.com/rust-lang/cargo/issues/9641 -fn main() -> anyhow::Result<()> { - embuild::build::CfgArgs::output_propagated("ESP_IDF")?; - embuild::build::LinkArgs::output_propagated("ESP_IDF") +fn main() { + embuild::espidf::sysenv::output(); } From 383300c23e502ddf89a09326d44b6384884246df Mon Sep 17 00:00:00 2001 From: taks <857tn859@gmail.com> Date: Thu, 27 Jun 2024 12:59:33 +0900 Subject: [PATCH 2/3] Removed `sys` and `hal` from dependencies --- Cargo.toml | 11 ++++----- examples/ble5_multi_advertiser.rs | 6 ++--- examples/ble_client.rs | 11 ++++----- examples/ble_keyboard.rs | 7 +++--- examples/ble_scan.rs | 8 ++----- examples/ble_secure_client.rs | 5 ++--- examples/ble_secure_server.rs | 7 +++--- examples/ble_server.rs | 7 +++--- examples/ble_start_stop.rs | 10 +++------ src/ble_address.rs | 10 ++++----- src/ble_device.rs | 1 + src/ble_error.rs | 1 + src/ble_security.rs | 1 + src/client/ble_advertised_device.rs | 1 + src/client/ble_attribute.rs | 1 + src/client/ble_client.rs | 1 + src/client/ble_reader.rs | 1 + src/client/ble_remote_characteristic.rs | 1 + src/client/ble_remote_descriptor.rs | 1 + src/client/ble_remote_service.rs | 1 + src/client/ble_scan.rs | 1 + src/client/ble_writer.rs | 1 + src/enums.rs | 30 ++++++++++++------------- src/lib.rs | 4 ++-- src/server/ble_advertisement_data.rs | 1 + src/server/ble_advertising.rs | 1 + src/server/ble_characteristic.rs | 1 + src/server/ble_conn_desc.rs | 1 + src/server/ble_descriptor.rs | 1 + src/server/ble_server.rs | 1 + src/server/ble_service.rs | 1 + src/utilities/ble_functions.rs | 1 + src/utilities/ble_uuid.rs | 1 + src/utilities/mutex.rs | 2 +- src/utilities/nimble_npl_os.rs | 2 +- src/utilities/os_mbuf.rs | 1 + 36 files changed, 75 insertions(+), 67 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 02c85a2..11bc9f9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,16 +22,13 @@ opt-level = "z" [features] default = ["std"] -std = ["esp-idf-svc/std", "esp-idf-hal/std", "once_cell/std", "bstr/std"] -no_std = ["once_cell/critical-section", "esp-idf-hal/critical-section", "bstr/alloc"] +std = ["esp-idf-svc/std", "once_cell/std", "bstr/std"] +no_std = ["once_cell/critical-section", "esp-idf-svc/critical-section", "bstr/alloc"] debug = [] [dependencies] log = { version = "0.4", default-features = false } -esp-idf-sys = { version = "0.35", default-features = false } -esp-idf-hal = { version = "0.44", default-features = false, features = ["embassy-sync"] } -esp-idf-svc = { version = "0.49", default-features = false, features = ["alloc"] } -embedded-svc = { version = "0.28", default-features = false } +esp-idf-svc = { version = "0.49", default-features = false, features = ["alloc", "embassy-sync"] } bitflags = { version = "2.4.1" } bstr = { version = "1.8.0", default-features = false } @@ -43,7 +40,7 @@ uuid = { version = "1", default-features = false, features = ["macro-diagnostics [dev-dependencies] anyhow = "1" -esp-idf-sys = { version = "0.35", default-features = false, features = ["binstart", "alloc_handler"] } +esp-idf-svc = "0.49" [build-dependencies] anyhow = "1" diff --git a/examples/ble5_multi_advertiser.rs b/examples/ble5_multi_advertiser.rs index 0250306..f6bbcce 100644 --- a/examples/ble5_multi_advertiser.rs +++ b/examples/ble5_multi_advertiser.rs @@ -1,4 +1,4 @@ -use esp_idf_sys::{BLE_HCI_LE_PHY_1M, BLE_HCI_LE_PHY_CODED}; +use esp_idf_svc::sys::{BLE_HCI_LE_PHY_1M, BLE_HCI_LE_PHY_CODED}; use esp32_nimble::{ utilities::BleUuid, BLEAddress, BLEAddressType, BLEDevice, BLEExtAdvertisement, NimbleProperties, @@ -7,7 +7,7 @@ use esp32_nimble::{ const SERVICE_UUID: BleUuid = BleUuid::Uuid16(0xABCD); fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); let ble_device = BLEDevice::take(); @@ -56,6 +56,6 @@ fn main() -> anyhow::Result<()> { } loop { - esp_idf_hal::delay::FreeRtos::delay_ms(5000); + esp_idf_svc::hal::delay::FreeRtos::delay_ms(5000); } } diff --git a/examples/ble_client.rs b/examples/ble_client.rs index 799187a..c4cdbc7 100644 --- a/examples/ble_client.rs +++ b/examples/ble_client.rs @@ -1,12 +1,13 @@ use bstr::ByteSlice; use esp32_nimble::{uuid128, BLEClient, BLEDevice}; -use esp_idf_hal::prelude::Peripherals; -use esp_idf_hal::task::block_on; -use esp_idf_hal::timer::{TimerConfig, TimerDriver}; -use esp_idf_sys as _; +use esp_idf_svc::hal::{ + prelude::Peripherals, + task::block_on, + timer::{TimerConfig, TimerDriver}, +}; fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); let peripherals = Peripherals::take()?; diff --git a/examples/ble_keyboard.rs b/examples/ble_keyboard.rs index a114b94..aa44c81 100644 --- a/examples/ble_keyboard.rs +++ b/examples/ble_keyboard.rs @@ -5,7 +5,6 @@ use esp32_nimble::{ enums::*, hid::*, utilities::mutex::Mutex, BLEAdvertisementData, BLECharacteristic, BLEDevice, BLEHIDDevice, BLEServer, }; -use esp_idf_sys as _; use std::sync::Arc; const KEYBOARD_ID: u8 = 0x01; @@ -298,12 +297,12 @@ impl Keyboard { fn send_report(&self, keys: &KeyReport) { self.input_keyboard.lock().set_from(keys).notify(); - esp_idf_hal::delay::Ets::delay_ms(7); + esp_idf_svc::hal::delay::Ets::delay_ms(7); } } fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); let mut keyboard = Keyboard::new()?; @@ -313,6 +312,6 @@ fn main() -> anyhow::Result<()> { ::log::info!("Sending 'Hello world'..."); keyboard.write("Hello world\n"); } - esp_idf_hal::delay::FreeRtos::delay_ms(5000); + esp_idf_svc::hal::delay::FreeRtos::delay_ms(5000); } } diff --git a/examples/ble_scan.rs b/examples/ble_scan.rs index 351541f..7e3ec16 100644 --- a/examples/ble_scan.rs +++ b/examples/ble_scan.rs @@ -1,14 +1,10 @@ use esp32_nimble::BLEDevice; -use esp_idf_hal::task::block_on; -use esp_idf_sys as _; +use esp_idf_svc::hal::task::block_on; use log::*; fn main() -> anyhow::Result<()> { - // Temporary. Will disappear once ESP-IDF 4.4 is released, but for now it is necessary to call this function once, - // or else some patches to the runtime implemented by esp-idf-sys might not link properly. - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); - // Bind the log crate to the ESP Logging facilities esp_idf_svc::log::EspLogger::initialize_default(); log::set_max_level(log::LevelFilter::Debug); diff --git a/examples/ble_secure_client.rs b/examples/ble_secure_client.rs index 5c73371..7e98207 100644 --- a/examples/ble_secure_client.rs +++ b/examples/ble_secure_client.rs @@ -1,12 +1,11 @@ use esp32_nimble::{enums::*, utilities::BleUuid, BLEClient, BLEDevice}; -use esp_idf_hal::task::block_on; -use esp_idf_sys as _; +use esp_idf_svc::hal::task::block_on; use log::*; const SERVICE_UUID: BleUuid = BleUuid::Uuid16(0xABCD); fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); block_on(async { diff --git a/examples/ble_secure_server.rs b/examples/ble_secure_server.rs index 4dd3c58..9a7f69d 100644 --- a/examples/ble_secure_server.rs +++ b/examples/ble_secure_server.rs @@ -1,10 +1,9 @@ use esp32_nimble::{ enums::*, utilities::BleUuid, BLEAdvertisementData, BLEDevice, NimbleProperties, }; -use esp_idf_sys as _; fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); let device = BLEDevice::take(); @@ -21,7 +20,7 @@ fn main() -> anyhow::Result<()> { server.on_connect(|server, desc| { ::log::info!("Client connected: {:?}", desc); - if server.connected_count() < (esp_idf_sys::CONFIG_BT_NIMBLE_MAX_CONNECTIONS as _) { + if server.connected_count() < (esp_idf_svc::sys::CONFIG_BT_NIMBLE_MAX_CONNECTIONS as _) { ::log::info!("Multi-connect support: start advertising"); ble_advertising.lock().start().unwrap(); } @@ -66,6 +65,6 @@ fn main() -> anyhow::Result<()> { ::log::info!("bonded_addresses: {:?}", device.bonded_addresses()); loop { - esp_idf_hal::delay::FreeRtos::delay_ms(1000); + esp_idf_svc::hal::delay::FreeRtos::delay_ms(1000); } } diff --git a/examples/ble_server.rs b/examples/ble_server.rs index 9db76cc..a1c04a2 100644 --- a/examples/ble_server.rs +++ b/examples/ble_server.rs @@ -1,9 +1,8 @@ use esp32_nimble::{uuid128, BLEAdvertisementData, BLEDevice, NimbleProperties}; -use esp_idf_sys as _; use std::format; fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); let ble_device = BLEDevice::take(); @@ -17,7 +16,7 @@ fn main() -> anyhow::Result<()> { .update_conn_params(desc.conn_handle(), 24, 48, 0, 60) .unwrap(); - if server.connected_count() < (esp_idf_sys::CONFIG_BT_NIMBLE_MAX_CONNECTIONS as _) { + if server.connected_count() < (esp_idf_svc::sys::CONFIG_BT_NIMBLE_MAX_CONNECTIONS as _) { ::log::info!("Multi-connect support: start advertising"); ble_advertising.lock().start().unwrap(); } @@ -74,7 +73,7 @@ fn main() -> anyhow::Result<()> { let mut counter = 0; loop { - esp_idf_hal::delay::FreeRtos::delay_ms(1000); + esp_idf_svc::hal::delay::FreeRtos::delay_ms(1000); notifying_characteristic .lock() .set_value(format!("Counter: {counter}").as_bytes()) diff --git a/examples/ble_start_stop.rs b/examples/ble_start_stop.rs index 6dd5e1b..cadac76 100644 --- a/examples/ble_start_stop.rs +++ b/examples/ble_start_stop.rs @@ -1,12 +1,8 @@ use esp32_nimble::{uuid128, BLEAdvertisementData, BLEDevice, NimbleProperties}; -use esp_idf_hal::peripherals::Peripherals; -use esp_idf_hal::uart::*; -use esp_idf_hal::units::Hertz; -use esp_idf_hal::{delay::*, gpio}; -use esp_idf_sys as _; +use esp_idf_svc::hal::{delay::*, gpio, peripherals::Peripherals, uart::*, units::Hertz}; fn main() -> anyhow::Result<()> { - esp_idf_sys::link_patches(); + esp_idf_svc::sys::link_patches(); esp_idf_svc::log::EspLogger::initialize_default(); let peripherals = Peripherals::take()?; @@ -80,7 +76,7 @@ fn main() -> anyhow::Result<()> { let mut buf = [0_u8; 10]; let mut initialized = true; loop { - esp_idf_hal::delay::FreeRtos::delay_ms(1000); + esp_idf_svc::hal::delay::FreeRtos::delay_ms(1000); let len = uart.read(&mut buf, NON_BLOCK)?; if (buf[..len]).contains(&b's') { if initialized { diff --git a/src/ble_address.rs b/src/ble_address.rs index 6e42eef..b12389d 100644 --- a/src/ble_address.rs +++ b/src/ble_address.rs @@ -1,4 +1,4 @@ -use esp_idf_sys::*; +use esp_idf_svc::sys::*; use num_enum::TryFromPrimitive; /// Bluetooth Device address type @@ -14,13 +14,13 @@ pub enum BLEAddressType { #[repr(transparent)] #[derive(Copy, Clone)] pub struct BLEAddress { - pub(crate) value: esp_idf_sys::ble_addr_t, + pub(crate) value: ble_addr_t, } impl BLEAddress { pub fn new(val: [u8; 6], addr_type: BLEAddressType) -> Self { let mut ret = Self { - value: esp_idf_sys::ble_addr_t { + value: ble_addr_t { val, type_: addr_type as _, }, @@ -61,8 +61,8 @@ impl BLEAddress { } } -impl From for BLEAddress { - fn from(value: esp_idf_sys::ble_addr_t) -> Self { +impl From for BLEAddress { + fn from(value: ble_addr_t) -> Self { Self { value } } } diff --git a/src/ble_device.rs b/src/ble_device.rs index 70b8108..dab6001 100644 --- a/src/ble_device.rs +++ b/src/ble_device.rs @@ -3,6 +3,7 @@ use core::{ ffi::c_void, sync::atomic::{AtomicBool, Ordering}, }; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::{esp, esp_nofail, EspError}; use once_cell::sync::Lazy; diff --git a/src/ble_error.rs b/src/ble_error.rs index 50b7183..59aab37 100644 --- a/src/ble_error.rs +++ b/src/ble_error.rs @@ -1,4 +1,5 @@ use core::num::NonZeroI32; +use esp_idf_svc::sys as esp_idf_sys; #[derive(Copy, Clone, Eq, PartialEq, Hash)] pub struct BLEError(NonZeroI32); diff --git a/src/ble_security.rs b/src/ble_security.rs index c6e2973..71c118a 100644 --- a/src/ble_security.rs +++ b/src/ble_security.rs @@ -1,4 +1,5 @@ use crate::enums; +use esp_idf_svc::sys as esp_idf_sys; pub struct BLESecurity { passkey: u32, diff --git a/src/client/ble_advertised_device.rs b/src/client/ble_advertised_device.rs index 576e4c4..53d664d 100644 --- a/src/client/ble_advertised_device.rs +++ b/src/client/ble_advertised_device.rs @@ -1,6 +1,7 @@ use alloc::boxed::Box; use alloc::vec::Vec; use bstr::{BStr, BString}; +use esp_idf_svc::sys as esp_idf_sys; use crate::enums::{AdvFlag, AdvType}; use crate::utilities::BleUuid; diff --git a/src/client/ble_attribute.rs b/src/client/ble_attribute.rs index 8dd0ff3..c2f9623 100644 --- a/src/client/ble_attribute.rs +++ b/src/client/ble_attribute.rs @@ -1,4 +1,5 @@ use crate::BLEClient; +use esp_idf_svc::sys as esp_idf_sys; pub(crate) trait BLEAttribute { fn get_client(&self) -> Option; diff --git a/src/client/ble_client.rs b/src/client/ble_client.rs index 8b1edf9..7b0a5ec 100644 --- a/src/client/ble_client.rs +++ b/src/client/ble_client.rs @@ -7,6 +7,7 @@ use crate::{ }; use alloc::{boxed::Box, string::ToString, vec::Vec}; use core::{cell::UnsafeCell, ffi::c_void}; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::*; #[allow(clippy::type_complexity)] diff --git a/src/client/ble_reader.rs b/src/client/ble_reader.rs index ef36fc1..96bb4b4 100644 --- a/src/client/ble_reader.rs +++ b/src/client/ble_reader.rs @@ -1,5 +1,6 @@ use alloc::vec::Vec; use core::ffi::c_void; +use esp_idf_svc::sys as esp_idf_sys; use crate::{ble, utilities::voidp_to_ref, BLEError, Signal}; diff --git a/src/client/ble_remote_characteristic.rs b/src/client/ble_remote_characteristic.rs index 9fdc5c3..0eff268 100644 --- a/src/client/ble_remote_characteristic.rs +++ b/src/client/ble_remote_characteristic.rs @@ -11,6 +11,7 @@ use crate::{BLEAttribute, BLEClient}; use alloc::{boxed::Box, vec::Vec}; use bitflags::bitflags; use core::ffi::c_void; +use esp_idf_svc::sys as esp_idf_sys; bitflags! { #[repr(transparent)] diff --git a/src/client/ble_remote_descriptor.rs b/src/client/ble_remote_descriptor.rs index 16a3823..1e6d24e 100644 --- a/src/client/ble_remote_descriptor.rs +++ b/src/client/ble_remote_descriptor.rs @@ -6,6 +6,7 @@ use crate::{ utilities::{BleUuid, WeakUnsafeCell}, BLEError, }; +use esp_idf_svc::sys as esp_idf_sys; #[derive(Clone)] pub struct BLERemoteDescriptor { diff --git a/src/client/ble_remote_service.rs b/src/client/ble_remote_service.rs index 20f9085..b983fb3 100644 --- a/src/client/ble_remote_service.rs +++ b/src/client/ble_remote_service.rs @@ -6,6 +6,7 @@ use crate::{ }; use alloc::vec::Vec; use core::ffi::c_void; +use esp_idf_svc::sys as esp_idf_sys; pub struct BLERemoteServiceState { client: WeakUnsafeCell, diff --git a/src/client/ble_scan.rs b/src/client/ble_scan.rs index 0e521d4..6329354 100644 --- a/src/client/ble_scan.rs +++ b/src/client/ble_scan.rs @@ -3,6 +3,7 @@ use crate::{ble, enums::*, utilities::voidp_to_ref, BLEAdvertisedDevice, BLEErro use alloc::sync::Arc; use alloc::{boxed::Box, vec::Vec}; use core::ffi::c_void; +use esp_idf_svc::sys as esp_idf_sys; pub struct BLEScan { #[allow(clippy::type_complexity)] diff --git a/src/client/ble_writer.rs b/src/client/ble_writer.rs index a9d3436..0f26c3d 100644 --- a/src/client/ble_writer.rs +++ b/src/client/ble_writer.rs @@ -3,6 +3,7 @@ use crate::{ utilities::{as_void_ptr, voidp_to_ref}, BLEError, Signal, }; +use esp_idf_svc::sys as esp_idf_sys; pub struct BLEWriter { conn_handle: u16, diff --git a/src/enums.rs b/src/enums.rs index 9463291..a31dd6c 100644 --- a/src/enums.rs +++ b/src/enums.rs @@ -1,5 +1,5 @@ use bitflags::bitflags; -use esp_idf_sys::*; +use esp_idf_svc::sys::*; use num_enum::{IntoPrimitive, TryFromPrimitive}; #[repr(u8)] @@ -85,21 +85,21 @@ pub enum PowerType { #[repr(u8)] #[derive(Copy, Clone, PartialEq, Debug)] pub enum OwnAddrType { - Public = esp_idf_sys::BLE_OWN_ADDR_PUBLIC as _, - Random = esp_idf_sys::BLE_OWN_ADDR_RANDOM as _, - RpaPublicDefault = esp_idf_sys::BLE_OWN_ADDR_RPA_PUBLIC_DEFAULT as _, - RpaRandomDefault = esp_idf_sys::BLE_OWN_ADDR_RPA_RANDOM_DEFAULT as _, + Public = BLE_OWN_ADDR_PUBLIC as _, + Random = BLE_OWN_ADDR_RANDOM as _, + RpaPublicDefault = BLE_OWN_ADDR_RPA_PUBLIC_DEFAULT as _, + RpaRandomDefault = BLE_OWN_ADDR_RPA_RANDOM_DEFAULT as _, } #[repr(u8)] #[derive(Copy, Clone, PartialEq, Debug)] pub enum ConnMode { /// non-connectable (3.C.9.3.2) - Non = esp_idf_sys::BLE_GAP_CONN_MODE_NON as _, + Non = BLE_GAP_CONN_MODE_NON as _, /// directed-connectable (3.C.9.3.3) - Dir = esp_idf_sys::BLE_GAP_CONN_MODE_DIR as _, + Dir = BLE_GAP_CONN_MODE_DIR as _, /// undirected-connectable (3.C.9.3.4) - Und = esp_idf_sys::BLE_GAP_CONN_MODE_UND as _, + Und = BLE_GAP_CONN_MODE_UND as _, } #[repr(u8)] @@ -143,13 +143,13 @@ bitflags! { #[derive(Copy, Clone, PartialEq, Debug, TryFromPrimitive)] pub enum AdvType { /// indirect advertising - Ind = esp_idf_sys::BLE_HCI_ADV_TYPE_ADV_IND as _, + Ind = BLE_HCI_ADV_TYPE_ADV_IND as _, /// direct advertising - DirectInd = esp_idf_sys::BLE_HCI_ADV_TYPE_ADV_DIRECT_IND_HD as _, + DirectInd = BLE_HCI_ADV_TYPE_ADV_DIRECT_IND_HD as _, /// indirect scan response - ScanInd = esp_idf_sys::BLE_HCI_ADV_TYPE_ADV_SCAN_IND as _, + ScanInd = BLE_HCI_ADV_TYPE_ADV_SCAN_IND as _, /// indirect advertising - not connectable - NonconnInd = esp_idf_sys::BLE_HCI_ADV_TYPE_ADV_NONCONN_IND as _, + NonconnInd = BLE_HCI_ADV_TYPE_ADV_NONCONN_IND as _, // DirectIndLd = esp_idf_sys::BLE_HCI_ADV_TYPE_ADV_DIRECT_IND_LD as _, } @@ -158,11 +158,11 @@ bitflags! { #[derive(Debug, Clone, Copy, PartialEq, Eq)] pub struct AdvFlag: u8 { /// LE Limited Discoverable Mode - const DiscLimited = esp_idf_sys::BLE_HS_ADV_F_DISC_LTD as _; + const DiscLimited = BLE_HS_ADV_F_DISC_LTD as _; /// LE General Discoverable Mode - const DiscGeneral = esp_idf_sys::BLE_HS_ADV_F_DISC_GEN as _; + const DiscGeneral = BLE_HS_ADV_F_DISC_GEN as _; /// BR/EDR Not Supported - const BrEdrUnsupported = esp_idf_sys::BLE_HS_ADV_F_BREDR_UNSUP as _; + const BrEdrUnsupported = BLE_HS_ADV_F_BREDR_UNSUP as _; /// Simultaneous LE and BR/EDR to Same Device Capable (Controller) const SimultaneousController = 0b01000; /// Simultaneous LE and BR/EDR to Same Device Capable (Host) diff --git a/src/lib.rs b/src/lib.rs index bc65b76..f44cede 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -20,10 +20,10 @@ mod ble_address; pub use self::ble_address::*; pub(crate) type Signal = - embassy_sync::signal::Signal; + embassy_sync::signal::Signal; #[allow(dead_code)] pub(crate) type Channel = - embassy_sync::channel::Channel; + embassy_sync::channel::Channel; mod ble_device; pub use self::ble_device::BLEDevice; diff --git a/src/server/ble_advertisement_data.rs b/src/server/ble_advertisement_data.rs index f69c1f8..a8eac2d 100644 --- a/src/server/ble_advertisement_data.rs +++ b/src/server/ble_advertisement_data.rs @@ -1,5 +1,6 @@ use crate::{enums::PowerType, utilities::BleUuid, BLEDevice}; use alloc::{string::String, vec::Vec}; +use esp_idf_svc::sys as esp_idf_sys; pub struct BLEAdvertisementData { // 0x01 - Flags diff --git a/src/server/ble_advertising.rs b/src/server/ble_advertising.rs index 0f2826f..3e7ca2e 100644 --- a/src/server/ble_advertising.rs +++ b/src/server/ble_advertising.rs @@ -1,4 +1,5 @@ use core::ffi::{c_int, c_void}; +use esp_idf_svc::sys as esp_idf_sys; use crate::{ ble, diff --git a/src/server/ble_characteristic.rs b/src/server/ble_characteristic.rs index 823671a..081f4e2 100644 --- a/src/server/ble_characteristic.rs +++ b/src/server/ble_characteristic.rs @@ -1,6 +1,7 @@ use alloc::{boxed::Box, sync::Arc, vec::Vec}; use bitflags::bitflags; use core::{cell::UnsafeCell, ffi::c_void}; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::{ble_uuid_any_t, ble_uuid_cmp}; #[cfg(all( diff --git a/src/server/ble_conn_desc.rs b/src/server/ble_conn_desc.rs index 385b7a5..7420dce 100644 --- a/src/server/ble_conn_desc.rs +++ b/src/server/ble_conn_desc.rs @@ -1,4 +1,5 @@ use crate::{ble, BLEAddress, BLEError}; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::ble_gap_conn_desc; #[repr(transparent)] diff --git a/src/server/ble_descriptor.rs b/src/server/ble_descriptor.rs index 2f278c8..6903494 100644 --- a/src/server/ble_descriptor.rs +++ b/src/server/ble_descriptor.rs @@ -2,6 +2,7 @@ use crate::BLEConnDesc; use alloc::{boxed::Box, vec::Vec}; use bitflags::bitflags; use core::{cell::UnsafeCell, ffi::c_void}; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::{ble_uuid_any_t, ble_uuid_cmp}; use crate::{ diff --git a/src/server/ble_server.rs b/src/server/ble_server.rs index 0df65d9..476bc53 100644 --- a/src/server/ble_server.rs +++ b/src/server/ble_server.rs @@ -5,6 +5,7 @@ use crate::{ }; use alloc::{boxed::Box, sync::Arc, vec::Vec}; use core::{cell::UnsafeCell, ffi::c_void}; +use esp_idf_svc::sys as esp_idf_sys; const BLE_HS_CONN_HANDLE_NONE: u16 = esp_idf_sys::BLE_HS_CONN_HANDLE_NONE as _; const MAX_CONNECTIONS: usize = esp_idf_sys::CONFIG_BT_NIMBLE_MAX_CONNECTIONS as _; diff --git a/src/server/ble_service.rs b/src/server/ble_service.rs index e8dc479..3299cee 100644 --- a/src/server/ble_service.rs +++ b/src/server/ble_service.rs @@ -1,4 +1,5 @@ use alloc::{sync::Arc, vec::Vec}; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::ble_uuid_any_t; use crate::{ diff --git a/src/utilities/ble_functions.rs b/src/utilities/ble_functions.rs index 82ee9e1..a7093bb 100644 --- a/src/utilities/ble_functions.rs +++ b/src/utilities/ble_functions.rs @@ -1,4 +1,5 @@ use crate::{BLEConnDesc, BLEError}; +use esp_idf_svc::sys as esp_idf_sys; #[inline] pub fn ble_gap_conn_find(handle: u16) -> Result { diff --git a/src/utilities/ble_uuid.rs b/src/utilities/ble_uuid.rs index b8a3e25..3109e92 100644 --- a/src/utilities/ble_uuid.rs +++ b/src/utilities/ble_uuid.rs @@ -1,6 +1,7 @@ // Originally: https://github.com/pulse-loop/bluedroid/blob/develop/src/utilities/ble_uuid.rs use alloc::string::String; +use esp_idf_svc::sys as esp_idf_sys; /// A Bluetooth UUID. #[derive(Copy, Clone)] diff --git a/src/utilities/mutex.rs b/src/utilities/mutex.rs index f9ec763..9acbf2a 100644 --- a/src/utilities/mutex.rs +++ b/src/utilities/mutex.rs @@ -2,7 +2,7 @@ use core::cell::UnsafeCell; use core::ops::{Deref, DerefMut}; -use esp_idf_sys::*; +use esp_idf_svc::sys::*; // NOTE: ESP-IDF-specific const PTHREAD_MUTEX_INITIALIZER: u32 = 0xFFFFFFFF; diff --git a/src/utilities/nimble_npl_os.rs b/src/utilities/nimble_npl_os.rs index 236d90d..a5120d6 100644 --- a/src/utilities/nimble_npl_os.rs +++ b/src/utilities/nimble_npl_os.rs @@ -1,4 +1,4 @@ -use esp_idf_sys::*; +use esp_idf_svc::sys::*; #[inline] #[allow(unused)] diff --git a/src/utilities/os_mbuf.rs b/src/utilities/os_mbuf.rs index adaa15a..a09ecf9 100644 --- a/src/utilities/os_mbuf.rs +++ b/src/utilities/os_mbuf.rs @@ -1,4 +1,5 @@ use core::ffi::c_int; +use esp_idf_svc::sys as esp_idf_sys; use esp_idf_sys::os_mbuf; /// Allocate a packet header structure from the MSYS pool. See os_msys_register() for a description of MSYS. From d1b0dcdd33f61d9af8bca22552d552f9f4b7d360 Mon Sep 17 00:00:00 2001 From: taks <857tn859@gmail.com> Date: Thu, 27 Jun 2024 13:09:01 +0900 Subject: [PATCH 3/3] Fix CI --- src/server/ble_ext_advertising.rs | 5 ++--- src/server/cpfd.rs | 1 + 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/server/ble_ext_advertising.rs b/src/server/ble_ext_advertising.rs index 77df529..faa00f2 100644 --- a/src/server/ble_ext_advertising.rs +++ b/src/server/ble_ext_advertising.rs @@ -1,9 +1,8 @@ +use alloc::{vec, vec::Vec}; use core::ffi::c_void; +use esp_idf_svc::sys as esp_idf_sys; use once_cell::sync::Lazy; -use alloc::vec; -use alloc::vec::Vec; - use crate::{ ble, enums::*, diff --git a/src/server/cpfd.rs b/src/server/cpfd.rs index 215039e..fbfae10 100644 --- a/src/server/cpfd.rs +++ b/src/server/cpfd.rs @@ -1,3 +1,4 @@ +use esp_idf_svc::sys as esp_idf_sys; use num_enum::IntoPrimitive; #[derive(Copy, Clone, PartialEq, Eq, Debug, IntoPrimitive)]