implement single RX, still needs timeout handling
This commit is contained in:
parent
8f07873624
commit
14cd5df1e3
2 changed files with 13 additions and 0 deletions
|
@ -138,6 +138,7 @@ uint8_t lora32_data_available(lora32_cfg_t *lora);
|
||||||
double lora32_calc_datarate(lora32_cfg_t *lora);
|
double lora32_calc_datarate(lora32_cfg_t *lora);
|
||||||
void lora32_dump_regs(lora32_cfg_t *lora);
|
void lora32_dump_regs(lora32_cfg_t *lora);
|
||||||
void lora32_enable_continuous_rx(lora32_cfg_t *lora);
|
void lora32_enable_continuous_rx(lora32_cfg_t *lora);
|
||||||
|
void lora32_enable_single_rx(lora32_cfg_t *lora);
|
||||||
void lora32_enable_cad(lora32_cfg_t *lora);
|
void lora32_enable_cad(lora32_cfg_t *lora);
|
||||||
void lora32_toggle_reset(lora32_cfg_t *lora);
|
void lora32_toggle_reset(lora32_cfg_t *lora);
|
||||||
void lora32_send(lora32_cfg_t *config, uint8_t *data, uint8_t len);
|
void lora32_send(lora32_cfg_t *config, uint8_t *data, uint8_t len);
|
||||||
|
|
|
@ -246,6 +246,18 @@ void lora32_set_spreadfactor(lora32_cfg_t *lora, uint8_t factor) {
|
||||||
lora32_write_reg(lora, REG_MODEM_CONFIG_2, (lora32_read_reg(lora, REG_MODEM_CONFIG_2) & 0x0F) | ((factor << 4) & 0xF0));
|
lora32_write_reg(lora, REG_MODEM_CONFIG_2, (lora32_read_reg(lora, REG_MODEM_CONFIG_2) & 0x0F) | ((factor << 4) & 0xF0));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void lora32_enable_single_rx(lora32_cfg_t *lora) {
|
||||||
|
ESP_LOGD(TAG, "MODE_RX_SINGLE");
|
||||||
|
|
||||||
|
if(lora->receive != NULL) {
|
||||||
|
lora32_write_reg(lora, REG_DIO_MAPPING_1, DIO0_MODE_RXDONE);
|
||||||
|
}
|
||||||
|
|
||||||
|
lora32_standby(lora);
|
||||||
|
|
||||||
|
lora32_write_reg(lora, REG_OP_MODE, MODE_LONG_RANGE_MODE | MODE_RX_SINGLE);
|
||||||
|
}
|
||||||
|
|
||||||
void lora32_enable_continuous_rx(lora32_cfg_t *lora) {
|
void lora32_enable_continuous_rx(lora32_cfg_t *lora) {
|
||||||
ESP_LOGD(TAG, "MODE_RX_CONTINUOUS");
|
ESP_LOGD(TAG, "MODE_RX_CONTINUOUS");
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue