diff --git a/src/energenie/drv/hrfm69_test.c b/src/energenie/drv/hrfm69_test.c index 3a99674..2bb450a 100644 --- a/src/energenie/drv/hrfm69_test.c +++ b/src/energenie/drv/hrfm69_test.c @@ -55,7 +55,7 @@ static uint8_t read_ver(void); static void reset(void); -void hrf_test_send_ook_tone(void); +void hrf_test_send_ook_tick(void); void hrf_test_send_energenie_ook_switch(void); @@ -87,8 +87,8 @@ } TRACE_OUTS("testing...\n"); - hrf_test_send_ook_tone(); - //hrf_test_send_energenie_ook_switch(); + //hrf_test_send_ook_tick(); + hrf_test_send_energenie_ook_switch(); //spi_finished(); gpio_finished(); @@ -136,8 +136,8 @@ #define CONFIG_OOK_COUNT (sizeof(config_OOK)/sizeof(HRF_CONFIG_REC)) -// Send a test tone using OOK modulation -void hrf_test_send_ook_tone(void) +// Send a test tick using OOK modulation +void hrf_test_send_ook_tick(void) { /* two blips, to help prove the 01 at start */ static uint8_t payload[] = { @@ -264,9 +264,12 @@ TRACE_OUTS("config\n"); HRF_config(config_OOK, CONFIG_OOK_COUNT); - HRF_writereg(HRF_ADDR_PAYLOADLEN, sizeof(payload)); + // the full packet/burst consists of repeated payloads + HRF_writereg(HRF_ADDR_PAYLOADLEN, sizeof(payload) * REPEATS); + // but the FIFO is filled in 1 message sections HRF_writereg(HRF_ADDR_FIFOTHRESH, sizeof(payload)-1); + //TODO move this into the loop TRACE_OUTS("transmitter mode\n"); HRF_change_mode(HRF_MODE_TRANSMITTER); HRF_pollreg(HRF_ADDR_IRQFLAGS1, HRF_MASK_MODEREADY, HRF_MASK_MODEREADY); @@ -281,27 +284,34 @@ TRACE_OUTS("wait for txready in irqflags1\n"); HRF_pollreg(HRF_ADDR_IRQFLAGS1, HRF_MASK_MODEREADY|HRF_MASK_TXREADY, HRF_MASK_MODEREADY|HRF_MASK_TXREADY); - + //TODO end of move uint8_t last_byte = ON; while (1) { payload[sizeof(payload)-1] = last_byte; + //TODO put radio into TX mode first + TRACE_OUTS("tx:"); TRACE_OUTN(last_byte); TRACE_NL(); + // send a number of payload repeats for the whole packet burst for (i=0; i