diff --git a/.vscode/launch.json b/.vscode/launch.json index 77b1fb363..914831d68 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -12,9 +12,8 @@ "type": "platformio-debug", "request": "launch", "name": "PIO Debug", - "executable": "/home/kevinh/development/meshtastic/meshtastic-esp32/.pio/build/bare/firmware.elf", - "toolchainBinDir": "/home/kevinh/.platformio/packages/toolchain-gccarmnoneeabi/bin", - "svdPath": "/home/kevinh/.platformio/platforms/nordicnrf52/misc/svd/nrf52840.svd", + "executable": "/home/kevinh/development/meshtastic/meshtastic-esp32/.pio/build/tbeam/firmware.elf", + "toolchainBinDir": "/home/kevinh/.platformio/packages/toolchain-xtensa32/bin", "preLaunchTask": { "type": "PlatformIO", "task": "Pre-Debug" @@ -25,9 +24,8 @@ "type": "platformio-debug", "request": "launch", "name": "PIO Debug (skip Pre-Debug)", - "executable": "/home/kevinh/development/meshtastic/meshtastic-esp32/.pio/build/bare/firmware.elf", - "toolchainBinDir": "/home/kevinh/.platformio/packages/toolchain-gccarmnoneeabi/bin", - "svdPath": "/home/kevinh/.platformio/platforms/nordicnrf52/misc/svd/nrf52840.svd", + "executable": "/home/kevinh/development/meshtastic/meshtastic-esp32/.pio/build/tbeam/firmware.elf", + "toolchainBinDir": "/home/kevinh/.platformio/packages/toolchain-xtensa32/bin", "internalConsoleOptions": "openOnSessionStart" } ] diff --git a/platformio.ini b/platformio.ini index a03fd4330..ffcff4735 100644 --- a/platformio.ini +++ b/platformio.ini @@ -9,7 +9,7 @@ ; https://docs.platformio.org/page/projectconf.html [platformio] -default_envs = bare +default_envs = tbeam [common] ; common is not currently used @@ -74,6 +74,7 @@ lib_deps = https://github.com/meshtastic/arduino-fsm.git https://github.com/meshtastic/SparkFun_Ublox_Arduino_Library.git https://github.com/meshtastic/SX126x-Arduino.git + Ticker ; Needed for SX126x-Arduino on ESP32 ; Common settings for ESP targes, mixin with extends = esp32_base [esp32_base] diff --git a/src/configuration.h b/src/configuration.h index 25a4e25d7..7f89b08c4 100644 --- a/src/configuration.h +++ b/src/configuration.h @@ -109,6 +109,8 @@ along with this program. If not, see . // Leave undefined to disable our PMU IRQ handler #define PMU_IRQ 35 +#define AXP192_SLAVE_ADDRESS 0x34 + #elif defined(TBEAM_V07) // This string must exactly match the case used in release file names or the android updater won't work #define HW_VENDOR "tbeam0.7" @@ -244,6 +246,5 @@ along with this program. If not, see . // AXP192 (Rev1-specific options) // ----------------------------------------------------------------------------- -// #define AXP192_SLAVE_ADDRESS 0x34 // Now defined in axp20x.h #define GPS_POWER_CTRL_CH 3 #define LORA_POWER_CTRL_CH 2 diff --git a/src/esp32/main-esp32.cpp b/src/esp32/main-esp32.cpp index 76999cc82..b15d60732 100644 --- a/src/esp32/main-esp32.cpp +++ b/src/esp32/main-esp32.cpp @@ -3,6 +3,7 @@ #include "PowerFSM.h" #include "configuration.h" #include "main.h" +#include "power.h" #include "target_specific.h" bool bluetoothOn; @@ -58,6 +59,13 @@ void getMacAddr(uint8_t *dmac) } #ifdef TBEAM_V10 + +// FIXME. nasty hack cleanup how we load axp192 +#undef AXP192_SLAVE_ADDRESS +#include "axp20x.h" +AXP20X_Class axp; +bool pmu_irq = false; + /// Reads power status to powerStatus singleton. // // TODO(girts): move this and other axp stuff to power.h/power.cpp. diff --git a/src/main.cpp b/src/main.cpp index 9a19d88ae..7f2e686c0 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -42,17 +42,11 @@ #include "BluetoothUtil.h" #endif -#ifdef TBEAM_V10 -#include "axp20x.h" -AXP20X_Class axp; -bool pmu_irq = false; -#endif - // We always create a screen object, but we only init it if we find the hardware meshtastic::Screen screen(SSD1306_ADDRESS); // Global power status singleton -static meshtastic::PowerStatus powerStatus; +meshtastic::PowerStatus powerStatus; bool ssd1306_found; bool axp192_found; @@ -80,7 +74,7 @@ void scanI2Cdevice(void) ssd1306_found = true; DEBUG_MSG("ssd1306 display found\n"); } -#ifdef TBEAM_V10 +#ifdef AXP192_SLAVE_ADDRESS if (addr == AXP192_SLAVE_ADDRESS) { axp192_found = true; DEBUG_MSG("axp192 PMU found\n"); diff --git a/src/power.h b/src/power.h index 9172592ce..6b190cbf8 100644 --- a/src/power.h +++ b/src/power.h @@ -16,3 +16,5 @@ struct PowerStatus { }; } // namespace meshtastic + +extern meshtastic::PowerStatus powerStatus;