mirror of
https://github.com/meshtastic/firmware.git
synced 2025-06-08 14:12:05 +00:00
Added support for the LR1121 radio to the NRF52 Pro-Micro (#5515)
Some checks are pending
CI / setup (check) (push) Waiting to run
CI / setup (esp32) (push) Waiting to run
CI / setup (esp32c3) (push) Waiting to run
CI / setup (esp32c6) (push) Waiting to run
CI / setup (esp32s3) (push) Waiting to run
CI / setup (nrf52840) (push) Waiting to run
CI / setup (rp2040) (push) Waiting to run
CI / setup (stm32) (push) Waiting to run
CI / check (push) Blocked by required conditions
CI / build-esp32 (push) Blocked by required conditions
CI / build-esp32-s3 (push) Blocked by required conditions
CI / build-esp32-c3 (push) Blocked by required conditions
CI / build-esp32-c6 (push) Blocked by required conditions
CI / build-nrf52 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / package-raspbian (push) Waiting to run
CI / package-raspbian-armv7l (push) Waiting to run
CI / package-native (push) Waiting to run
CI / after-checks (push) Blocked by required conditions
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
Flawfinder Scan / Flawfinder (push) Waiting to run
Some checks are pending
CI / setup (check) (push) Waiting to run
CI / setup (esp32) (push) Waiting to run
CI / setup (esp32c3) (push) Waiting to run
CI / setup (esp32c6) (push) Waiting to run
CI / setup (esp32s3) (push) Waiting to run
CI / setup (nrf52840) (push) Waiting to run
CI / setup (rp2040) (push) Waiting to run
CI / setup (stm32) (push) Waiting to run
CI / check (push) Blocked by required conditions
CI / build-esp32 (push) Blocked by required conditions
CI / build-esp32-s3 (push) Blocked by required conditions
CI / build-esp32-c3 (push) Blocked by required conditions
CI / build-esp32-c6 (push) Blocked by required conditions
CI / build-nrf52 (push) Blocked by required conditions
CI / build-rpi2040 (push) Blocked by required conditions
CI / build-stm32 (push) Blocked by required conditions
CI / package-raspbian (push) Waiting to run
CI / package-raspbian-armv7l (push) Waiting to run
CI / package-native (push) Waiting to run
CI / after-checks (push) Blocked by required conditions
CI / gather-artifacts (esp32) (push) Blocked by required conditions
CI / gather-artifacts (esp32c3) (push) Blocked by required conditions
CI / gather-artifacts (esp32c6) (push) Blocked by required conditions
CI / gather-artifacts (esp32s3) (push) Blocked by required conditions
CI / gather-artifacts (nrf52840) (push) Blocked by required conditions
CI / gather-artifacts (rp2040) (push) Blocked by required conditions
CI / gather-artifacts (stm32) (push) Blocked by required conditions
CI / release-artifacts (push) Blocked by required conditions
CI / release-firmware (esp32) (push) Blocked by required conditions
CI / release-firmware (esp32c3) (push) Blocked by required conditions
CI / release-firmware (esp32c6) (push) Blocked by required conditions
CI / release-firmware (esp32s3) (push) Blocked by required conditions
CI / release-firmware (nrf52840) (push) Blocked by required conditions
CI / release-firmware (rp2040) (push) Blocked by required conditions
CI / release-firmware (stm32) (push) Blocked by required conditions
Flawfinder Scan / Flawfinder (push) Waiting to run
* Added support for the LR1121 radio Added support for the LR1121 radio, tested as functional with an E80-900M2213S from CDEbyte. * Swap PNG for PDF * remove PNG * put TCXO voltage to 1.8, as in example file It worked at 1.6v, but ¯\_(ツ)_/¯ * Hopefully this will appease Trunk * Update rf switch pins and Schematic --------- Co-authored-by: Ben Meadors <benmmeadors@gmail.com>
This commit is contained in:
parent
b0e3039732
commit
4edeca5f84
File diff suppressed because it is too large
Load Diff
17
variants/diy/nrf52_promicro_diy_tcxo/rfswitch.h
Normal file
17
variants/diy/nrf52_promicro_diy_tcxo/rfswitch.h
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
#include "RadioLib.h"
|
||||||
|
|
||||||
|
// RF Switch Matrix SubG RFO_HP_LF / RFO_LP_LF / RFI_[NP]_LF0
|
||||||
|
// DIO5 -> RFSW0_V1
|
||||||
|
// DIO6 -> RFSW1_V2
|
||||||
|
// DIO7 -> ANT_CTRL_ON + ESP_IO9/LR_GPS_ANT_DC_EN -> RFI_GPS (Bias-T GPS) (LR11x0 only)
|
||||||
|
|
||||||
|
static const uint32_t rfswitch_dio_pins[] = {RADIOLIB_LR11X0_DIO5, RADIOLIB_LR11X0_DIO6, RADIOLIB_LR11X0_DIO7, RADIOLIB_NC,
|
||||||
|
RADIOLIB_NC};
|
||||||
|
|
||||||
|
static const Module::RfSwitchMode_t rfswitch_table[] = {
|
||||||
|
// mode DIO5 DIO6 DIO7
|
||||||
|
{LR11x0::MODE_STBY, {LOW, LOW, LOW}}, {LR11x0::MODE_RX, {HIGH, LOW, LOW}},
|
||||||
|
{LR11x0::MODE_TX, {LOW, HIGH, LOW}}, {LR11x0::MODE_TX_HP, {LOW, HIGH, LOW}},
|
||||||
|
{LR11x0::MODE_TX_HF, {LOW, LOW, LOW}}, {LR11x0::MODE_GNSS, {LOW, LOW, HIGH}},
|
||||||
|
{LR11x0::MODE_WIFI, {LOW, LOW, LOW}}, END_OF_MODE_TABLE,
|
||||||
|
};
|
@ -122,12 +122,13 @@ NRF52 PRO MICRO PIN ASSIGNMENT
|
|||||||
#define USE_SX1262
|
#define USE_SX1262
|
||||||
#define USE_RF95
|
#define USE_RF95
|
||||||
#define USE_SX1268
|
#define USE_SX1268
|
||||||
|
#define USE_LR1121
|
||||||
|
|
||||||
// RF95 CONFIG
|
// RF95 CONFIG
|
||||||
|
|
||||||
#define LORA_DIO0 (0 + 29) // P0.10 IRQ
|
#define LORA_DIO0 (0 + 29) // P0.29 BUSY
|
||||||
#define LORA_DIO1 (0 + 10) // P0.10 IRQ
|
#define LORA_DIO1 (0 + 10) // P0.10 IRQ
|
||||||
#define LORA_RESET (0 + 9) // P0.09
|
#define LORA_RESET (0 + 9) // P0.09 NRST
|
||||||
|
|
||||||
// RX/TX for RFM95/SX127x
|
// RX/TX for RFM95/SX127x
|
||||||
#define RF95_RXEN (0 + 17) // P0.17
|
#define RF95_RXEN (0 + 17) // P0.17
|
||||||
@ -143,6 +144,19 @@ NRF52 PRO MICRO PIN ASSIGNMENT
|
|||||||
#define SX126X_RXEN (0 + 17) // P0.17
|
#define SX126X_RXEN (0 + 17) // P0.17
|
||||||
#define SX126X_TXEN RADIOLIB_NC // Assuming that DIO2 is connected to TXEN pin. If not, TXEN must be connected.
|
#define SX126X_TXEN RADIOLIB_NC // Assuming that DIO2 is connected to TXEN pin. If not, TXEN must be connected.
|
||||||
|
|
||||||
|
// LR1121
|
||||||
|
#ifdef USE_LR1121
|
||||||
|
#define LR1121_IRQ_PIN (0 + 10) // P0.10 IRQ
|
||||||
|
#define LR1121_NRESET_PIN LORA_RESET // P0.09 NRST
|
||||||
|
#define LR1121_BUSY_PIN (0 + 29) // P0.29 BUSY
|
||||||
|
#define LR1121_SPI_NSS_PIN LORA_CS // P1.13
|
||||||
|
#define LR1121_SPI_SCK_PIN LORA_SCK
|
||||||
|
#define LR1121_SPI_MOSI_PIN LORA_MOSI
|
||||||
|
#define LR1121_SPI_MISO_PIN LORA_MISO
|
||||||
|
#define LR11X0_DIO3_TCXO_VOLTAGE 1.8
|
||||||
|
#define LR11X0_DIO_AS_RF_SWITCH
|
||||||
|
#endif
|
||||||
|
|
||||||
// #define SX126X_MAX_POWER 8 set this if using a high-power board!
|
// #define SX126X_MAX_POWER 8 set this if using a high-power board!
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -164,6 +178,7 @@ settings.
|
|||||||
| Seeed | Wio-SX1262 | yes | Int | Sooooo cute! |
|
| Seeed | Wio-SX1262 | yes | Int | Sooooo cute! |
|
||||||
| AI-Thinker | RA-02 | No | Int | SX1278 **433mhz band only** |
|
| AI-Thinker | RA-02 | No | Int | SX1278 **433mhz band only** |
|
||||||
| RF Solutions | RFM95 | No | Int | Untested |
|
| RF Solutions | RFM95 | No | Int | Untested |
|
||||||
|
| Ebyte | E80-900M2213S | Yes | Int | LR1121 radio |
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -179,4 +194,4 @@ extern float tcxoVoltage; // make this available everywhere
|
|||||||
* Arduino objects - C++ only
|
* Arduino objects - C++ only
|
||||||
*----------------------------------------------------------------------------*/
|
*----------------------------------------------------------------------------*/
|
||||||
|
|
||||||
#endif
|
#endif
|
Loading…
Reference in New Issue
Block a user