[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.
-
Cross-reference to github issue (to avoid splitting efforts in two places) https://github.com/mysensors/MySensors/issues/1007
-