void main(void) { int err; err = bt_enable(bt_ready); if (err) { printk("Bluetooth init failed (err %d)\n", err); return; } bt_conn_cb_register(&conn_callbacks); bt_conn_auth_cb_register(&auth_cb_display); /* Implement notification. At the moment there is no suitable way * of starting delayed work so we do it here */ while (1) { k_sleep(MSEC_PER_SEC); /* Heartrate measurements simulation */ hrs_notify(); /* Battery level simulation */ bas_notify(); } }
void main(void) #endif { int err; err = bt_enable(bt_ready); if (err) { printk("Bluetooth init failed (err %d)\n", err); return; } bt_conn_cb_register(&conn_callbacks); while (1) { task_sleep(sys_clock_ticks_per_sec); /* CSC simulation */ if (csc_simulate) { csc_simulation(); } /* Battery level simulation */ bas_notify(); } }
void main(void) { int err; err = bt_enable(bt_ready); if (err) { printk("Bluetooth init failed (err %d)\n", err); return; } bt_conn_cb_register(&conn_callbacks); bt_conn_auth_cb_register(&auth_cb_display); /* Implement notification. At the moment there is no suitable way * of starting delayed work so we do it here */ while (1) { task_sleep(sys_clock_ticks_per_sec); /* Current Time Service updates only when time is changed */ cts_notify(); /* Heartrate measurements simulation */ hrs_notify(); /* Battery level simulation */ bas_notify(); /* Vendor indication simulation */ if (simulate_vnd) { if (indicating) { continue; } ind_params.attr = &vnd_attrs[2]; ind_params.func = indicate_cb; ind_params.data = &indicating; ind_params.len = sizeof(indicating); if (bt_gatt_indicate(NULL, &ind_params) == 0) { indicating = 1; } } } }