Ejemplo n.º 1
0
/**
 * @brief Function for application main entry.
 */
int main(void)
{
    // Initialize.
    leds_init();

    timers_init();

    ble_stack_init();

    gap_params_init();

    advertising_init();

    // Start execution.
    advertising_start();

    application_timers_start();

   // sd_ble_gap_adv_stop();

    //advertising_start();
    //sd_ble_gap_adv_stop();

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
/**@brief Function for application main entry.
 */
int main(void)
{
    bool erase_bonds;

    // Initialize.
    log_init();
    timers_init();
    buttons_leds_init(&erase_bonds);
    power_management_init();
    ble_stack_init();
    gap_params_init();
    gatt_init();

	  services_init();
		advertising_init();



    conn_params_init();
    peer_manager_init();

    // Start execution.
    NRF_LOG_INFO("OurCharacteristics tutorial started.");
    application_timers_start();

    advertising_start(erase_bonds);

    // Enter main loop.
    for (;;)
    {
        idle_state_handle();
    }
}
Ejemplo n.º 3
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    // Initialize.
    ble_stack_init();
    timers_init();
    APP_GPIOTE_INIT(1);
    err_code = bsp_init(BSP_INIT_LED | BSP_INIT_BUTTONS, APP_TIMER_TICKS(100, APP_TIMER_PRESCALER), NULL);
    APP_ERROR_CHECK(err_code);
    device_manager_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    ble_evt_pool      = osPoolCreate(osPool(ble_evt_pool));
    ble_stack_msg_box = osMessageCreate(osMessageQ(ble_stack_msg_box), NULL);

    // Start execution.
    ble_stack_thread_id = osThreadCreate(osThread(ble_stack_thread), NULL);
    UNUSED_VARIABLE(ble_stack_thread_id);
    application_timers_start();
    advertising_start();

    // Enter main loop.
    for (;; )
    {
        UNUSED_VARIABLE(osDelay(1000));
    }
}
Ejemplo n.º 4
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;

    // Initialize.
    ble_stack_init();
    timers_init();

    err_code = bsp_init(BSP_INIT_LED, APP_TIMER_TICKS(100, APP_TIMER_PRESCALER), NULL);
    APP_ERROR_CHECK(err_code);

    device_manager_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();
    
    beacon_scanner_init.evt_handler   = beacon_evt_handler;
    beacon_scanner_init.error_handler = beacon_scanner_error_handler;
    app_beacon_scanner_init(&beacon_scanner_init);
    app_beacon_scanner_start();

    // Start execution.
    application_timers_start();
    advertising_start();

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 5
0
/**@brief Function for application main entry.
 */
int main(void)
{
    // Initialize.
    app_trace_init();
    leds_init();
    buttons_init();
    timers_init();
    ble_stack_init();
    device_manager_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_sim_init();
    conn_params_init();

    // Start execution.
    application_timers_start();
    advertising_start();

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 6
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    app_trace_init();
    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    conn_params_init();

    // Start execution.
    application_timers_start();
    APPL_LOG("Start Advertising \r\n");
    printf("Dhavaltest\r\n");
    SEGGER_RTT_WriteString(0, "SEGGER Real-Time-Terminal Sample\r\n");
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 7
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    conn_params_init();
    saadc_init();

    // Start execution.
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    // Enter main loop.
    for (;;)
    {
       			  // trigger next ADC conversion
        nrf_drv_saadc_sample_convert(0,&adc_sample);
        advdata.p_manuf_specific_data->data.p_data[0] = adc_sample/100 + '0';
        advdata.p_manuf_specific_data->data.p_data[1] = adc_sample%100/10 + '0';
        advdata.p_manuf_specific_data->data.p_data[2] = adc_sample%10 + '0';
        nrf_delay_ms(100);
        ble_advdata_set(&advdata, NULL);
    }
}
Ejemplo n.º 8
0
/**@brief Function for application main entry.
 */
int main(void)
{
    SEGGER_RTT_WriteString(0, "\033[2JTutorial Start.\n\n");
    uint32_t err_code;
    bool erase_bonds;

    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    services_init();
    advertising_init();
    conn_params_init();

    // Start execution.
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 9
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    

    // Initialize.
    app_trace_init();
    timers_init();
	
		bool erase_bonds;
    buttons_leds_init(&erase_bonds);
		device_manager_init(erase_bonds);
	
    ble_stack_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    // Start execution.
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);
		
		
    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 10
0
Archivo: main.c Proyecto: IOIOI/nRF51
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    ble_evt_pool      = osPoolCreate(osPool(ble_evt_pool));
    ble_stack_msg_box = osMessageCreate(osMessageQ(ble_stack_msg_box), NULL);

    // Start execution.
    ble_stack_thread_id = osThreadCreate(osThread(ble_stack_thread), NULL);
    UNUSED_VARIABLE(ble_stack_thread_id);
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    // Enter main loop.
    for (;; )
    {
        UNUSED_VARIABLE(osDelay(1000));
    }
}
Ejemplo n.º 11
0
/**@brief Application main function.
 */
int main(void)
{
    // Initialize
    leds_init();
    buttons_init();
    ble_stack_init();
    bond_manager_init();
    timers_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_sim_init();
    conn_params_init();
    sec_params_init();
    radio_notification_init();

    // Start execution
    application_timers_start();
    advertising_start();

    // Enter main loop
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 12
0
Archivo: main.c Proyecto: tkadom/TWBLE
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    // Initialize.
    app_trace_init();
    ble_stack_init();
    device_manager_init();
    timers_init();
    APP_GPIOTE_INIT(APP_GPIOTE_MAX_USERS);
    err_code = bsp_init(BSP_INIT_LED | BSP_INIT_BUTTONS,
                        APP_TIMER_TICKS(100, APP_TIMER_PRESCALER),
                        NULL);
    APP_ERROR_CHECK(err_code);
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    // Start execution.
    application_timers_start();
    advertising_start();

    // Enter main loop.
    for (;; )
    {
        power_manage();
    }
}
Ejemplo n.º 13
0
/**@brief Function for handling the Application's BLE Stack events.
 *
 * @param[in]   p_ble_evt   Bluetooth stack event.
 */
static void on_ble_evt(ble_evt_t * p_ble_evt)
{
    uint32_t        err_code      = NRF_SUCCESS;
    static uint16_t m_conn_handle = BLE_CONN_HANDLE_INVALID;

    switch (p_ble_evt->header.evt_id)
    {
        case BLE_GAP_EVT_CONNECTED:
            led_stop();
            
            m_conn_handle = p_ble_evt->evt.gap_evt.conn_handle;
            
            // Initialize the current heart rate to the average of max and min values. So that
            // everytime a new connection is made, the heart rate starts from the same value.
            m_cur_heart_rate = (MAX_HEART_RATE + MIN_HEART_RATE) / 2;

            // Start timers used to generate battery and HR measurements.
            application_timers_start();

            // Start handling button presses
            err_code = app_button_enable();
            break;

        case BLE_GAP_EVT_DISCONNECTED:
            // Since we are not in a connection and have not started advertising, store bonds
            err_code = ble_bondmngr_bonded_masters_store();
            APP_ERROR_CHECK(err_code);

            // Go to system-off mode, should not return from this function, wakeup will trigger
            // a reset.
            system_off_mode_enter();
            break;

        case BLE_GAP_EVT_SEC_PARAMS_REQUEST:
            err_code = sd_ble_gap_sec_params_reply(m_conn_handle, 
                                                BLE_GAP_SEC_STATUS_SUCCESS, 
                                                &m_sec_params);
            break;

        case BLE_GAP_EVT_TIMEOUT:
            if (p_ble_evt->evt.gap_evt.params.timeout.src == BLE_GAP_TIMEOUT_SRC_ADVERTISEMENT)
            {
                led_stop();
                GPIO_WAKEUP_BUTTON_CONFIG(HR_INC_BUTTON_PIN_NO);
                GPIO_WAKEUP_BUTTON_CONFIG(HR_DEC_BUTTON_PIN_NO);
                system_off_mode_enter();
            }
            break;

        default:
            break;
    }

    APP_ERROR_CHECK(err_code);
}
Ejemplo n.º 14
0
void ble_hrs_app_start(void)
{
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();
    application_timers_start();
    sec_params_init();
    advertising_start();
}
Ejemplo n.º 15
0
/**@brief Function for handling the Application's BLE Stack events.
 *
 * @param[in]   p_ble_evt   Bluetooth stack event.
 */
