Skip to content

Commit c6638f1

Browse files
authored
Merge pull request #46 from tomuk5/E22_ESP32
ESP32: Ebyte E22 900M30S Board support
2 parents bed02c9 + d8af625 commit c6638f1

File tree

3 files changed

+66
-2
lines changed

3 files changed

+66
-2
lines changed

Boards.h

+41-1
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,9 @@
3838
#define BOARD_HELTEC32_V3 0x3A
3939
#define BOARD_RNODE_NG_20 0x40
4040
#define BOARD_RNODE_NG_21 0x41
41-
#define BOARD_T3S3 0x42
41+
#define BOARD_T3S3 0x42
4242
#define BOARD_TECHO 0x43
43+
#define BOARD_E22_ESP32 0x44
4344
#define BOARD_GENERIC_NRF52 0x50
4445
#define BOARD_RAK4631 0x51
4546

@@ -625,6 +626,45 @@
625626
-1 // pin_tcxo_enable
626627
}
627628
};
629+
630+
#elif BOARD_MODEL == BOARD_E22_ESP32
631+
#define HAS_DISPLAY true
632+
#define DISPLAY OLED
633+
#define HAS_BLUETOOTH true
634+
#define HAS_BLE true
635+
#define HAS_CONSOLE true
636+
#define HAS_SD false
637+
#define HAS_EEPROM true
638+
#define I2C_SDA 21
639+
#define I2C_SCL 22
640+
#define INTERFACE_COUNT 1
641+
const int pin_led_rx = 2;
642+
const int pin_led_tx = 4;
643+
644+
const uint8_t interfaces[INTERFACE_COUNT] = {SX1262};
645+
const bool interface_cfg[INTERFACE_COUNT][3] = {
646+
// SX1262
647+
{
648+
true, // DEFAULT_SPI
649+
true, // HAS_TCXO
650+
true // DIO2_AS_RF_SWITCH
651+
},
652+
};
653+
const int8_t interface_pins[INTERFACE_COUNT][10] = {
654+
// SX1262
655+
{
656+
18, // pin_ss
657+
5, // pin_sclk
658+
27, // pin_mosi
659+
19, // pin_miso
660+
32, // pin_busy
661+
33, // pin_dio
662+
23, // pin_reset
663+
-1, // pin_txen
664+
14, // pin_rxen
665+
-1 // pin_tcxo_enable
666+
}
667+
};
628668
#else
629669
#error An unsupported ESP32 board was selected. Cannot compile RNode firmware.
630670
#endif

Makefile

+20-1
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,9 @@ firmware-t3s3_sx1262:
7777
firmware-t3s3_sx1280_pa:
7878
arduino-cli compile --fqbn "esp32:esp32:esp32s3:CDCOnBoot=cdc" -e --build-property "build.partitions=no_ota" --build-property "upload.maximum_size=2097152" --build-property "compiler.cpp.extra_flags=\"-DBOARD_MODEL=0x42\" \"-DBOARD_VARIANT=0xA5\""
7979

80+
firmware-e22_esp32:
81+
arduino-cli compile --fqbn esp32:esp32:esp32 -e --build-property "build.partitions=no_ota" --build-property "upload.maximum_size=2097152" --build-property "compiler.cpp.extra_flags=\"-DBOARD_MODEL=0x44\" \"-DEXTERNAL_LEDS=true\""
82+
8083
firmware-lora32_v10:
8184
arduino-cli compile --fqbn esp32:esp32:ttgo-lora32 -e --build-property "build.partitions=no_ota" --build-property "upload.maximum_size=2097152" --build-property "compiler.cpp.extra_flags=\"-DBOARD_MODEL=0x39\""
8285

@@ -200,6 +203,13 @@ upload-t3s3:
200203
@sleep 1
201204
rnodeconf $(or $(port), /dev/ttyACM0) --firmware-hash $$(./partition_hashes ./build/esp32.esp32.esp32s3/RNode_Firmware_CE.ino.bin)
202205

206+
upload-e22_esp32:
207+
arduino-cli upload -p $(or $(port), /dev/ttyUSB0) --fqbn esp32:esp32:esp32
208+
@sleep 1
209+
rnodeconf $(or $(port), /dev/ttyUSB0) --firmware-hash $$(./partition_hashes ./build/esp32.esp32.esp32/RNode_Firmware_CE.ino.bin)
210+
@sleep 3
211+
python3 ./Release/esptool/esptool.py --chip esp32 --port $(or $(port), /dev/ttyUSB0) --baud 921600 --before default_reset --after hard_reset write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB 0x210000 ./Release/console_image.bin
212+
203213
upload-featheresp32:
204214
arduino-cli upload -p $(or $(port), /dev/ttyUSB0) --fqbn esp32:esp32:featheresp32
205215
@sleep 1
@@ -214,7 +224,7 @@ upload-rak4631:
214224

