core2_factory_test.ino error i2c_err_t



  • Hello guys, I just got my M5Stack Core2 and im new to all this so bear with me here.
    Im working on a M1 MacBook Air, I installed Arduino IDE 2.0.3 M5Core2 Library 0.1.5 with all of the dependences it requires. I cloned the M5-ProductExampleCodes repo and am trying to compile core2_factory_test.ino but it keeps giving me an error. I already searched online for the same issue but i havent found anything. would anyone be able to give me a hand with this? Thanks in advance.

    this is the error im getting from the compiler:

    "/Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp: In function 'bool i2c_read(const uint8_t*, int, uint8_t*, int)':
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp:44:9: error: 'i2c_err_t' has not been declared
    if (i2c_err_t::I2C_ERROR_CONTINUE != Wire1.writeTransmission(i2c_addr, const_cast<uint8_t*>(wrbuf), wrlen, false))
    ^~~~~~~~~
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp:44:48: error: 'class TwoWire' has no member named 'writeTransmission'; did you mean 'beginTransmission'?
    if (i2c_err_t::I2C_ERROR_CONTINUE != Wire1.writeTransmission(i2c_addr, const_cast<uint8_t*>(wrbuf), wrlen, false))
    ^~~~~~~~~~~~~~~~~
    beginTransmission
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp:50:7: error: 'i2c_err_t' has not been declared
    if (i2c_err_t::I2C_ERROR_OK != Wire1.readTransmission(i2c_addr, rdbuf, rdlen, true))
    ^~~~~~~~~
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp:50:40: error: 'class TwoWire' has no member named 'readTransmission'; did you mean 'endTransmission'?
    if (i2c_err_t::I2C_ERROR_OK != Wire1.readTransmission(i2c_addr, rdbuf, rdlen, true))
    ^~~~~~~~~~~~~~~~
    endTransmission
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp: In function 'bool i2c_write(const uint8_t*, int)':
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp:60:7: error: 'i2c_err_t' has not been declared
    if (i2c_err_t::I2C_ERROR_OK != Wire1.writeTransmission(i2c_addr, const_cast<uint8_t*>(buf), len, true))
    ^~~~~~~~~
    /Users/u0xpsec/M5-ProductExampleCodes/Core/M5Core2/Arduino/Core2_Factory_test/ft6336_fw_updater.cpp:60:40: error: 'class TwoWire' has no member named 'writeTransmission'; did you mean 'beginTransmission'?
    if (i2c_err_t::I2C_ERROR_OK != Wire1.writeTransmission(i2c_addr, const_cast<uint8_t*>(buf), len, true))
    ^~~~~~~~~~~~~~~~~
    beginTransmission

    exit status 1

    Compilation error: 'i2c_err_t' has not been declared"



  • This post is deleted!


  • @teastain i havent even tried to upload the one i have errors with, just verifying/compiling makes it errors. all ive done so far is use the m5burner to test different things.



  • Hello guys

    @teastain : ft6336 != AT608A

    @u0xpsec : M5Core2 factory test code is broken for Arduino 2.x.x. You can either setup and compile with Arduino 1.x.x, try to fix the issue for Arduino 2.x.x. or as I did, comment out the not working part of the code which is not critical as is to update the ft6336 touch screen.

    Thanks
    Felix



  • thank you for the reply ill try comenting that piece of code and see if it compile.