static void on_ble_evt(ble_evt_t * p_ble_evt)
{
    uint32_t        err_code;

    switch (p_ble_evt->header.evt_id)
    {
        case BLE_GAP_EVT_CONNECTED:
            led_stop();
            
            // Initialize the current heart rate to the average of max and min values. So that
            // everytime a new connection is made, the heart rate starts from the same value.
            m_cur_heart_rate = (MAX_HEART_RATE + MIN_HEART_RATE) / 2;

            // Start timers used to generate battery and HR measurements.
            application_timers_start();

            // Start handling button presses
            err_code = app_button_enable();
            APP_ERROR_CHECK(err_code);
            break;

        case BLE_GAP_EVT_DISCONNECTED:            
            // @note Flash access may not be complete on return of this API. System attributes are now
            // stored to flash when they are updated to ensure flash access on disconnect does not
            // result in system powering off before data was successfully written.

            // Go to system-off mode, should not return from this function, wakeup will trigger
            // a reset.
            system_off_mode_enter();
            break;

        case BLE_GAP_EVT_TIMEOUT:
            if (p_ble_evt->evt.gap_evt.params.timeout.src == BLE_GAP_TIMEOUT_SRC_ADVERTISEMENT)
            {
                led_stop();
                
                nrf_gpio_cfg_sense_input(HR_INC_BUTTON_PIN_NO,
                                         BUTTON_PULL, 
                                         NRF_GPIO_PIN_SENSE_LOW);

                nrf_gpio_cfg_sense_input(HR_DEC_BUTTON_PIN_NO,
                                         BUTTON_PULL, 
                                         NRF_GPIO_PIN_SENSE_LOW);

                system_off_mode_enter();
            }
            break;

        default:
            // No implementation needed.
            break;
    }
}
Ejemplo n.º 16
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;

    // Initialize.
    app_trace_init();
    timers_init();
    APP_GPIOTE_INIT(1);

    const app_uart_comm_params_t comm_params =
       {
           RX_PIN_NUMBER,
           TX_PIN_NUMBER,
           RTS_PIN_NUMBER,
           CTS_PIN_NUMBER,
           APP_UART_FLOW_CONTROL_ENABLED,
           false,
           UART_BAUDRATE_BAUDRATE_Baud38400
       };

    APP_UART_FIFO_INIT(&comm_params,
                          UART_RX_BUF_SIZE,
                          UART_TX_BUF_SIZE,
                          uart_error_handle,
                          APP_IRQ_PRIORITY_LOW,
                          err_code);

    err_code = bsp_init(BSP_INIT_LED | BSP_INIT_BUTTONS,
                        APP_TIMER_TICKS(100, APP_TIMER_PRESCALER),
                        button_event_handler);
    APP_ERROR_CHECK(err_code);

    ble_stack_init();

    device_manager_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    // Start execution.
    application_timers_start();
    advertising_start();

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 17
0
int main(void)
{
	uint32_t err_code;
	bool erase_bonds;
	
	/* Initialise debugging port */
  debug_init();
  debug_printf("Debug port opened... Initialising...\r\n");
	
	/* Initialise GPIO subsystem */
	err_code = nrf_drv_gpiote_init();
	if (err_code == NRF_SUCCESS)
		debug_printf("GPIOTE initialised!\r\n");
	else
	{
			debug_printf("Ooops.. Something is wrong with initialising GPIOTE..\r\n");
			APP_ERROR_CHECK(err_code);
	}

	led_init();
	adc_init();
	debug_printf("Visual feedback should be active!\r\n");
	
	timers_init();
	ble_stack_init();
	beacon_adv_init();
	device_manager_init(erase_bonds);
	gap_params_init();
	advertising_init();
	services_init();
	conn_params_init();
	
	application_timers_start();
  advertising_start();
	
	led_rgb_set(LED_RED, true);
	led_rgb_set(LED_GREEN, false);
	led_rgb_set(LED_BLUE, false);
	
	debug_printf("Readyyy.. \r\n");
	
  while (true)
  {
		power_manage();
	}
}
Ejemplo n.º 18
0
/**@brief Function for application main entry.
 */
int main(void)
{
	system_HFCLK_init();
	// uart init
    simple_uart_config(RTS_PIN_NUMBER, TX_PIN_NUMBER, CTS_PIN_NUMBER, RX_PIN_NUMBER, 0); 
    xprintf("APP start up..\r\n");
	
	mcu_bootloader_check();
    // Initialize.
    app_trace_init();
    leds_init();
    buttons_init();
    ble_stack_init();
    device_manager_init();
    timers_init();
    gap_params_init();
    advertising_init();
    services_init();
    sensor_sim_init();
    conn_params_init();
	
	//I2C and sensor initial
	system_I2C_init();
	OLED_Init();
	sensor_init();
	enter_pedo_mode();	
	
	GPIO_HiToLo_INT_config(BUTTON_2);
	
	// Test battery
	if(!battery_self_detect())
    {
        system_low_battery();
    }
	
	// Start execution.
    application_timers_start();
    advertising_start();
	
	// Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 19
0
void ble_peripheral_mode_init(void) { 
    uint32_t err_code;
	
    timers_init();
	
    ble_stack_init();
    device_manager_init();
    gap_params_init();
    services_init();
    advertising_init();
    conn_params_init();

    // Start execution.
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);
		
    application_timers_start();
}
Ejemplo n.º 20
0
Archivo: main.c Proyecto: tkadom/TWBLE
/**@brief Function for evaluating the value written in CCCD 
 *
 * @details This shall be called when there is a write event received from the stack. This 
 *          function will evaluate whether or not the peer has enabled notifications and
 *          start/stop notifications accordingly.
 *
 * @param[in]   p_ble_evt   Bluetooth stack event.
 */
static void on_write(ble_evt_t * p_ble_evt)
{
    ble_gatts_evt_write_t * p_evt_write = &p_ble_evt->evt.gatts_evt.params.write;

    if ((p_evt_write->handle == m_char_handles.cccd_handle) && (p_evt_write->len == 2))
    {
        // CCCD written. Start notifications
        m_is_notifying_enabled = ble_srv_is_notification_enabled(p_evt_write->data);

        if (m_is_notifying_enabled)
        {
            application_timers_start();
            char_notify();
        }
        else
        {
            application_timers_stop();
        }
    }
}
Ejemplo n.º 21
0
/**@brief Application main function.
 */
int main(void)
{
    APP_GPIOTE_INIT(1); 
    connectivity_chip_reset();
    
    leds_init();
    buttons_init();    
    bond_manager_init();
    ble_stack_init();
    ble_error_log_init();
    timers_init();
    nrf_gpio_pin_set(NRF6310_LED_5);
    gap_params_init();
    nrf_gpio_pin_clear(NRF6310_LED_5);
    advertising_init();
    services_init();
    sensor_sim_init();
    conn_params_init();
    sec_params_init();
    radio_notification_init();
   
    // Start execution
    application_timers_start();
    //m_start_adv_flag = true;
    advertising_start();
    
    // Enter main loop
    for (;;)
    {
//         uint32_t err_code;
//         // Start/restart advertising.
//         if (m_start_adv_flag)
//         {
//             err_code = sd_ble_gap_adv_start(&m_adv_params);
//             APP_ERROR_CHECK(err_code);
//             nrf_gpio_pin_set(ADVERTISING_LED_PIN_NO);
//             m_start_adv_flag = false;
//         }
        power_manage();
    }
}
Ejemplo n.º 22
0
/**@brief Function for application main entry.
 */
