Various improvements (#461)

* **New Features**
  * Time and delay utilities added (ticks, ms, µs); SD card now uses an expansion-header CS pin; HTTP downloads warn when run on the GUI task and yield to avoid blocking.

* **Bug Fixes / Reliability**
  * Many hard-crash paths converted to guarded checks to reduce abrupt termination and improve stability.

* **Tests**
  * Unit tests added to validate time and delay accuracy.

* **Chores**
  * License header and build/macro updates.
This commit is contained in:
Ken Van Hoeylandt
2026-01-27 08:04:21 +01:00
committed by GitHub
parent 619b5aa53b
commit e6abd496f9
95 changed files with 433 additions and 284 deletions
+1 -2
View File
@@ -70,7 +70,6 @@ static error_t driver_remove(Driver* driver) {
ledger.lock();
const auto iterator = std::ranges::find(ledger.drivers, driver);
// check that there actually is a 3 in our vector
if (iterator == ledger.drivers.end()) {
ledger.unlock();
return ERROR_NOT_FOUND;
@@ -184,7 +183,7 @@ error_t driver_unbind(Driver* driver, Device* device) {
driver_internal_data(driver)->use_count--;
driver_unlock(driver);
LOG_I(TAG, "unbound %s to %s", driver->name, device->name);
LOG_I(TAG, "unbound %s from %s", driver->name, device->name);
return ERROR_NONE;