Merge develop into main (#391)

## Improvements

- Created new base driver classes: `EspLcdDisplayV2' and `EspLcdSpiDisplay`
- Updated `St7789Display` to implement `EspLcdSpiDisplay`
- Updated all boards with ST7789 display

## Fixes

- Ensure that `tmp/` is created on startup (for all writeable filesystems)
- Fix for `lv_list` padding on small screen devices
- Fix for `PreferencesEsp` not processing result when writing string to NVS

## Other

- Remove unused build scripts
This commit is contained in:
Ken Van Hoeylandt
2025-10-26 13:50:17 +01:00
committed by GitHub
parent 37420db000
commit db6d3b4acb
43 changed files with 851 additions and 784 deletions
-104
View File
@@ -1,104 +0,0 @@
#!/bin/sh
function build() {
Buildscripts/build.sh $1
}
function release() {
Buildscripts/release.sh $1
}
function releaseSdk() {
Buildscripts/release-sdk.sh $1
}
SECONDS=0
build elecrow-crowpanel-advance-28
release elecrow-crowpanel-advance-28
build elecrow-crowpanel-advance-35
release elecrow-crowpanel-advance-35
build elecrow-crowpanel-advance-50
release elecrow-crowpanel-advance-50
build elecrow-crowpanel-basic-28
release elecrow-crowpanel-basic-28
build elecrow-crowpanel-basic-35
release elecrow-crowpanel-basic-35
build elecrow-crowpanel-basic-50
release elecrow-crowpanel-basic-50
build lilygo-tdeck
release lilygo-tdeck
build lilygo-tdongle-s3
release lilygo-tdongle-s3
build lilygo-tlora-pager
release lilygo-tlora-pager
releaseSdk release/TactilitySDK-esp32s3
build cyd-2432s024c
release cyd-2432s024c
build cyd-2432s028r
release cyd-2432s028r
build cyd-2432s032c
release cyd-2432s032c
build cyd-4848s040c
release cyd-4848s040c
build cyd-8048s043c
release cyd-8048s043c
build cyd-e32r28t
release cyd-e32r28t
build cyd-jc2432w328c
release cyd-jc2432w328c
build cyd-jc8048w550c
release cyd-jc8048w550c
build m5stack-core2
release m5stack-core2
releaseSdk release/TactilitySDK-esp32
build m5stack-cardputer
release m5stack-cardputer
build m5stack-cores3
release m5stack-cores3
build m5stack-stickc-plus
release m5stack-stickc-plus
build m5stack-stickc-plus2
release m5stack-stickc-plus2
build waveshare-s3-touch-43
release waveshare-s3-touch-43
build waveshare-s3-touch-lcd-147
release waveshare-s3-touch-lcd-147
build waveshare-s3-touch-lcd-128
release waveshare-s3-touch-lcd-128
build waveshare-s3-lcd-13
release waveshare-s3-lcd-13
build unphone
release unphone
duration=$SECONDS
echo "Finished in $((duration / 60)) minutes and $((duration % 60)) seconds."
-50
View File
@@ -1,50 +0,0 @@
<#
.SYNOPSIS
Usage: build.ps1 [boardname]
Example: build.ps1 lilygo-tdeck
Description: Makes a clean build for the specified board.
#>
function EchoNewPhase {
param (
[string]$message
)
Write-Host "$message" -ForegroundColor Cyan
}
function FatalError {
param (
[string]$message
)
Write-Host "⚠️ $message" -ForegroundColor Red
exit 0
}
$sdkconfig_file = "sdkconfig.board.$($args[0])"
if ($args.Count -lt 1) {
FatalError "Must pass board name as first argument. (e.g. lilygo_tdeck)"
}
if (-Not (Test-Path $sdkconfig_file)) {
FatalError "Board not found: $sdkconfig_file"
}
EchoNewPhase "Cleaning build folder"
$BuildFolder = "build"
if (Test-Path $BuildFolder) {
Remove-Item -Path $BuildFolder -Recurse -Force
EchoNewPhase "Build folder deleted"
} else {
EchoNewPhase "Build folder doesn't exist."
}
EchoNewPhase "Building $sdkconfig_file"
Copy-Item -Path $sdkconfig_file -Destination "sdkconfig"
try {
& idf.py build
} catch {
FatalError "Failed to build esp32s3 SDK"
}
-39
View File
@@ -1,39 +0,0 @@
#!/bin/sh
#
# Usage: build.sh [boardname]
# Example: build.sh lilygo-tdeck
# Description: Makes a clean build for the specified board.
#
echoNewPhase() {
echo -e "⏳ \e[36m${1}\e[0m"
}
fatalError() {
echo -e "⚠️ \e[31m${1}\e[0m"
exit 0
}
sdkconfig_file="sdkconfig.board.${1}"
if [ $# -lt 1 ]; then
fatalError "Must pass board name as first argument. (e.g. lilygo_tdeck)"
fi
if [ ! -f $sdkconfig_file ]; then
fatalError "Board not found: ${sdkconfig_file}"
fi
echoNewPhase "Cleaning build folder"
#rm -rf build
echoNewPhase "Building $sdkconfig_file"
cp $sdkconfig_file sdkconfig
idf.py build
if [[ $? != 0 ]]; then
fatalError "Failed to build esp32s3 SDK"
fi
-79
View File
@@ -1,79 +0,0 @@
<#
.SYNOPSIS
Releases the current build labeled as a release for the specified board name.
.DESCRIPTION
Usage: .\release.ps1 [boardname]
Example: .\release.ps1 lilygo-tdeck
.PARAMETER board
The name of the board to release.
#>
function EchoNewPhase {
param(
[string]$Message
)
Write-Host "$message" -ForegroundColor Cyan
}
function FatalError {
param(
[string]$Message
)
Write-Host "⚠️ $message" -ForegroundColor Red
exit 0
}
function Release-Symbols {
param(
[string]$TargetPath
)
EchoNewPhase "Making symbols release at '$TargetPath'"
New-Item -ItemType Directory -Path $TargetPath -Force | Out-Null
Copy-Item -Path "build\*.elf" -Destination $TargetPath -Force
}
function Release-Build {
param(
[string]$TargetPath
)
EchoNewPhase "Making release at '$TargetPath'"
$binPath = Join-Path $TargetPath "Binaries"
$partitionTablePath = Join-Path $binPath "partition_table"
$bootloaderPath = Join-Path $binPath "bootloader"
New-Item -ItemType Directory -Path $binPath -Force | Out-Null
New-Item -ItemType Directory -Path $partitionTablePath -Force | Out-Null
New-Item -ItemType Directory -Path $bootloaderPath -Force | Out-Null
Copy-Item -Path "build\*.bin" -Destination $binPath -Force
Copy-Item -Path "build\bootloader\*.bin" -Destination $bootloaderPath -Force
Copy-Item -Path "build\partition_table\*.bin" -Destination $partitionTablePath -Force
Copy-Item -Path "build\flash_args" -Destination $binPath -Force
Copy-Item -Path "build\flasher_args.json" -Destination $binPath -Force
Copy-Item -Path "Buildscripts\Flashing\*" -Destination $TargetPath -Force
}
# Script start
$releasePath = "release"
$sdkconfig_file = "sdkconfig.board.$($args[0])"
$board = "$($args[0])"
if ($args.Count -lt 1) {
FatalError "Must pass board name as first argument. (e.g. lilygo_tdeck)"
}
if (-not (Test-Path $sdkconfig_file)) {
FatalError "Board not found: $sdkconfig_file"
}
$targetReleasePath = Join-Path $releasePath "Tactility-$board"
$targetSymbolsPath = Join-Path $releasePath "Tactility-$board-symbols"
Release-Build $targetReleasePath
Release-Symbols $targetSymbolsPath
-7
View File
@@ -1,7 +0,0 @@
#!/bin/sh
cmake -S ./ -B build-sim
cmake --build build-sim --target build-tests -j 14
build-sim/Tests/TactilityCore/TactilityCoreTests --exit
build-sim/Tests/Tactility/TactilityTests --exit