Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Troubleshooting
  3. GatewayESP8266 Compile problem.

GatewayESP8266 Compile problem.

Scheduled Pinned Locked Moved Troubleshooting
3 Posts 2 Posters 1.3k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • R Offline
    R Offline
    RWoerz
    wrote on last edited by
    #1

    I,m having a problem compiling GatewayESP8266. I downloaded the latest libraries and started with a fresh copy of the Gateway program. I put in my WiFi and gateway info and it complied. I then enabled UDP and I got the expected error that it needed a MY_CONTROLLER_IP_ADDRESS. I added the address of Vera and that's when things went sideways. I got the following error.

    In file included from C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/MySensors.h:200:0,

                 from C:\Users\RWoerz\AppData\Local\Temp\arduino_modified_sketch_73845\GatewayESP8266.ino:134:
    

    C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp: In function 'bool gatewayTransportAvailable()':

    C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:302:35: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

    _ethernetServer.read(inputString[0].string, MY_GATEWAY_MAX_RECEIVE_LENGTH);

                                   ^
    

    C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:303:14: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

    inputString[0].string[packet_size] = 0;

              ^
    

    In file included from C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/MySensors.h:28:0,

                 from C:\Users\RWoerz\AppData\Local\Temp\arduino_modified_sketch_73845\GatewayESP8266.ino:134:
    

    C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:304:55: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

    debug(PSTR("UDP packet received: %s\n"), inputString[0].string);

                                                       ^
    

    C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MySensorsCore.h:90:40: note: in definition of macro 'debug'

    #define debug(x,...) hwDebugPrint(x, ##VA_ARGS) //!< debug, to be removed (follow-up PR)

                                        ^
    

    In file included from C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/MySensors.h:200:0,

                 from C:\Users\RWoerz\AppData\Local\Temp\arduino_modified_sketch_73845\GatewayESP8266.ino:134:
    

    C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:305:58: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

    const bool ok = protocolParse(_ethernetMsg, inputString[0].string);

                                                          ^
    

    Multiple libraries were found for "WiFiUdp.h"
    Used: C:\Users\RWoerz\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi
    Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
    Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
    Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
    Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
    Multiple libraries were found for "MySensors.h"
    Used: C:\Users\RWoerz\Documents\Arduino\libraries\MySensors
    Not used: C:\Users\RWoerz\Documents\Arduino\libraries\arduino_343871
    Not used: C:\Users\RWoerz\Documents\Arduino\libraries\arduino_271619
    exit status 1
    Error compiling for board NodeMCU 1.0 (ESP-12E Module).

    mfalkviddM 1 Reply Last reply
    0
    • R RWoerz

      I,m having a problem compiling GatewayESP8266. I downloaded the latest libraries and started with a fresh copy of the Gateway program. I put in my WiFi and gateway info and it complied. I then enabled UDP and I got the expected error that it needed a MY_CONTROLLER_IP_ADDRESS. I added the address of Vera and that's when things went sideways. I got the following error.

      In file included from C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/MySensors.h:200:0,

                   from C:\Users\RWoerz\AppData\Local\Temp\arduino_modified_sketch_73845\GatewayESP8266.ino:134:
      

      C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp: In function 'bool gatewayTransportAvailable()':

      C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:302:35: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

      _ethernetServer.read(inputString[0].string, MY_GATEWAY_MAX_RECEIVE_LENGTH);

                                     ^
      

      C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:303:14: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

      inputString[0].string[packet_size] = 0;

                ^
      

      In file included from C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/MySensors.h:28:0,

                   from C:\Users\RWoerz\AppData\Local\Temp\arduino_modified_sketch_73845\GatewayESP8266.ino:134:
      

      C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:304:55: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

      debug(PSTR("UDP packet received: %s\n"), inputString[0].string);

                                                         ^
      

      C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MySensorsCore.h:90:40: note: in definition of macro 'debug'

      #define debug(x,...) hwDebugPrint(x, ##VA_ARGS) //!< debug, to be removed (follow-up PR)

                                          ^
      

      In file included from C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/MySensors.h:200:0,

                   from C:\Users\RWoerz\AppData\Local\Temp\arduino_modified_sketch_73845\GatewayESP8266.ino:134:
      

      C:\Users\RWoerz\Documents\Arduino\libraries\MySensors/core/MyGatewayTransportEthernet.cpp:305:58: error: no match for 'operator[]' (operand types are 'inputBuffer' and 'int')

      const bool ok = protocolParse(_ethernetMsg, inputString[0].string);

                                                            ^
      

      Multiple libraries were found for "WiFiUdp.h"
      Used: C:\Users\RWoerz\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.3.0\libraries\ESP8266WiFi
      Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
      Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
      Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
      Not used: C:\Program Files (x86)\Arduino\libraries\WiFi
      Multiple libraries were found for "MySensors.h"
      Used: C:\Users\RWoerz\Documents\Arduino\libraries\MySensors
      Not used: C:\Users\RWoerz\Documents\Arduino\libraries\arduino_343871
      Not used: C:\Users\RWoerz\Documents\Arduino\libraries\arduino_271619
      exit status 1
      Error compiling for board NodeMCU 1.0 (ESP-12E Module).

      mfalkviddM Offline
      mfalkviddM Offline
      mfalkvidd
      Mod
      wrote on last edited by
      #2

      @RWoerz looks similar to https://github.com/mysensors/MySensors/issues/919

      1 Reply Last reply
      0
      • R Offline
        R Offline
        RWoerz
        wrote on last edited by
        #3

        Thanks that seems to have worked. This is what is needed.
        In the file MyGatewayTransportEthernet.cpp around line 301 the following changes need to be made. All the [0]'s need to be removed.

        Old:
        #if defined(MY_GATEWAY_ESP8266)
        _ethernetServer.read(inputString[0].string, MY_GATEWAY_MAX_RECEIVE_LENGTH);
        inputString[0].string[packet_size] = 0;
        debug(PSTR("UDP packet received: %s\n"), inputString[0].string);
        const bool ok = protocolParse(_ethernetMsg, inputString[0].string);
        #else

        New:
        #if defined(MY_GATEWAY_ESP8266)
        _ethernetServer.read(inputString.string, MY_GATEWAY_MAX_RECEIVE_LENGTH);
        inputString.string[packet_size] = 0;
        debug(PSTR("UDP packet received: %s\n"), inputString.string);
        const bool ok = protocolParse(_ethernetMsg, inputString.string);
        #else

        1 Reply Last reply
        1
        Reply
        • Reply as topic
        Log in to reply
        • Oldest to Newest
        • Newest to Oldest
        • Most Votes


        23

        Online

        11.7k

        Users

        11.2k

        Topics

        113.1k

        Posts


        Copyright 2025 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
        • Login

        • Don't have an account? Register

        • Login or register to search.
        • First post
          Last post
        0
        • MySensors
        • OpenHardware.io
        • Categories
        • Recent
        • Tags
        • Popular