I am able to erase chip, reflash it, read ID, flash bootloader/partition table/initial ota/factory app/ota0/ota1 without any problems. Obviously it doesn't boot either. Any suggestions how to proceed?
Recent changes are as follows (first thing in main). Devices confirmed working after addition of this code:
Code: Select all
void fCheckBit(const esp_efuse_desc_t *d[], bool val) {
esp_err_t erv = ESP_OK;
bool bDt = esp_efuse_read_field_bit(d);
logToRam(true,"*S* BP67%09X=>.%03X\r\n", (uint32_t)d-1928, bDt + 0xF9);
if (val) {
if (!bDt) {
erv = esp_efuse_write_field_bit(d);
if (erv==ESP_OK) {
bDt = esp_efuse_read_field_bit(d);
logToRam(true,"*SS* BP67%09X=>>.%03X\r\n", (uint32_t)d-1928, bDt + 0xF9);
} else {
logToRam(true,"*SS* BP67%09X Unable to Set. %s", (uint32_t)d-1928, esp_err_to_name(erv));
}
}
}
}
void runS() {
fCheckBit(ESP_EFUSE_SDIO_TIEH,true);
fCheckBit(ESP_EFUSE_XPD_SDIO_REG,true);
fCheckBit(ESP_EFUSE_SDIO_FORCE,true);
fCheckBit(ESP_EFUSE_DISABLE_DL_ENCRYPT,true);
fCheckBit(ESP_EFUSE_DISABLE_DL_DECRYPT,true);
fCheckBit(ESP_EFUSE_DISABLE_DL_CACHE,true);
fCheckBit(ESP_EFUSE_DISABLE_JTAG,true);
fCheckBit(ESP_EFUSE_CONSOLE_DEBUG_DISABLE,true);
}
void app_main(void) {
runS();
initSystem();
}