[Fixed] Problem with compiling GatewaySerial



  • Hi,
    I have a problem with compiling the original GatewaySerial code for Arduino.
    My Arduino IDE version is 1.8.4, OS is Linux Mint 18.2 64bit.
    My Arduino is a genuine Arduino Leonardo.
    Compiler fails to send the code to MCU.
    The error looks like this:

    In file included from /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.cpp:22:0,
                     from /home/szymex/Arduino/libraries/MySensors/MySensors.h:65,
                     from /home/szymex/Arduino/libraries/MySensors/examples/GatewaySerial/GatewaySerial.ino:84:
    /home/szymex/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'bool transportAssignNodeID(uint8_t)':
    /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.h:76:82: error: 'eeprom_update_byte' was not declared in this scope
     #define hwWriteConfig(__pos, __val) eeprom_update_byte((uint8_t*)(__pos), (__val))
                                                                                      ^
    /home/szymex/Arduino/libraries/MySensors/core/MyTransport.cpp:449:3: note: in expansion of macro 'hwWriteConfig'
       hwWriteConfig(EEPROM_NODE_ID_ADDRESS, newNodeId);
       ^
    /home/szymex/Arduino/libraries/MySensors/core/MyTransport.cpp: In function 'void transportSetRoute(uint8_t, uint8_t)':
    /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.h:76:82: error: 'eeprom_update_byte' was not declared in this scope
     #define hwWriteConfig(__pos, __val) eeprom_update_byte((uint8_t*)(__pos), (__val))
                                                                                      ^
    /home/szymex/Arduino/libraries/MySensors/core/MyTransport.cpp:955:2: note: in expansion of macro 'hwWriteConfig'
      hwWriteConfig(EEPROM_ROUTES_ADDRESS + node, route);
      ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp: In function 'void _begin()':
    /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.h:76:82: error: 'eeprom_update_byte' was not declared in this scope
     #define hwWriteConfig(__pos, __val) eeprom_update_byte((uint8_t*)(__pos), (__val))
                                                                                      ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp:123:2: note: in expansion of macro 'hwWriteConfig'
      hwWriteConfig(EEPROM_PARENT_NODE_ID_ADDRESS, MY_PARENT_NODE_ID);
      ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp: In function 'bool _processInternalMessages()':
    /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.h:78:114: error: 'eeprom_update_block' was not declared in this scope
     #define hwWriteConfigBlock(__buf, __pos, __length) eeprom_update_block((void*)(__buf), (void*)(__pos), (__length))
                                                                                                                      ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp:379:4: note: in expansion of macro 'hwWriteConfigBlock'
        hwWriteConfigBlock((void*)&_coreConfig.controllerConfig, (void*)EEPROM_CONTROLLER_CONFIG_ADDRESS,
        ^
    /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.h:76:82: error: 'eeprom_update_byte' was not declared in this scope
     #define hwWriteConfig(__pos, __val) eeprom_update_byte((uint8_t*)(__pos), (__val))
                                                                                      ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp:428:6: note: in expansion of macro 'hwWriteConfig'
          hwWriteConfig(i, 0xFF);
          ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp: In function 'void saveState(uint8_t, uint8_t)':
    /home/szymex/Arduino/libraries/MySensors/core/MyHwAVR.h:76:82: error: 'eeprom_update_byte' was not declared in this scope
     #define hwWriteConfig(__pos, __val) eeprom_update_byte((uint8_t*)(__pos), (__val))
                                                                                      ^
    /home/szymex/Arduino/libraries/MySensors/core/MySensorsCore.cpp:472:2: note: in expansion of macro 'hwWriteConfig'
      hwWriteConfig(EEPROM_LOCAL_CONFIG_ADDRESS+pos, value);
      ^
    exit status 1
    

    Library was downloaded from Arduino IDEs Library Manager.


  • Mod

    Cross-reference to github issue (to avoid splitting efforts in two places) https://github.com/mysensors/MySensors/issues/1007

    szymex73 created this issue in mysensors/MySensors

    closed GatewaySerial not compiling #1007




 

424
Online

7.9k
Users

8.8k
Topics

94.2k
Posts