int main(void)
{
    bool     erase_bonds;
    uint32_t err_code;

    // Initialize.
    err_code = NRF_LOG_INIT(NULL);
    APP_ERROR_CHECK(err_code);

    // Clear bond flag
    bond_present = false;

    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    peer_manager_init(erase_bonds);
    if (erase_bonds == true)
    {
        NRF_LOG_INFO("Bonds erased!\r\n");
    }
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();
    whitelist_load();
    nfc_init(erase_bonds);

    // Start execution.
    NRF_LOG_INFO("Heart Rate Sensor NFC Start!\r\n");
    application_timers_start();

    // Enter main loop.
    for (;;)
    {
        if (NRF_LOG_PROCESS() == false)
        {
            power_manage();
        }
    }
}
Ejemplo n.º 23
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    //uart_config();

    //printf("\n\rBDC HAL simple example\r\n"); //GETS HERE, Dies after first letter!

    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    //sensor_simulator_init();
    conn_params_init();

    //uart_config();

    //printf("\n\rBDC HAL simple example\r\n"); //GETS HERE, Dies after first letter!

    //printf("Current sample value:\r\n");

    adc_config();

    // Start execution.
    application_timers_start();
    nrf_adc_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 24
0
/**@brief Application main function.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    err_code = NRF_LOG_INIT(NULL);
    APP_ERROR_CHECK(err_code);

    // Initialize
    timers_init();
    buttons_leds_init(&erase_bonds);

    ble_stack_init();
    peer_manager_init(erase_bonds);
    if (erase_bonds == true)
    {
        NRF_LOG_INFO("Bonds erased!\r\n");
    }
    gap_params_init();
    advertising_init();
    services_init();
    sim_init();
    conn_params_init();

    // Start execution
    application_timers_start();
    NRF_LOG_INFO("Location and Navigation App started\r\n");
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    // Enter main loop
    for (;;)
    {
        if (NRF_LOG_PROCESS() == false)
        {
            power_manage();
        }
    }
}
Ejemplo n.º 25
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds = true;
	char buffer[256] = {'\0'};

    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
	UART_init();
	printf("S130 Template\n");
	printf(TBC);
	
    Ble_Init(erase_bonds);
	printf("BLE is up\n");
	printf(TBC);

    // Start execution.
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

	printf("app start\n");
	printf(TBC);

    // Enter main loop.
    for (;;)
    {
		if (UART_RxReady()) {
			UART_GetBuffer(buffer, sizeof(buffer) - 1);
			printf("<<< %s\n", buffer);
			BLE_Uart_Send(buffer, strlen(buffer));
		}

		if (UART_TxReady()) {
			power_manage();
		}
    }
}
Ejemplo n.º 26
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;
    rotation_counter = NRF_TIMER1;
    debounce_timer = NRF_TIMER2;
    
    // Initialize.
    app_trace_init();
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    usr_init(30);
    set_pin(USR_EN_PIN);
    bat_adc_init(4);
    
    gpio_pin_out_init(BRD_LED_PIN);

    // Start execution.
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);
    usr_init(30);

    // Enter main loop.
    for (;; )
    {
        power_manage();
    }
}
Ejemplo n.º 27
0
Archivo: main.c Proyecto: IOIOI/nRF51
/**@brief Thread for handling the Application's BLE Stack events.
 *
 * @details This thread is responsible for handling BLE Stack events sent from on_ble_evt().
 *
 * @param[in]   arg   Pointer used for passing some arbitrary information (context) from the
 *                    osThreadCreate() call to the thread.
 */
static void ble_stack_thread(void * arg)
{
    uint32_t  err_code;
    bool      erase_bonds;

    UNUSED_PARAMETER(arg);

    // Initialize.
    timers_init();
    buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    sensor_simulator_init();
    conn_params_init();

    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    while (1)
    {
        /* Wait for event from SoftDevice */
        while(pdFALSE == xSemaphoreTake(m_ble_event_ready, portMAX_DELAY))
        {
            // Just wait again in the case when INCLUDE_vTaskSuspend is not enabled
        }

        // This function gets events from the SoftDevice and processes them by calling the function
        // registered by softdevice_ble_evt_handler_set during stack initialization.
        // In this code ble_evt_dispatch would be called for every event found.
        intern_softdevice_events_execute();
    }
}
Ejemplo n.º 28
0
/**@brief Function for application main entry, does not return.
 */
