diff --git a/bin/build-all.sh b/bin/build-all.sh index a398be246..ada9a4fc9 100755 --- a/bin/build-all.sh +++ b/bin/build-all.sh @@ -15,6 +15,7 @@ ARCHIVEDIR=release/archive rm -f $OUTDIR/firmware* +# build the named environment and copy the bins to the release directory function do_build { ENV_NAME=$1 echo "Building for $ENV_NAME with $PLATFORMIO_BUILD_FLAGS" @@ -33,6 +34,7 @@ for COUNTRY in $COUNTRIES; do export PLATFORMIO_BUILD_FLAGS="$COMMONOPTS" + do_build "ttgo-lora32-v1" do_build "tbeam" do_build "heltec" done diff --git a/platformio.ini b/platformio.ini index 7a1c73b13..f8de66947 100644 --- a/platformio.ini +++ b/platformio.ini @@ -17,8 +17,6 @@ hw_version = US [env] platform = espressif32 -; board = ttgo-t-beam -; board = heltec_wifi_lora_32_V2 framework = arduino ; customize the partition table @@ -79,3 +77,10 @@ lib_deps = [env:heltec] ;build_type = debug ; to make it possible to step through our jtag debugger board = heltec_wifi_lora_32_V2 + +[env:ttgo-lora32-v1] +board = ttgo-lora32-v1 + +; note: the platformio definition for lora32-v2 seems stale, it is missing a pins_arduino.h file, therefore I don't think it works +; [env:ttgo-lora32-v2] +; board = ttgo-lora32-v2 \ No newline at end of file diff --git a/src/configuration.h b/src/configuration.h index 9ce1c69d3..a0bbdbe97 100644 --- a/src/configuration.h +++ b/src/configuration.h @@ -39,16 +39,6 @@ along with this program. If not, see . // Configuration // ----------------------------------------------------------------------------- -// Select which board is being used. If the outside build environment has sent a choice, just use that -#if !defined(ARDUINO_T_Beam) && !defined(ARDUINO_HELTEC_WIFI_LORA_32_V2) -// The platformio build environment should set this now -// #define ARDUINO_T_Beam // AKA Rev1 (second board released) -// #define ARDUINO_HELTEC_WIFI_LORA_32_V2 - -#define HW_VERSION_US // We encode the hardware freq range in the hw version string, so sw update can eventually install the - // correct build -#endif - // If we are using the JTAG port for debugging, some pins must be left free for that (and things like GPS have to be disabled) // we don't support jtag on the ttgo - access to gpio 12 is a PITA #ifdef ARDUINO_HELTEC_WIFI_LORA_32_V2 @@ -108,7 +98,7 @@ along with this program. If not, see . #if defined(ARDUINO_T_Beam) // This string must exactly match the case used in release file names or the android updater won't work -#define HW_VENDOR "TBEAM" +#define HW_VENDOR "tbeam" // #define BUTTON_NEED_PULLUP // if set we need to turn on the internal CPU pullup during sleep @@ -129,25 +119,59 @@ along with this program. If not, see . #elif defined(ARDUINO_HELTEC_WIFI_LORA_32_V2) // This string must exactly match the case used in release file names or the android updater won't work -#define HW_VENDOR "HELTEC" +#define HW_VENDOR "heltec" -#ifndef USE_JTAG // gpio15 is TDO for JTAG, so no I2C on this board while doing jtag -#define I2C_SDA 4 +#ifndef USE_JTAG // gpio15 is TDO for JTAG, so no I2C on this board while doing jtag +#define I2C_SDA 4 // I2C pins for this board #define I2C_SCL 15 #endif -#define RESET_OLED 16 +#define RESET_OLED 16 // If defined, this pin will be used to reset the display controller #define VEXT_ENABLE 21 // active low, powers the oled display and the lora antenna boost -#define LED_PIN 25 -#define BUTTON_PIN 0 +#define LED_PIN 25 // If defined we will blink this LED +#define BUTTON_PIN 0 // If defined, this will be used for user button presses #ifndef USE_JTAG -#define RESET_GPIO 14 +#define RESET_GPIO 14 // If defined, this pin will be used to reset the LORA radio #endif #define DIO0_GPIO 26 -#define DIO1_GPIO 35 -#define DIO2_GPIO 34 +#define DIO1_GPIO 35 // DIO1 & DIO2 are not currently used, but they must be assigned to a pin number +#define DIO2_GPIO 34 // DIO1 & DIO2 are not currently used, but they must be assigned to a pin number +#elif defined(ARDUINO_TTGO_LoRa32_V1) +// This string must exactly match the case used in release file names or the android updater won't work +#define HW_VENDOR "ttgo-lora32-v1" + +#define I2C_SDA 4 // I2C pins for this board +#define I2C_SCL 15 + +#define RESET_OLED 16 // If defined, this pin will be used to reset the display controller + +// #define VEXT_ENABLE 21 // active low, powers the oled display and the lora antenna boost +#define LED_PIN 2 // If defined we will blink this LED +#define BUTTON_PIN 0 // If defined, this will be used for user button presses + +#define RESET_GPIO 23 // If defined, this pin will be used to reset the LORA radio +#define DIO0_GPIO 26 // IRQ line for the LORA radio +#define DIO1_GPIO 35 // DIO1 & DIO2 are not currently used, but they must be assigned to a pin number +#define DIO2_GPIO 34 // DIO1 & DIO2 are not currently used, but they must be assigned to a pin number +#elif defined(ARDUINO_TTGO_LoRa32_V2) +// This string must exactly match the case used in release file names or the android updater won't work +#define HW_VENDOR "ttgo-lora32-v2" + +#define I2C_SDA 21 // I2C pins for this board +#define I2C_SCL 22 + +#define RESET_OLED 16 // If defined, this pin will be used to reset the display controller + +#define VEXT_ENABLE 21 // active low, powers the oled display and the lora antenna boost +#define LED_PIN 2 // If defined we will blink this LED +#define BUTTON_PIN 0 // If defined, this will be used for user button presses + +#define RESET_GPIO 23 // If defined, this pin will be used to reset the LORA radio +#define DIO0_GPIO 26 // IRQ line for the LORA radio +#define DIO1_GPIO 35 // DIO1 & DIO2 are not currently used, but they must be assigned to a pin number +#define DIO2_GPIO 34 // DIO1 & DIO2 are not currently used, but they must be assigned to a pin number #endif // -----------------------------------------------------------------------------