diff --git a/libraries/MySensors/core/MyTransport.cpp b/libraries/MySensors/core/MyTransport.cpp index 983204a..70553e5 100644 --- a/libraries/MySensors/core/MyTransport.cpp +++ b/libraries/MySensors/core/MyTransport.cpp @@ -169,6 +169,8 @@ inline void transportProcess() { } transportPresentNode(); + if (presentation) + presentation(); // Write id to EEPROM hwWriteConfig(EEPROM_NODE_ID_ADDRESS, _nc.nodeId); debug(PSTR("id=%d\n"), _nc.nodeId); @@ -452,7 +454,14 @@ void transportPresentNode() { // Open reading pipe for messages directed to this node (set write pipe to same) transportSetAddress(_nc.nodeId); // Present node and request config - #ifndef MY_GATEWAY_FEATURE + #ifdef MY_GATEWAY_FEATURE + // Send presentation for this gateway device + #ifdef MY_REPEATER_FEATURE + present(NODE_SENSOR_ID, S_ARDUINO_REPEATER_NODE); + #else + present(NODE_SENSOR_ID, S_ARDUINO_NODE); + #endif + else if (_nc.nodeId != AUTO) { // Send signing preferences for this node signerPresentation(_msg);