Tab5 camera + other stuff (#558)

* Tab5 camera + other stuff

Tab5 camera driver - SC2356
Custom SliderBox widget - slider with plus and minus buttons + value label and snapping
Rtc Time service + rtc api
Sdk release - only include drivers built for that specific target, eg: sc2356 driver is mipi / p4 only.
No more hardcoded manual sdk cmakelists
New function to find device by compatible string match. no more static cast bool wildness when trying to match a single device (like M5Stack PaperS3 for example)

* feedback + fixes

Fixed external app user data path.
fix(gui): block app teardown until onHide() completes, preventing ELF unload racing a still-running app
added camera device type and api

* drain the snake sssem

---------

Co-authored-by: Ken Van Hoeylandt <git@kenvanhoeylandt.net>
This commit is contained in:
Shadowtrance
2026-07-10 16:45:03 +10:00
committed by GitHub
parent 16a61a087c
commit 7a7f09be35
47 changed files with 1894 additions and 83 deletions
@@ -0,0 +1,26 @@
#include <Tactility/service/rtctime/RtcTime.h>
#ifdef ESP_PLATFORM
#include <Tactility/service/rtctime/RtcTimeService.h>
#include <Tactility/service/ServiceManifest.h>
#include <Tactility/service/ServiceRegistration.h>
#endif
namespace tt::service::rtctime {
#ifdef ESP_PLATFORM
extern const ServiceManifest manifest;
#endif
bool isAvailable() {
#ifdef ESP_PLATFORM
// The service is only registered when an RTC device is present (see Tactility.cpp);
// treat "not registered" the same as "no device bound" rather than asserting.
auto service = findServiceById<RtcTimeService>(manifest.id);
return service != nullptr && service->isAvailable();
#else
return false;
#endif
}
} // namespace tt::service::rtctime