Ejemplo n.º 1
0
/*---------------------------------------------------------------------------*/
PROCESS_THREAD(hello_world_process, ev, data)
{
  PROCESS_BEGIN();
  frame_manager_init();


	status_led_init();
	status_led_rx_on(led_on);
	status_led_tx_on(led_on);

  etimer_set(&et_hello, 1 * CLOCK_SECOND);

  while( 1 )
  {

    PROCESS_WAIT_EVENT();

    if(ev == PROCESS_EVENT_TIMER) {

			if (led_on) led_on = FALSE;
			else led_on = TRUE;

			status_led_rx_on(led_on);
			status_led_tx_on(led_on);

			etimer_reset(&et_hello);
    }
  }
  PROCESS_END();
}
Ejemplo n.º 2
0
void OnTxDone( void )
{
	 // Reset RF state
	 lora_radio_driver.off();
	 printf("TX sent\n\r");
   tx_ongoing =0;
   status_led_tx_on(FALSE);
#ifdef LORAFAB_RESTART_RX_AFTER_TX
		lora_radio_driver.on();
		printf("Restart RX\n\r");
#endif

}
Ejemplo n.º 3
0
/*---------------------------------------------------------------------------*/
static int
transmit_packet(unsigned short len)
{
		if (tx_msg_ptr != NULL && tx_msg_size != 0) {
			if (!tx_ongoing) {
				status_led_tx_on(TRUE);
			  Radio.Send( tx_msg_ptr,  tx_msg_size);

				tx_ongoing =1;
			}
			else {
				printf("ERROR: TX already ongoing, message discarded\n\r");
			}
		}
		else {
			printf("ERROR: TX message empty\n\r");
		}


  return 0;
}