int main(void)
{
		bool erase_bonds;
		uint32_t err_code;
	
	
    utils_setup(&erase_bonds);
	  softdevice_and_stack_setup();
	
	  //ANT
    
	 
		//BLE
	
    // Initialize BLE STACK parameters
    gap_params_init();
		advertising_init();
    services_init();
    conn_params_init();

	

    // Start execution.
    application_timers_start();
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
		profile_setup();
    APP_ERROR_CHECK(err_code);

		device_manager_init(erase_bonds);


    for (;; )
    {
        power_manage();
    }
}
Ejemplo n.º 29
0
Archivo: main.c Proyecto: t21/HomeHub
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    // Initialize.
    gpio_init();
    // TODO: Measure battery
    nrf_gpio_pin_set(LED_1);
    err_code = NRF_LOG_INIT();
    APP_ERROR_CHECK(err_code);
        
    twi_init();
    sensors_init(&m_app_twi, sensors_callback);

    timers_init();
    buttons_leds_init();
//    erase_bonds = false;
    ble_stack_init();
    detect_erase_bond_pressed(&erase_bonds);
//    bool button;
//    err_code = app_button_is_pushed(0, &button);
//    APP_ERROR_CHECK(err_code);
//    uint8_t count = 0;
//    while (button) {
//        nrf_delay_ms(100);
//        count++;
//        if (count > 20) {
//            erase_bonds = true;
//            NRF_LOG_DEBUG("Erasing bonds!\r\n");
//            break;
//        }
//        err_code = app_button_is_pushed(0, &button);
//        APP_ERROR_CHECK(err_code);
//    }
//    while (button) {
//        nrf_gpio_pin_clear(LED_1);
//        nrf_delay_ms(200);
//        nrf_gpio_pin_set(LED_1);
//        nrf_delay_ms(200);
//        err_code = app_button_is_pushed(0, &button);
//        APP_ERROR_CHECK(err_code);
//    }
//    
    
    peer_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    conn_params_init();
//    radio_notification_init();
    nrf_gpio_pin_clear(LED_1);

    // Start execution.
    application_timers_start();
    advertising_start();
//    sensors_measure();
    sensors_timers_init();
    sensors_timers_start();

    // Enter main loop.
    for (;;)
    {
        power_manage();
    }
}
Ejemplo n.º 30
0
/**@brief Function for application main entry.
 */
int main(void)
{
    uint32_t err_code;
    bool erase_bonds;

    sensor_init();

    app_trace_init();
    // Initialize.
    timers_init();
#if SOFTDEVICE_7_1_0 == 1
    application_timers_start();
#endif
    //buttons_leds_init(&erase_bonds);
    ble_stack_init();
    device_manager_init(erase_bonds);
    gap_params_init();
    advertising_init();
    services_init();
    conn_params_init();
    sentek_init();

    // Start execution.

#if SOFTDEVICE_7_1_0 != 1
    application_timers_start();
#endif
    APPL_LOG("Start Advertising \r\n");
    err_code = ble_advertising_start(BLE_ADV_MODE_FAST);
    APP_ERROR_CHECK(err_code);

    //************* Config Section *******************
    cfgResetConfig();

    cfgReadConfig((void *)&cfg_test, &test, sizeof(test));
    test = 4444;
    cfgWriteConfig(&cfg_test, &test, sizeof(test));
//    cfgReadConfig(&cfg_test, &test, sizeof(test));
    test = 1000;
    cfgReadConfig(&cfg_test, &test, sizeof(test));
//    cfgReadConfigDirect(&test, &cfg_test, sizeof(test));
    cfgReadConfigDirect(&cfg_test, &test, sizeof(test));
//    cfgReadConfig(&cfg_test, &test, sizeof(test));
    //************* Config Section *******************

    initDone = true;

    // Enter main loop.
    for (;;)
    {
#if (SOFTDEVICE_7_1_0 == 1) && (SDK_IS_9_0_0_OR_ABOVE == 1)
    	if(!log_seconds()) {
    		power_manage();
    	}
#else
		log_seconds();
		agsensor_update();
        power_manage();
#endif

        if ((sentek_measurement_time_counter >= 250) && (initDone == true)) {
        	sentek_measurement_time_counter = 0;
            sentek_measurement_loop();
        }
    }
}