Skip to content

SPI.end() prints removeApbChangeCallback error #9036

Closed
@coffee-with-bee

Description

@coffee-with-bee

Board

ESP32 Dev Module

Device Description

ESP32-S3-DevKitC-1 v1.1

Hardware Configuration

No specific configuration

Version

latest master (checkout manually)

IDE Name

Arduino IDE

Operating System

Windows 11

Flash frequency

240

PSRAM enabled

yes

Upload speed

921600

Description

Starting from Arduino ESP32 3.0.0-alpha3 SPI.end() calls spiStopBus twice

  • From spiDetachSCK (Probably via spiDetachBus that is set as perimanSetBusDeinit)
  • And spiStopBus itself

The second call tries to invoke removeApbChangeCallback which is already removed by then.

Sketch

#include <SPI.h>

void setup() {
  SPI.begin();
  SPI.end();
}

void loop() {
  yield();
}

Debug Message

ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x1 (POWERON),boot:0x18 (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
Octal Flash Mode Enabled
For OPI Flash, Use Default Flash Boot Mode
mode:SLOW_RD, clock div:1
load:0x3fce3818,len:0x438
load:0x403c9700,len:0x4
load:0x403c9704,len:0x9ac
load:0x403cc700,len:0x2758
entry 0x403c9868
[   134][E][esp32-hal-cpu.c:140] removeApbChangeCallback(): not found func=0x42002a24 arg=0x3fc93c00

Other Steps to Reproduce

No response

I have checked existing issues, online documentation and the Troubleshooting Guide

  • I confirm I have checked existing issues, online documentation and Troubleshooting guide.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions