Release fw 0.8.5: BT1035 I2S boot init and hardware doc alignment.
Switch BT1035 bring-up from Line-In to I2S slave (AT+AUXCFG=3, AT+I2SCFG=67) to match the ADAU1701 PCM routing, confirm 2 kΩ I2C pull-ups on R1/R16, and sync firmware docs, AGENTS rules, and the DATASHEET bundle. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -48,7 +48,7 @@ struct Bt1035Pins {
|
||||
* @dname Bt1035Driver
|
||||
* @return n/a (type)
|
||||
* @pubstate Owns UART port after boot(). booted_ true after init sequence
|
||||
* including AT+AUXCFG=1 (Line-In from ADAU1701).
|
||||
* including AT+AUXCFG=3 and AT+I2SCFG=67 (I2S slave from ADAU1701).
|
||||
*
|
||||
* @author Michele Bigi
|
||||
* @date 2026-07-06
|
||||
@@ -86,7 +86,7 @@ public:
|
||||
*
|
||||
* @dname boot
|
||||
* @return Ok on success, or Bt1035Error.
|
||||
* @pubstate sets booted_ after Ping + AT+AUXCFG=1 both return OK.
|
||||
* @pubstate sets booted_ after Ping + I2S init both return OK.
|
||||
*
|
||||
* Sequence: hardware reset, UART @ 115200 with RTS/CTS, then
|
||||
* core::bootInitSequence() (see manual chapter bt1035).
|
||||
@@ -97,7 +97,7 @@ public:
|
||||
[[nodiscard]] std::expected<void, Bt1035Error> boot();
|
||||
|
||||
/**
|
||||
* @brief isBooted — query whether Line-In init succeeded.
|
||||
* @brief isBooted — query whether I2S init succeeded.
|
||||
*
|
||||
* @dname isBooted
|
||||
* @return true after successful boot().
|
||||
@@ -177,7 +177,7 @@ public:
|
||||
* @dname setDeviceName
|
||||
* @param name Bluetooth name (Feasycom FSC-BT1035 AT+NAME command).
|
||||
* @return Ok on success, or Bt1035Error.
|
||||
* @pubstate sends AT+NAME after boot; does not alter AT+AUXCFG=1 init.
|
||||
* @pubstate sends AT+NAME after boot; does not alter I2S init sequence.
|
||||
*
|
||||
* @author Michele Bigi
|
||||
* @date 2026-07-07
|
||||
|
||||
@@ -169,10 +169,14 @@ std::expected<void, Bt1035Error> Bt1035Driver::setDeviceName(
|
||||
if (auto ready = ensureBooted(); !ready) {
|
||||
return ready;
|
||||
}
|
||||
if (name.empty() || name.size() > 32U) {
|
||||
if (name.empty() || name.size() > 31U) {
|
||||
return std::unexpected(Bt1035Error::UnexpectedResponse);
|
||||
}
|
||||
const std::string line =
|
||||
core::buildBt1035SetNameLine(name, false);
|
||||
if (line.empty()) {
|
||||
return std::unexpected(Bt1035Error::UnexpectedResponse);
|
||||
}
|
||||
std::string line = std::string("AT+NAME=") + std::string(name) + "\r\n";
|
||||
return transmitAndExpectOk(line);
|
||||
}
|
||||
|
||||
@@ -315,7 +319,7 @@ std::expected<void, Bt1035Error> Bt1035Driver::boot()
|
||||
}
|
||||
|
||||
booted_ = true;
|
||||
ESP_LOGI(kTag, "Line-In mode enabled (AT+AUXCFG=1)");
|
||||
ESP_LOGI(kTag, "I2S slave mode enabled (AT+AUXCFG=3, AT+I2SCFG=67)");
|
||||
return {};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user