215225
release: release-all
216226

217-
release-all: console-site spiffs-image release-tbeam release-tbeam_sx1262 release-lora32_v10 release-lora32_v20 release-lora32_v21 release-lora32_v10_extled release-lora32_v20_extled release-lora32_v21_extled release-lora32_v21_tcxo release-featheresp32 release-genericesp32 release-heltec32_v2 release-heltec32_v3 release-heltec32_v2_extled release-rnode_ng_20 release-rnode_ng_21 release-t3s3 release-hashes
227+
release-all: console-site spiffs-image release-tbeam release-tbeam_sx1262 release-lora32_v10 release-lora32_v20 release-lora32_v21 release-lora32_v10_extled release-lora32_v20_extled release-lora32_v21_extled release-lora32_v21_tcxo release-featheresp32 release-genericesp32 release-heltec32_v2 release-heltec32_v3 release-heltec32_v2_extled release-rnode_ng_20 release-rnode_ng_21 release-t3s3 release-e22_esp32 release-hashes
218228

219229
release-hashes:
220230
python3 ./release_hashes.py > ./Release/release.json
@@ -354,6 +364,15 @@ release-t3s3:
354364
zip --junk-paths ./Release/rnode_firmware_t3s3.zip ./Release/esptool/esptool.py ./Release/console_image.bin build/rnode_firmware_t3s3.boot_app0 build/rnode_firmware_t3s3.bin build/rnode_firmware_t3s3.bootloader build/rnode_firmware_t3s3.partitions
355365
rm -r build
356366

367+
release-e22_esp32:
368+
arduino-cli compile --fqbn esp32:esp32:esp32 -e --build-property "build.partitions=no_ota" --build-property "upload.maximum_size=2097152" --build-property "compiler.cpp.extra_flags=\"-DBOARD_MODEL=0x44\""
369+
cp ~/.arduino15/packages/esp32/hardware/esp32/$(ESP_IDF_VER)/tools/partitions/boot_app0.bin build/rnode_firmware_esp32_e22.boot_app0
370+
cp build/esp32.esp32.esp32/RNode_Firmware_CE.ino.bin build/rnode_firmware_esp32_e22.bin
371+
cp build/esp32.esp32.esp32/RNode_Firmware_CE.ino.bootloader.bin build/rnode_firmware_esp32_e22.bootloader
372+
cp build/esp32.esp32.esp32/RNode_Firmware_CE.ino.partitions.bin build/rnode_firmware_esp32_e22.partitions
373+
zip --junk-paths ./Release/rnode_firmware_esp32_e22.zip ./Release/esptool/esptool.py ./Release/console_image.bin build/rnode_firmware_esp32_e22.boot_app0 build/rnode_firmware_esp32_e22.bin build/rnode_firmware_esp32_e22.bootloader build/rnode_firmware_esp32_e22.partitions
374+
rm -r build
375+
357376
release-featheresp32:
358377
arduino-cli compile --fqbn esp32:esp32:featheresp32 -e --build-property "build.partitions=no_ota" --build-property "upload.maximum_size=2097152" --build-property "compiler.cpp.extra_flags=\"-DBOARD_MODEL=0x34\""
359378
cp ~/.arduino15/packages/esp32/hardware/esp32/$(ESP_IDF_VER)/tools/partitions/boot_app0.bin build/rnode_firmware_featheresp32.boot_app0

Utilities.h

+5
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,11 @@ uint8_t boot_vector = 0x00;
142142
void led_rx_off() { digitalWrite(pin_led_rx, LOW); }
143143
void led_tx_on() { digitalWrite(pin_led_tx, HIGH); }
144144
void led_tx_off() { digitalWrite(pin_led_tx, LOW); }
145+
#elif BOARD_MODEL == BOARD_E22_ESP32
146+
void led_rx_on() { digitalWrite(pin_led_rx, HIGH); }
147+
void led_rx_off() { digitalWrite(pin_led_rx, LOW); }
148+
void led_tx_on() { digitalWrite(pin_led_tx, HIGH); }
149+
void led_tx_off() { digitalWrite(pin_led_tx, LOW); }
145150
#elif BOARD_MODEL == BOARD_TBEAM
146151
void led_rx_on() { digitalWrite(pin_led_rx, HIGH); }
147152
void led_rx_off() { digitalWrite(pin_led_rx, LOW); }

0 commit comments

Comments
 (0)