Add EEPROM EUI-48 device identity across firmware and API.

Read the factory 24AA025E48 serial after ADAU I2C boot, derive SoftAP SSID, BT name, STA hostname, and expose serialNumber on GET /api/health with graceful fallbacks.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-07 09:00:38 +02:00
co-authored by Cursor
parent 11ad6b43ad
commit cd94e36a9d
35 changed files with 999 additions and 83 deletions
@@ -21,6 +21,7 @@
#include <array>
#include <string>
#include <string_view>
namespace bt1035 {
@@ -161,6 +162,19 @@ std::expected<void, Bt1035Error> Bt1035Driver::disconnectA2dp()
return sendCommand(core::Bt1035AtCommand::A2dpDisconnect);
}
std::expected<void, Bt1035Error> Bt1035Driver::setDeviceName(
std::string_view name)
{
if (auto ready = ensureBooted(); !ready) {
return ready;
}
if (name.empty() || name.size() > 32U) {
return std::unexpected(Bt1035Error::UnexpectedResponse);
}
std::string line = std::string("AT+NAME=") + std::string(name) + "\r\n";
return transmitAndExpectOk(line);
}
std::expected<void, Bt1035Error> Bt1035Driver::runInitSequence()
{
for (const core::Bt1035AtCommand command : core::bootInitSequence()) {