duino-coin icon indicating copy to clipboard operation
duino-coin copied to clipboard

ESP32 `sha_parallel_engine.h` troubleshooting

Open revoxhere opened this issue 4 years ago • 7 comments

If you have an outdated ESP32 core, you will probably see the message like this while compiling the code:

ResolveLibrary(sha/sha_parallel_engine.h)
  -> candidates: []ESP32_Code:59:85: fatal error: sha/sha_parallel_engine.h: No such file or directory
 #include "sha/sha_parallel_engine.h" // Include hardware accelerated hashing library
                  ^
compilation terminated.

To solve that, you can either:

Update your ESP32 core (recommended for the future)

Open Arduino IDE > File > Preferences > In the Additional boards URL field put: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json

After doing that, update your ESP32 core: Arduino IDE > Tools > Board > Boards Manager > Type esp32 > Install version 2.0.1

You should now be able to compile the code without any problems.

Or use the older library version

Go to line 59 of the ESP32_Code.ino that says

#include "sha/sha_parallel_engine.h" // Include hardware accelerated hashing library

Comment it:

//#include "sha/sha_parallel_engine.h" // Include hardware accelerated hashing library

And enable the old library (uncomment line 58):

#include "hwcrypto/sha.h"

You should now be able to compile the code. Keep in mind using the old library will yield to worse performance.

revoxhere avatar Aug 19 '21 21:08 revoxhere

Thank you very much, fix the issue I have, God bless you, keep it up.

Raabitco avatar Aug 29 '21 04:08 Raabitco

It looks like replacing the "parallel" for "hwcrypto" library, will make the ESP32 run at 1 core. with an ESP8266 it generates 10.2 kH/s, the ESP32 generates 22.5 kH/s ESP8266 is single core runs at 80 MHz, ESP32 dual-core at 160MHz. So I expect an ESP32 to generate more than 40 kH/s

rolandbreedveld avatar Oct 27 '21 07:10 rolandbreedveld

To solve this I installed a newer ESP32 core, version 2.0.1, it is using both core's now. HashRate grows from 22 to 35kH/s and it compiles fine with: sha/sha_parallel_engine.h in preferences I now use: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json, http://arduino.esp8266.com/stable/package_esp8266com_index.json after this install or update to the latest ESP32 in board manager.

rolandbreedveld avatar Nov 06 '21 12:11 rolandbreedveld

How can I make ESP32 core run Duino only on one core, for the others to perform its normal functions in an IoT network?

FernandoMeiraRocha avatar Feb 12 '22 17:02 FernandoMeiraRocha

i do that but it says that it is error

tigran-gasparyan avatar Feb 26 '22 09:02 tigran-gasparyan

Hi, can't find these libraries, where are located ?

ACLGSM avatar Mar 10 '22 18:03 ACLGSM

Update M5Stack Core to latest version, but with "sha/sha_parallel_engine.h" I keep getting pool connection refused errors. Wentt back to a previous core, and "hwcrypto/sha.h" was able to connect without any problems. Any ideas?

kd8bxp avatar May 10 '22 15:05 kd8bxp