Merge pull request #82 from liamcottle/feature/rak4631-rak1921-display

Add support for RAK1921 OLED display and User Button on RAK4631 boards
master
markqvist 5 months ago committed by GitHub
commit c9f658e966
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 5
      Boards.h
  2. 9
      Display.h
  3. 2
      RNode_Firmware.ino

@ -559,7 +559,7 @@
#elif MCU_VARIANT == MCU_NRF52 #elif MCU_VARIANT == MCU_NRF52
#if BOARD_MODEL == BOARD_RAK4631 #if BOARD_MODEL == BOARD_RAK4631
#define HAS_EEPROM false #define HAS_EEPROM false
#define HAS_DISPLAY false #define HAS_DISPLAY true
#define HAS_BLUETOOTH false #define HAS_BLUETOOTH false
#define HAS_BLE true #define HAS_BLE true
#define HAS_CONSOLE false #define HAS_CONSOLE false
@ -569,6 +569,7 @@
#define HAS_TCXO true #define HAS_TCXO true
#define HAS_RF_SWITCH_RX_TX true #define HAS_RF_SWITCH_RX_TX true
#define HAS_BUSY true #define HAS_BUSY true
#define HAS_INPUT true
#define DIO2_AS_RF_SWITCH true #define DIO2_AS_RF_SWITCH true
#define CONFIG_UART_BUFFER_SIZE 6144 #define CONFIG_UART_BUFFER_SIZE 6144
#define CONFIG_QUEUE_SIZE 6144 #define CONFIG_QUEUE_SIZE 6144
@ -578,6 +579,8 @@
#define BLE_MANUFACTURER "RAK Wireless" #define BLE_MANUFACTURER "RAK Wireless"
#define BLE_MODEL "RAK4640" #define BLE_MODEL "RAK4640"
const int pin_btn_usr1 = 9;
// Following pins are for the sx1262 // Following pins are for the sx1262
const int pin_rxen = 37; const int pin_rxen = 37;
const int pin_reset = 38; const int pin_reset = 38;

@ -45,6 +45,12 @@
#define DISP_ADDR 0x3C #define DISP_ADDR 0x3C
#define SCL_OLED 18 #define SCL_OLED 18
#define SDA_OLED 17 #define SDA_OLED 17
#elif BOARD_MODEL == BOARD_RAK4631
// RAK1921/SSD1306
#define DISP_RST -1
#define DISP_ADDR 0x3C
#define SCL_OLED 14
#define SDA_OLED 13
#elif BOARD_MODEL == BOARD_RNODE_NG_21 #elif BOARD_MODEL == BOARD_RNODE_NG_21
#define DISP_RST -1 #define DISP_RST -1
#define DISP_ADDR 0x3C #define DISP_ADDR 0x3C
@ -256,6 +262,9 @@ bool display_init() {
#elif BOARD_MODEL == BOARD_HELTEC32_V3 #elif BOARD_MODEL == BOARD_HELTEC32_V3
disp_mode = DISP_MODE_PORTRAIT; disp_mode = DISP_MODE_PORTRAIT;
display.setRotation(1); display.setRotation(1);
#elif BOARD_MODEL == BOARD_RAK4631
disp_mode = DISP_MODE_LANDSCAPE;
display.setRotation(0);
#elif BOARD_MODEL == BOARD_TDECK #elif BOARD_MODEL == BOARD_TDECK
disp_mode = DISP_MODE_PORTRAIT; disp_mode = DISP_MODE_PORTRAIT;
display.setRotation(3); display.setRotation(3);

@ -1389,7 +1389,7 @@ void sleep_now() {
} }
void button_event(uint8_t event, unsigned long duration) { void button_event(uint8_t event, unsigned long duration) {
#if MCU_VARIANT == MCU_ESP32 #if MCU_VARIANT == MCU_ESP32 || MCU_VARIANT == MCU_NRF52
if (display_blanked) { if (display_blanked) {
display_unblank(); display_unblank();
} else { } else {

Loading…
Cancel
Save