diff --git a/drivers/wireless/generic/si4463.c b/drivers/wireless/generic/si4463.c
index 6ccff82367552e011937220194da0adf17d146f5..6baae85bff1ef894819f56501d031ff76af244f1 100644
--- a/drivers/wireless/generic/si4463.c
+++ b/drivers/wireless/generic/si4463.c
@@ -153,14 +153,6 @@ struct si4463_dev_s
  * Private function prototypes
  ****************************************************************************/
 
-#if 0
-static void si4463_lock      (FAR struct spi_dev_s *spi);
-static int  si4463_initialize(FAR struct si4463_dev_s *dev, int txpin,
-                              int rxpin);
-static void si4463_irqworker (FAR void *arg);
-static int  si4463_interrupt (int irq, FAR void *context, FAR void *arg);
-#endif
-
 static int si4463_setbasefreq       (FAR struct genradio_dev_s *dev, 
                                      uint32_t Hz);
 static int si4463_setchanspacing    (FAR struct genradio_dev_s *dev,
@@ -2150,8 +2142,6 @@ static int si4463_rxenable(FAR struct genradio_dev_s *dev, int state)
 
   _info("called, buf=%p len=%d chan=%d\n", dev->rxbuf, dev->rxlen, dev->channel);
 
-  /* enable RX interrupts */
-
   /* Setup field 2 length to the MAX receivable length */
   ret = si4463_setprop_short(priv, SI4463_PROP_PKT_FIELD_2_LENGTH_0, 0x1FFF);
   if(ret != 0)
@@ -2165,15 +2155,9 @@ static int si4463_rxenable(FAR struct genradio_dev_s *dev, int state)
   cmd_rx.condition   = STARTRX_CONDITION_IMMEDIATE;
   cmd_rx.rx_len      = 0;
 
-#if 1
-  cmd_rx.next_state1 = STARTRX_STATE_READY;
-  cmd_rx.next_state2 = STARTRX_STATE_READY;
-  cmd_rx.next_state3 = STARTRX_STATE_READY;
-#else
-  cmd_rx.next_state1 = STARTRX_STATE_RX;
-  cmd_rx.next_state2 = STARTRX_STATE_READY;
-  cmd_rx.next_state3 = STARTRX_STATE_READY;
-#endif
+  cmd_rx.next_state1 = STARTRX_STATE_RX;    /* State after RX timeout */
+  cmd_rx.next_state2 = STARTRX_STATE_READY; /* State after RX valid */
+  cmd_rx.next_state3 = STARTRX_STATE_READY; /* State after RX invalid */
 
   /* Prepare reception state: no bytes received yet (in public and private states)*/
   dev ->rxdone       = 0;
diff --git a/drivers/wireless/generic/si4463.h b/drivers/wireless/generic/si4463.h
index edad19f1f002e9af338e115437ca7a77cff019c1..27dd97d6f18326ae22b9bd35f80ed5b2a476d86a 100644
--- a/drivers/wireless/generic/si4463.h
+++ b/drivers/wireless/generic/si4463.h
@@ -1,7 +1,7 @@
 /****************************************************************************
  * drivers/wireless/generic/si4463.h
  *
- *   Copyright (C) 2017 Sebastien Lorquet. All rights reserved.
+ *   Copyright (C) 2017-2018 Sebastien Lorquet. All rights reserved.
  *   Author: Sebastien Lorquet <sebastien@lorquet.fr>
  *
  * Redistribution and use in source and binary forms, with or without
@@ -453,7 +453,7 @@ end_packed_struct;
 
 
 #define STARTRX_CONDITION_WUT       (1 << 0)
-#define STARTRX_CONDITION_IMMEDIATE (1 << 0)
+#define STARTRX_CONDITION_IMMEDIATE (0 << 0)
 #define STARTRX_STATE_NOCHANGE      0
 #define STARTRX_STATE_SLEEP         1 
 #define STARTRX_STATE_SPI_ACTIVE    2