mirror of
https://github.com/lumapu/ahoy.git
synced 2025-07-08 12:07:16 +02:00
0.8.24
* fix NRF communication for opendtufusion ethernet variant
This commit is contained in:
parent
222bf0e54a
commit
f191c036bb
8 changed files with 29 additions and 17 deletions
|
@ -10,7 +10,7 @@
|
|||
#include "SPI.h"
|
||||
#include "radio.h"
|
||||
#include "../config/config.h"
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(ETHERNET)
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SPI_HAL)
|
||||
#include "nrfHal.h"
|
||||
#endif
|
||||
|
||||
|
@ -35,8 +35,8 @@ class HmRadio : public Radio {
|
|||
HmRadio() {
|
||||
mDtuSn = DTU_SN;
|
||||
mIrqRcvd = false;
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(ETHERNET)
|
||||
mNrf24.reset(new RF24());
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SPI_HAL)
|
||||
//mNrf24.reset(new RF24());
|
||||
#else
|
||||
mNrf24.reset(new RF24(CE_PIN, CS_PIN, SPI_SPEED));
|
||||
#endif
|
||||
|
@ -56,8 +56,8 @@ class HmRadio : public Radio {
|
|||
DTU_RADIO_ID = ((uint64_t)(((mDtuSn >> 24) & 0xFF) | ((mDtuSn >> 8) & 0xFF00) | ((mDtuSn << 8) & 0xFF0000) | ((mDtuSn << 24) & 0xFF000000)) << 8) | 0x01;
|
||||
|
||||
#ifdef ESP32
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(ETHERNET)
|
||||
mNrfHal.init(mosi, miso, sclk, cs, ce);
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SPI_HAL)
|
||||
mNrfHal.init(mosi, miso, sclk, cs, ce, SPI_SPEED);
|
||||
mNrf24.reset(new RF24(&mNrfHal));
|
||||
#else
|
||||
#if CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32S2 || CONFIG_IDF_TARGET_ESP32S3
|
||||
|
@ -73,7 +73,7 @@ class HmRadio : public Radio {
|
|||
mSpi->begin();
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(ETHERNET)
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SPI_HAL)
|
||||
mNrf24->begin();
|
||||
#else
|
||||
mNrf24->begin(mSpi.get(), ce, cs);
|
||||
|
@ -133,14 +133,12 @@ class HmRadio : public Radio {
|
|||
yield();
|
||||
}
|
||||
// switch to next RX channel
|
||||
if(++mRxChIdx >= RF_CHANNELS)
|
||||
mRxChIdx = 0;
|
||||
mRxChIdx = (mRxChIdx + 1) % RF_CHANNELS;
|
||||
mNrf24->setChannel(mRfChLst[mRxChIdx]);
|
||||
startMicros = micros();
|
||||
}
|
||||
// not finished but time is over
|
||||
if(++mRxChIdx >= RF_CHANNELS)
|
||||
mRxChIdx = 0;
|
||||
mRxChIdx = (mRxChIdx + 1) % RF_CHANNELS;
|
||||
|
||||
return;
|
||||
}
|
||||
|
@ -344,7 +342,7 @@ class HmRadio : public Radio {
|
|||
|
||||
std::unique_ptr<SPIClass> mSpi;
|
||||
std::unique_ptr<RF24> mNrf24;
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(ETHERNET)
|
||||
#if defined(CONFIG_IDF_TARGET_ESP32S3) && defined(SPI_HAL)
|
||||
nrfHal mNrfHal;
|
||||
#endif
|
||||
Inverter<> *mLastIv = NULL;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue