diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 27bdd05..9a91518 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,8 +1,11 @@ -{ - // See http://go.microsoft.com/fwlink/?LinkId=827846 - // for the documentation about the extensions.json format - "recommendations": [ - "platformio.platformio-ide", - "xaver.clang-format" - ] -} +{ + // See http://go.microsoft.com/fwlink/?LinkId=827846 + // for the documentation about the extensions.json format + "recommendations": [ + "platformio.platformio-ide", + "xaver.clang-format" + ], + "unwantedRecommendations": [ + "ms-vscode.cpptools-extension-pack" + ] +} diff --git a/lib/BoardFinder/BoardFinder.cpp b/lib/BoardFinder/BoardFinder.cpp index f5010f7..8fa35ed 100644 --- a/lib/BoardFinder/BoardFinder.cpp +++ b/lib/BoardFinder/BoardFinder.cpp @@ -4,8 +4,22 @@ #define MODULE_NAME "BoardFinder" -BoardConfig::BoardConfig(String name, BoardType type, uint8_t oledsda, uint8_t oledscl, uint8_t oledaddr, uint8_t oledreset, uint8_t lorasck, uint8_t loramiso, uint8_t loramosi, uint8_t loracs, uint8_t lorareset, uint8_t lorairq, uint8_t gpsrx, uint8_t gpstx, uint8_t button, bool needcheckpowerchip, bool powercheckstatus) - : Name(name), Type(type), OledSda(oledsda), OledScl(oledscl), OledAddr(oledaddr), OledReset(oledreset), LoraSck(lorasck), LoraMiso(loramiso), LoraMosi(loramosi), LoraCS(loracs), LoraReset(lorareset), LoraIRQ(lorairq), GpsRx(gpsrx), GpsTx(gpstx), Button(button), needCheckPowerChip(needcheckpowerchip), powerCheckStatus(powercheckstatus) { +OledPins::OledPins(int8_t sda, int8_t scl, int8_t reset, int8_t addr) : Sda(sda), Scl(scl), Reset(reset), Addr(addr) { +} + +LoraPins::LoraPins(int8_t sck, int8_t miso, int8_t mosi, int8_t cs, int8_t reset, int8_t irq) : Sck(sck), Miso(miso), Mosi(mosi), CS(cs), Reset(reset), IRQ(irq) { +} + +GpsPins::GpsPins(int8_t rx, int8_t tx) : Rx(rx), Tx(tx) { +} + +EthernetPins::EthernetPins(int8_t mdc, int8_t mdio, int8_t nreset, int8_t addr, int8_t power, eth_clock_mode_t clk, eth_phy_type_t type) : MDC(mdc), MDIO(mdio), nReset(nreset), Addr(addr), Power(power), CLK(clk), Type(type) { +} + +ButtonPins::ButtonPins(int8_t pin) : Pin(pin) { +} + +BoardConfig::BoardConfig(String name, BoardType type, OledPins oled, LoraPins lora, GpsPins gps, EthernetPins ethernet, ButtonPins button, bool needcheckpowerchip, bool powercheckstatus) : Name(name), Type(type), Oled(oled), Lora(lora), Gps(gps), Ethernet(ethernet), Button(button), needCheckPowerChip(needcheckpowerchip), powerCheckStatus(powercheckstatus) { } BoardFinder::BoardFinder(const std::list &boardConfigs) : _boardConfigs(boardConfigs) { @@ -18,7 +32,7 @@ BoardConfig const *BoardFinder::searchBoardConfig(logging::Logger &logger) { for (BoardConfig const *boardconf : _boardConfigs) { if (boardconf->needCheckPowerChip && checkPowerConfig(boardconf, logger) == boardconf->powerCheckStatus) { PowerManagement powerManagement; - Wire.begin(boardconf->OledSda, boardconf->OledScl); + Wire.begin(boardconf->Oled.Sda, boardconf->Oled.Scl); powerManagement.begin(Wire); powerManagement.activateOLED(); Wire.end(); @@ -36,7 +50,7 @@ BoardConfig const *BoardFinder::searchBoardConfig(logging::Logger &logger) { for (BoardConfig const *boardconf : _boardConfigs) { if (boardconf->needCheckPowerChip && checkPowerConfig(boardconf, logger) == boardconf->powerCheckStatus) { PowerManagement powerManagement; - Wire.begin(boardconf->OledSda, boardconf->OledScl); + Wire.begin(boardconf->Oled.Sda, boardconf->Oled.Scl); powerManagement.begin(Wire); powerManagement.activateLoRa(); Wire.end(); @@ -63,19 +77,19 @@ BoardConfig const *BoardFinder::getBoardConfig(String name) { } bool BoardFinder::checkOledConfig(BoardConfig const *boardConfig, logging::Logger &logger) { - if (boardConfig->OledReset > 0) { - pinMode(boardConfig->OledReset, OUTPUT); - digitalWrite(boardConfig->OledReset, HIGH); + if (boardConfig->Oled.Reset != -1) { + pinMode(boardConfig->Oled.Reset, OUTPUT); + digitalWrite(boardConfig->Oled.Reset, HIGH); delay(1); - digitalWrite(boardConfig->OledReset, LOW); + digitalWrite(boardConfig->Oled.Reset, LOW); delay(10); - digitalWrite(boardConfig->OledReset, HIGH); + digitalWrite(boardConfig->Oled.Reset, HIGH); } - if (!Wire.begin(boardConfig->OledSda, boardConfig->OledScl)) { + if (!Wire.begin(boardConfig->Oled.Sda, boardConfig->Oled.Scl)) { logger.log(logging::LoggerLevel::LOGGER_LEVEL_WARN, MODULE_NAME, "issue with wire"); return false; } - Wire.beginTransmission(boardConfig->OledAddr); + Wire.beginTransmission(boardConfig->Oled.Addr); if (!Wire.endTransmission()) { Wire.end(); return true; @@ -85,24 +99,24 @@ bool BoardFinder::checkOledConfig(BoardConfig const *boardConfig, logging::Logge } bool BoardFinder::checkModemConfig(BoardConfig const *boardConfig) { - pinMode(boardConfig->LoraReset, OUTPUT); - digitalWrite(boardConfig->LoraReset, LOW); + pinMode(boardConfig->Lora.Reset, OUTPUT); + digitalWrite(boardConfig->Lora.Reset, LOW); delay(10); - digitalWrite(boardConfig->LoraReset, HIGH); + digitalWrite(boardConfig->Lora.Reset, HIGH); delay(10); - pinMode(boardConfig->LoraCS, OUTPUT); - digitalWrite(boardConfig->LoraCS, HIGH); + pinMode(boardConfig->Lora.CS, OUTPUT); + digitalWrite(boardConfig->Lora.CS, HIGH); - SPI.begin(boardConfig->LoraSck, boardConfig->LoraMiso, boardConfig->LoraMosi, boardConfig->LoraCS); + SPI.begin(boardConfig->Lora.Sck, boardConfig->Lora.Miso, boardConfig->Lora.Mosi, boardConfig->Lora.CS); - digitalWrite(boardConfig->LoraCS, LOW); + digitalWrite(boardConfig->Lora.CS, LOW); SPI.beginTransaction(SPISettings(8E6, MSBFIRST, SPI_MODE0)); SPI.transfer(0x42); uint8_t response = SPI.transfer(0x00); SPI.endTransaction(); - digitalWrite(boardConfig->LoraCS, HIGH); + digitalWrite(boardConfig->Lora.CS, HIGH); SPI.end(); if (response == 0x12) { return true; @@ -111,7 +125,7 @@ bool BoardFinder::checkModemConfig(BoardConfig const *boardConfig) { } bool BoardFinder::checkPowerConfig(BoardConfig const *boardConfig, logging::Logger &logger) { - if (!Wire.begin(boardConfig->OledSda, boardConfig->OledScl)) { + if (!Wire.begin(boardConfig->Oled.Sda, boardConfig->Oled.Scl)) { logger.log(logging::LoggerLevel::LOGGER_LEVEL_WARN, MODULE_NAME, "issue with wire"); return false; } @@ -134,14 +148,15 @@ bool BoardFinder::checkPowerConfig(BoardConfig const *boardConfig, logging::Logg } // clang-format off -BoardConfig TTGO_LORA32_V1 ("TTGO_LORA32_V1", eTTGO_LORA32_V1, 4, 15, 0x3C, 0, 5, 19, 27, 18, 14, 26, 0, 0, 0); -BoardConfig TTGO_LORA32_V2 ("TTGO_LORA32_V2", eTTGO_LORA32_V2, 21, 22, 0x3C, 0, 5, 19, 27, 18, 14, 26, 0, 0, 0); -BoardConfig TTGO_T_Beam_V0_7 ("TTGO_T_Beam_V0_7", eTTGO_T_Beam_V0_7, 21, 22, 0x3C, 0, 5, 19, 27, 18, 14, 26, 15, 12, 38, true); -BoardConfig TTGO_T_Beam_V1_0 ("TTGO_T_Beam_V1_0", eTTGO_T_Beam_V1_0, 21, 22, 0x3C, 0, 5, 19, 27, 18, 14, 26, 12, 34, 38, true, true); -BoardConfig ETH_BOARD ("ETH_BOARD", eETH_BOARD, 33, 32, 0x3C, 0, 14, 2, 15, 12, 4, 36, 0, 0, 0); -BoardConfig TRACKERD ("TRACKERD", eTRACKERD, 5, 4, 0x3C, 0, 18, 19, 23, 16, 14, 26, 0, 0, 0); -BoardConfig HELTEC_WIFI_LORA_32_V1("HELTEC_WIFI_LORA_32_V1", eHELTEC_WIFI_LORA_32_V1, 4, 15, 0x3C, 16, 5, 19, 27, 18, 14, 26, 0, 0, 0); -BoardConfig HELTEC_WIFI_LORA_32_V2("HELTEC_WIFI_LORA_32_V2", eHELTEC_WIFI_LORA_32_V2, 4, 15, 0x3C, 16, 5, 19, 27, 18, 14, 26, 0, 0, 0); -BoardConfig GUALTHERIUS_LORAHAM_v100("GUALTHERIUS_LORAHAM_v100", eGUALTHERIUS_LORAHAM_v100, 17, 16, 0x3C, 0, 18, 19, 23, 5, 13, 35, 0, 0, 0); -BoardConfig GUALTHERIUS_LORAHAM_v106("GUALTHERIUS_LORAHAM_v106", eGUALTHERIUS_LORAHAM_v106, 17, 16, 0x3C, 0, 18, 19, 23, 2, 13, 35, 0, 0, 0); +BoardConfig TTGO_LORA32_V1 ("TTGO_LORA32_V1", eTTGO_LORA32_V1, OledPins( 4, 15), LoraPins( 5, 19, 27, 18, 14, 26)); +BoardConfig TTGO_LORA32_V2 ("TTGO_LORA32_V2", eTTGO_LORA32_V2, OledPins(21, 22), LoraPins( 5, 19, 27, 18, 14, 26)); +BoardConfig TTGO_T_Beam_V0_7 ("TTGO_T_Beam_V0_7", eTTGO_T_Beam_V0_7, OledPins(21, 22), LoraPins( 5, 19, 27, 18, 14, 26), GpsPins(15, 12), EthernetPins(), ButtonPins(38), true); +BoardConfig TTGO_T_Beam_V1_0 ("TTGO_T_Beam_V1_0", eTTGO_T_Beam_V1_0, OledPins(21, 22), LoraPins( 5, 19, 27, 18, 14, 26), GpsPins(12, 34), EthernetPins(), ButtonPins(38), true, true); +BoardConfig LILYGO_POE_ETH_BOARD ("LILYGO_POE_ETH_BOARD", eLILYGO_POE_ETH_BOARD, OledPins(33, 32), LoraPins(14, 2, 15, 12, 4, 36), GpsPins(), EthernetPins(23, 18, 5, 0, -1, ETH_CLOCK_GPIO17_OUT, ETH_PHY_LAN8720)); +BoardConfig WT32_ETH_BOARD ("WT32_ETH_BOARD", eWT32_ETH_BOARD, OledPins(17, 5), LoraPins(14, 2, 15, 12, 4, 36), GpsPins(), EthernetPins(23, 18, -1, 1, 16, ETH_CLOCK_GPIO0_IN, ETH_PHY_LAN8720)); +BoardConfig TRACKERD ("TRACKERD", eTRACKERD, OledPins( 5, 4), LoraPins(18, 19, 23, 16, 14, 26)); +BoardConfig HELTEC_WIFI_LORA_32_V1 ("HELTEC_WIFI_LORA_32_V1", eHELTEC_WIFI_LORA_32_V1, OledPins( 4, 15, 16), LoraPins( 5, 19, 27, 18, 14, 26)); +BoardConfig HELTEC_WIFI_LORA_32_V2 ("HELTEC_WIFI_LORA_32_V2", eHELTEC_WIFI_LORA_32_V2, OledPins( 4, 15, 16), LoraPins( 5, 19, 27, 18, 14, 26)); +BoardConfig GUALTHERIUS_LORAHAM_v100("GUALTHERIUS_LORAHAM_v100", eGUALTHERIUS_LORAHAM_v100, OledPins(17, 16), LoraPins(18, 19, 23, 5, 13, 35)); +BoardConfig GUALTHERIUS_LORAHAM_v106("GUALTHERIUS_LORAHAM_v106", eGUALTHERIUS_LORAHAM_v106, OledPins(17, 16), LoraPins(18, 19, 23, 2, 13, 35)); // clang-format on diff --git a/lib/BoardFinder/BoardFinder.h b/lib/BoardFinder/BoardFinder.h index 8df5a5a..2361559 100644 --- a/lib/BoardFinder/BoardFinder.h +++ b/lib/BoardFinder/BoardFinder.h @@ -5,46 +5,94 @@ #include #include +#include #include #include #include -enum BoardType -{ +enum BoardType { eHELTEC_WIFI_LORA_32_V1, eHELTEC_WIFI_LORA_32_V2, eTTGO_LORA32_V1, eTTGO_LORA32_V2, eTTGO_T_Beam_V0_7, eTTGO_T_Beam_V1_0, - eETH_BOARD, + eLILYGO_POE_ETH_BOARD, + eWT32_ETH_BOARD, eTRACKERD, eGUALTHERIUS_LORAHAM_v100, eGUALTHERIUS_LORAHAM_v106 }; +class OledPins { +public: + explicit OledPins(int8_t sda, int8_t scl, int8_t reset = -1, int8_t addr = 0x3C); + + int8_t Sda; + int8_t Scl; + int8_t Reset; + int8_t Addr; +}; + +class LoraPins { +public: + explicit LoraPins(int8_t sck, int8_t miso, int8_t mosi, int8_t cs, int8_t reset, int8_t irq); + + int8_t Sck; + int8_t Miso; + int8_t Mosi; + int8_t CS; + int8_t Reset; + int8_t IRQ; +}; + +class GpsPins { +public: + explicit GpsPins(int8_t rx = -1, int8_t tx = -1); + + int8_t Rx; + int8_t Tx; +}; + +class EthernetPins { +public: + explicit EthernetPins(int8_t mdc = -1, int8_t mdio = -1, int8_t nreset = -1, int8_t addr = 0, int8_t power = -1, eth_clock_mode_t clk = ETH_CLOCK_GPIO17_OUT, eth_phy_type_t type = ETH_PHY_LAN8720); + + int8_t MDC; + int8_t MDIO; + int8_t nReset; + int8_t Addr; + int8_t Power; + + eth_clock_mode_t CLK; + eth_phy_type_t Type; + + bool isEthernetBoard() const { + return MDC != -1; + } +}; + +class ButtonPins { +public: + explicit ButtonPins(int8_t pin = -1); + + int8_t Pin; +}; + class BoardConfig { public: - explicit BoardConfig(String name, BoardType type, uint8_t oledsda, uint8_t oledscl, uint8_t oledaddr, uint8_t oledreset, uint8_t lorasck, uint8_t loramiso, uint8_t loramosi, uint8_t loracs, uint8_t lorareset, uint8_t lorairq, uint8_t gpsrx, uint8_t gpstx, uint8_t button, bool needcheckpowerchip = false, bool powercheckstatus = false); + explicit BoardConfig(String name, BoardType type, OledPins oled, LoraPins lora, GpsPins gps = GpsPins(), EthernetPins ethernet = EthernetPins(), ButtonPins button = ButtonPins(), bool needcheckpowerchip = false, bool powercheckstatus = false); String Name; BoardType Type; - uint8_t OledSda; - uint8_t OledScl; - uint8_t OledAddr; - uint8_t OledReset; + OledPins Oled; + LoraPins Lora; + GpsPins Gps; + EthernetPins Ethernet; - uint8_t LoraSck; - uint8_t LoraMiso; - uint8_t LoraMosi; - uint8_t LoraCS; - uint8_t LoraReset; - uint8_t LoraIRQ; - uint8_t GpsRx; - uint8_t GpsTx; - uint8_t Button; + ButtonPins Button; bool needCheckPowerChip; bool powerCheckStatus; @@ -70,7 +118,8 @@ extern BoardConfig TTGO_LORA32_V1; extern BoardConfig TTGO_LORA32_V2; extern BoardConfig TTGO_T_Beam_V0_7; extern BoardConfig TTGO_T_Beam_V1_0; -extern BoardConfig ETH_BOARD; +extern BoardConfig LILYGO_POE_ETH_BOARD; +extern BoardConfig WT32_ETH_BOARD; extern BoardConfig TRACKERD; extern BoardConfig HELTEC_WIFI_LORA_32_V1; extern BoardConfig HELTEC_WIFI_LORA_32_V2; diff --git a/lib/Display/Display.cpp b/lib/Display/Display.cpp index 16a7e9d..c673659 100644 --- a/lib/Display/Display.cpp +++ b/lib/Display/Display.cpp @@ -9,16 +9,16 @@ Display::~Display() { } void Display::setup(BoardConfig const *const boardConfig) { - if (boardConfig->OledReset != 0) { - pinMode(boardConfig->OledReset, OUTPUT); - digitalWrite(boardConfig->OledReset, HIGH); + if (boardConfig->Oled.Reset != -1) { + pinMode(boardConfig->Oled.Reset, OUTPUT); + digitalWrite(boardConfig->Oled.Reset, HIGH); delay(1); - digitalWrite(boardConfig->OledReset, LOW); + digitalWrite(boardConfig->Oled.Reset, LOW); delay(10); - digitalWrite(boardConfig->OledReset, HIGH); + digitalWrite(boardConfig->Oled.Reset, HIGH); } - Wire.begin(boardConfig->OledSda, boardConfig->OledScl); - _disp = new SSD1306(&Wire, boardConfig->OledAddr); + Wire.begin(boardConfig->Oled.Sda, boardConfig->Oled.Scl); + _disp = new SSD1306(&Wire, boardConfig->Oled.Addr); Bitmap bitmap(_disp->getWidth(), _disp->getHeight()); _disp->display(&bitmap); @@ -42,8 +42,7 @@ void Display::setDisplaySaveTimeout(uint32_t timeout) { _displaySaveModeTimer.setTimeout(timeout * 1000); } -void Display::activateDistplay() -{ +void Display::activateDistplay() { _disp->displayOn(); } diff --git a/src/LoRa_APRS_iGate.cpp b/src/LoRa_APRS_iGate.cpp index a3f1886..80d0cf4 100644 --- a/src/LoRa_APRS_iGate.cpp +++ b/src/LoRa_APRS_iGate.cpp @@ -61,7 +61,8 @@ void setup() { boardConfigs.push_back(&TTGO_LORA32_V2); boardConfigs.push_back(&TTGO_T_Beam_V0_7); boardConfigs.push_back(&TTGO_T_Beam_V1_0); - boardConfigs.push_back(Ð_BOARD); + boardConfigs.push_back(&LILYGO_POE_ETH_BOARD); + boardConfigs.push_back(&WT32_ETH_BOARD); boardConfigs.push_back(&TRACKERD); boardConfigs.push_back(&HELTEC_WIFI_LORA_32_V1); boardConfigs.push_back(&HELTEC_WIFI_LORA_32_V2); @@ -99,7 +100,7 @@ void setup() { } if (boardConfig->Type == eTTGO_T_Beam_V1_0) { - Wire.begin(boardConfig->OledSda, boardConfig->OledScl); + Wire.begin(boardConfig->Oled.Sda, boardConfig->Oled.Scl); PowerManagement powerManagement; if (!powerManagement.begin(Wire)) { LoRaSystem.getLogger().log(logging::LoggerLevel::LOGGER_LEVEL_INFO, MODULE_NAME, "AXP192 init done!"); @@ -128,7 +129,7 @@ void setup() { LoRaSystem.getTaskManager().addAlwaysRunTask(&wifiTask); tcpip = true; } - if (boardConfig->Type == eETH_BOARD) { + if (boardConfig->Ethernet.isEthernetBoard()) { LoRaSystem.getTaskManager().addAlwaysRunTask(ðTask); tcpip = true; } diff --git a/src/TaskBeacon.cpp b/src/TaskBeacon.cpp index e356920..ba1e4a3 100644 --- a/src/TaskBeacon.cpp +++ b/src/TaskBeacon.cpp @@ -22,8 +22,8 @@ void BeaconTask::pushButton() { } bool BeaconTask::setup(System &system) { - if (_instances++ == 0 && system.getBoardConfig()->Button > 0) { - _userButton = OneButton(system.getBoardConfig()->Button, true, true); + if (_instances++ == 0 && system.getBoardConfig()->Button.Pin != -1) { + _userButton = OneButton(system.getBoardConfig()->Button.Pin, true, true); _userButton.attachClick(pushButton); _send_update = false; } @@ -31,8 +31,8 @@ bool BeaconTask::setup(System &system) { _useGps = system.getUserConfig()->beacon.use_gps; if (_useGps) { - if (system.getBoardConfig()->GpsRx != 0) { - _ss.begin(9600, SERIAL_8N1, system.getBoardConfig()->GpsTx, system.getBoardConfig()->GpsRx); + if (system.getBoardConfig()->Gps.Rx != -1) { + _ss.begin(9600, SERIAL_8N1, system.getBoardConfig()->Gps.Tx, system.getBoardConfig()->Gps.Rx); } else { system.getLogger().log(logging::LoggerLevel::LOGGER_LEVEL_INFO, getName(), "NO GPS found."); _useGps = false; diff --git a/src/TaskEth.cpp b/src/TaskEth.cpp index 189f3d6..e185bce 100644 --- a/src/TaskEth.cpp +++ b/src/TaskEth.cpp @@ -78,34 +78,18 @@ EthTask::~EthTask() { bool EthTask::setup(System &system) { WiFi.onEvent(WiFiEvent); - constexpr uint8_t ETH_NRST = 5; - constexpr uint8_t ETH_ADDR = 0; - constexpr int ETH_POWER_PIN = -1; - constexpr int ETH_MDC_PIN = 23; - constexpr int ETH_MDIO_PIN = 18; - constexpr eth_phy_type_t ETH_TYPE = ETH_PHY_LAN8720; - constexpr eth_clock_mode_t ETH_CLK = ETH_CLOCK_GPIO17_OUT; // TTGO PoE V1.0 - // constexpr eth_clock_mode_t ETH_CLK = ETH_CLOCK_GPIO0_OUT; // TTGO PoE V1.2 + if (system.getBoardConfig()->Ethernet.nReset != -1) { + pinMode(system.getBoardConfig()->Ethernet.nReset, OUTPUT); + digitalWrite(system.getBoardConfig()->Ethernet.nReset, 0); + delay(200); + digitalWrite(system.getBoardConfig()->Ethernet.nReset, 1); + delay(200); + digitalWrite(system.getBoardConfig()->Ethernet.nReset, 0); + delay(200); + digitalWrite(system.getBoardConfig()->Ethernet.nReset, 1); + } - // config for WT32-ETH01 - comment out upper values, proper board support will come later - // constexpr uint8_t ETH_NRST = 5; - // constexpr uint8_t ETH_ADDR = 1; - // constexpr int ETH_POWER_PIN = 16; - // constexpr int ETH_MDC_PIN = 23; - // constexpr int ETH_MDIO_PIN = 18; - // constexpr eth_phy_type_t ETH_TYPE = ETH_PHY_LAN8720; - // constexpr eth_clock_mode_t ETH_CLK = ETH_CLOCK_GPIO0_IN; - - pinMode(ETH_NRST, OUTPUT); - digitalWrite(ETH_NRST, 0); - delay(200); - digitalWrite(ETH_NRST, 1); - delay(200); - digitalWrite(ETH_NRST, 0); - delay(200); - digitalWrite(ETH_NRST, 1); - - ETH.begin(ETH_ADDR, ETH_POWER_PIN, ETH_MDC_PIN, ETH_MDIO_PIN, ETH_TYPE, ETH_CLK); + ETH.begin(system.getBoardConfig()->Ethernet.Addr, system.getBoardConfig()->Ethernet.Power, system.getBoardConfig()->Ethernet.MDC, system.getBoardConfig()->Ethernet.MDIO, system.getBoardConfig()->Ethernet.Type, system.getBoardConfig()->Ethernet.CLK); if (!system.getUserConfig()->network.DHCP) { ETH.config(system.getUserConfig()->network.static_.ip, system.getUserConfig()->network.static_.gateway, system.getUserConfig()->network.static_.subnet, system.getUserConfig()->network.static_.dns1, system.getUserConfig()->network.static_.dns2); diff --git a/src/TaskRadiolib.cpp b/src/TaskRadiolib.cpp index 125c6d0..71b6795 100644 --- a/src/TaskRadiolib.cpp +++ b/src/TaskRadiolib.cpp @@ -23,8 +23,8 @@ void RadiolibTask::setFlag(void) { } bool RadiolibTask::setup(System &system) { - SPI.begin(system.getBoardConfig()->LoraSck, system.getBoardConfig()->LoraMiso, system.getBoardConfig()->LoraMosi, system.getBoardConfig()->LoraCS); - module = new Module(system.getBoardConfig()->LoraCS, system.getBoardConfig()->LoraIRQ, system.getBoardConfig()->LoraReset); + SPI.begin(system.getBoardConfig()->Lora.Sck, system.getBoardConfig()->Lora.Miso, system.getBoardConfig()->Lora.Mosi, system.getBoardConfig()->Lora.CS); + module = new Module(system.getBoardConfig()->Lora.CS, system.getBoardConfig()->Lora.IRQ, system.getBoardConfig()->Lora.Reset); radio = new SX1278(module); config = system.getUserConfig()->lora;