Merge develop into main (#316)

- Updated all boards to use `hal::Configuration.createDevices`
- Updated all boards to use new directory structure and file naming convention
- Refactored `Xpt2046SoftSpi` driver.
- Created `Axp2101Power` device in `Drivers/AXP2101`
- Removed global static instances from some drivers (instances that kept a reference to the Device*)
- Improved `SystemInfoApp` UI: better memory labels, hide external memory bar when there's no PSRAM
- Fix for HAL: register touch devices after displays are registered
- Fix for Boot splash hanging on WiFi init: unlock file lock after using it
This commit is contained in:
Ken Van Hoeylandt
2025-09-03 22:05:28 +02:00
committed by GitHub
parent 1deaf4c426
commit 1627b9fa85
135 changed files with 543 additions and 577 deletions
-10
View File
@@ -102,13 +102,3 @@ bool Xpt2046Power::readBatteryVoltageSampled(uint32_t& output) {
return false;
}
}
static std::shared_ptr<PowerDevice> power;
std::shared_ptr<PowerDevice> getOrCreatePower() {
if (power == nullptr) {
power = std::make_shared<Xpt2046Power>();
}
return power;
}
+1 -4
View File
@@ -18,14 +18,11 @@ class Xpt2046Power : public PowerDevice {
public:
~Xpt2046Power() = default;
~Xpt2046Power() override = default;
std::string getName() const final { return "XPT2046 Power Measurement"; }
std::string getDescription() const final { return "Power interface via XPT2046 voltage measurement"; }
bool supportsMetric(MetricType type) const override;
bool getMetric(MetricType type, MetricData& data) override;
};
std::shared_ptr<PowerDevice> getOrCreatePower();
-3
View File
@@ -5,9 +5,6 @@
#include <esp_err.h>
#include <esp_lcd_touch_xpt2046.h>
#include <esp_lvgl_port.h>
Xpt2046Touch* Xpt2046Touch::instance = nullptr;
bool Xpt2046Touch::createIoHandle(esp_lcd_panel_io_handle_t& outHandle) {
const esp_lcd_panel_io_spi_config_t io_config = ESP_LCD_TOUCH_IO_SPI_XPT2046_CONFIG(configuration->spiPinCs);
-2
View File
@@ -39,8 +39,6 @@ public:
private:
static Xpt2046Touch* instance;
std::unique_ptr<Configuration> configuration;
bool createIoHandle(esp_lcd_panel_io_handle_t& outHandle) override;