You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Every library I have used previously calls wire.begin() inside of the library's begin() function. This library requires you call wire.begin() prior to calling ExternalEEPROM::begin().
Your workbench
I'm using an ESP32 board from HiLetGo powered over USB. The Sparkfun EEPROM board is wired through a Proto board and soldered wires to the I2C bus.
Steps to reproduce
Call ExternalEEPROM::begin() without first calling wire.begin(). It fails to connect
Expected behavior
It should connect automatically by calling wire.begin() itself.
Actual behavior
Freezes and does not find the EEPROM.
The text was updated successfully, but these errors were encountered:
I'm sorry, but we stopped using a Wire.begin() inside of libraries over four years ago. Calling Wire.begin inside a library is a bad idea for a variety of reasons. First it overwrites any previous Wire.setClock(). Second, if a user passes in a different Wire hardware port (ie, Wire1), and the user hasn't initiated that pointer, then initiating the library with a null pointer leads to bad things.
Subject of the issue
Every library I have used previously calls
wire.begin()
inside of the library'sbegin()
function. This library requires you callwire.begin()
prior to callingExternalEEPROM::begin()
.Your workbench
I'm using an ESP32 board from HiLetGo powered over USB. The Sparkfun EEPROM board is wired through a Proto board and soldered wires to the I2C bus.
Steps to reproduce
Call
ExternalEEPROM::begin()
without first callingwire.begin()
. It fails to connectExpected behavior
It should connect automatically by calling
wire.begin()
itself.Actual behavior
Freezes and does not find the EEPROM.
The text was updated successfully, but these errors were encountered: