ECDSA Signature Verification seems SLOW

We’re using mbedtls on an Espressif ESP32 module (32-bit Xtensa core, 160 MHz) to verify the signature of commands sent over Bluetooth. We use ECDSA signatures and a key pair generated with the secp256r1 curve.

I use a SHA256 hash of the data, giving a hash size of 32 bytes. The signature is 70-73 bytes.

After setting up a context and loading the public key (which is all reasonably fast), I am calling " mbedtls_ecdsa_read_signature " to verify the signature (against the calculated hash and public key).

The mbedtls_ecdsa_read_signature call takes about 900 mS to complete. This is problematic because it makes the device slow to respond to commands.

Is this execution time normal / expected? Anything I can do to speed it up?