69
69
name : "Trouble" ,
70
70
appearance : & appearance:: GENERIC_POWER ,
71
71
} ) ,
72
- ) ;
72
+ )
73
+ . expect ( "Failed to create GATT server" ) ;
73
74
74
75
info ! ( "Starting advertising and GATT service" ) ;
75
76
let _ = join3 (
@@ -87,13 +88,17 @@ async fn ble_task<C: Controller>(mut runner: Runner<'_, C>) -> Result<(), BleHos
87
88
async fn gatt_task < C : Controller > ( server : & Server < ' _ , ' _ , C > ) {
88
89
loop {
89
90
match server. next ( ) . await {
90
- Ok ( GattEvent :: Write { handle, connection : _ } ) => {
91
- let _ = server. get ( handle, |value| {
92
- info ! ( "[gatt] Write event on {:?}. Value written: {:?}" , handle, value) ;
93
- } ) ;
91
+ Ok ( GattEvent :: Write {
92
+ value_handle,
93
+ connection : _,
94
+ } ) => {
95
+ info ! ( "[gatt] Write event on {:?}" , value_handle) ;
94
96
}
95
- Ok ( GattEvent :: Read { handle, connection : _ } ) => {
96
- info ! ( "[gatt] Read event on {:?}" , handle) ;
97
+ Ok ( GattEvent :: Read {
98
+ value_handle,
99
+ connection : _,
100
+ } ) => {
101
+ info ! ( "[gatt] Read event on {:?}" , value_handle) ;
97
102
}
98
103
Err ( e) => {
99
104
error ! ( "[gatt] Error processing GATT events: {:?}" , e) ;
@@ -134,7 +139,7 @@ async fn advertise_task<C: Controller>(
134
139
Timer :: after ( Duration :: from_secs ( 2 ) ) . await ;
135
140
tick = tick. wrapping_add ( 1 ) ;
136
141
info ! ( "[adv] notifying connection of tick {}" , tick) ;
137
- let _ = server. notify ( server. battery_service . level , & conn, & [ tick] ) . await ;
142
+ let _ = server. notify ( & server. battery_service . level , & conn, & tick) . await ;
138
143
}
139
144
}
140
145
}
0 commit comments