TCPCommandhandler

Support forum for MegunoLink
Post Reply
Pelle8879
Posts: 11
Joined: Wed Mar 21, 2018 8:56 pm

Mon Nov 21, 2022 12:23 pm

I am getting this message after using setup Arduino integrator:
'TCPCommandHandler' does not name a type
What to do?
I have tested uninstall Meguno library and installing again.
It worked proper prior to the update of integration.
Best regards
Pelle
philr
Posts: 446
Joined: Mon May 26, 2014 10:58 am

Wed Nov 23, 2022 7:13 am

Hi Pelle, can you provide a bit more info. Does this happen with a particular example we can try out? What sort of arduino are you using?

Cheers
Phil
Pelle8879
Posts: 11
Joined: Wed Mar 21, 2018 8:56 pm

Wed Nov 23, 2022 7:27 am

This is total message when verifying:

Arduino:1.8.19 (Windows 10), Kort:"ESP32 Dev Module, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 240MHz (WiFi/BT), QIO, 80MHz, 4MB (32Mb), 921600, Core 1, Core 1, None, Disabled"





















ESP32_PZEMHardSerial_RST_wifireconnect:48:33: error: no matching function for call to 'TcpCommandHandler<2>::TcpCommandHandler(WiFiServer&)'

TcpCommandHandler<2> Cmds(server);

^

In file included from C:\Users\Pelle\Documents\Arduino\ESP32_PZEMHardSerial_RST_wifireconnect\ESP32_PZEMHardSerial_RST_wifireconnect.ino:39:

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/TCPCommandHandler.h:22:3: note: candidate: 'TcpCommandHandler<MAX_COMMANDS, RECEIVE_BUFFER_SIZE, MAX_VARIABLES>::TcpCommandHandler(ITcpManager&) [with int MAX_COMMANDS = 2; int RECEIVE_BUFFER_SIZE = 60; int MAX_VARIABLES = 10]'

TcpCommandHandler(ITcpManager& rConnectionManager)

^~~~~~~~~~~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/TCPCommandHandler.h:22:3: note: no known conversion for argument 1 from 'WiFiServer' to 'ITcpManager&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/TCPCommandHandler.h:9:7: note: candidate: 'constexpr TcpCommandHandler<2>::TcpCommandHandler(const TcpCommandHandler<2>&)'

class TcpCommandHandler : public MLP::CommandDispatcherBase, public MLP::StreamParser

^~~~~~~~~~~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/TCPCommandHandler.h:9:7: note: no known conversion for argument 1 from 'WiFiServer' to 'const TcpCommandHandler<2>&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/TCPCommandHandler.h:9:7: note: candidate: 'constexpr TcpCommandHandler<2>::TcpCommandHandler(TcpCommandHandler<2>&&)'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/TCPCommandHandler.h:9:7: note: no known conversion for argument 1 from 'WiFiServer' to 'TcpCommandHandler<2>&&'

ESP32_PZEMHardSerial_RST_wifireconnect:78:30: error: no matching function for call to 'TimePlot::TimePlot(const char [8], TcpCommandHandler<2>&)'

TimePlot Plot("TrendBS", Cmds); // Bruna Stugan

^

In file included from C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/MegunoLink.h:5,

from C:\Users\Pelle\Documents\Arduino\ESP32_PZEMHardSerial_RST_wifireconnect\ESP32_PZEMHardSerial_RST_wifireconnect.ino:38:

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: candidate: 'TimePlot::TimePlot(const __FlashStringHelper*, Print&)'

TimePlot(const __FlashStringHelper* channelName, Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: no known conversion for argument 1 from 'const char [8]' to 'const __FlashStringHelper*'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: candidate: 'TimePlot::TimePlot(const char*, Print&)'

TimePlot(const char *channelName, Print &rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: no known conversion for argument 2 from 'TcpCommandHandler<2>' to 'Print&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate: 'TimePlot::TimePlot(Print&)'

TimePlot(Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(const TimePlot&)'

class TimePlot : public Plot

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(TimePlot&&)'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

ESP32_PZEMHardSerial_RST_wifireconnect:79:31: error: no matching function for call to 'TimePlot::TimePlot(const char [8], TcpCommandHandler<2>&)'

TimePlot Plot1("TrendKP", Cmds); // Kattis

^

In file included from C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/MegunoLink.h:5,

from C:\Users\Pelle\Documents\Arduino\ESP32_PZEMHardSerial_RST_wifireconnect\ESP32_PZEMHardSerial_RST_wifireconnect.ino:38:

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: candidate: 'TimePlot::TimePlot(const __FlashStringHelper*, Print&)'

TimePlot(const __FlashStringHelper* channelName, Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: no known conversion for argument 1 from 'const char [8]' to 'const __FlashStringHelper*'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: candidate: 'TimePlot::TimePlot(const char*, Print&)'

TimePlot(const char *channelName, Print &rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: no known conversion for argument 2 from 'TcpCommandHandler<2>' to 'Print&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate: 'TimePlot::TimePlot(Print&)'

TimePlot(Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(const TimePlot&)'

class TimePlot : public Plot

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(TimePlot&&)'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

ESP32_PZEMHardSerial_RST_wifireconnect:80:31: error: no matching function for call to 'TimePlot::TimePlot(const char [8], TcpCommandHandler<2>&)'

TimePlot Plot2("TrendBV", Cmds); // Bottenvåning

^

In file included from C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/MegunoLink.h:5,

from C:\Users\Pelle\Documents\Arduino\ESP32_PZEMHardSerial_RST_wifireconnect\ESP32_PZEMHardSerial_RST_wifireconnect.ino:38:

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: candidate: 'TimePlot::TimePlot(const __FlashStringHelper*, Print&)'

TimePlot(const __FlashStringHelper* channelName, Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: no known conversion for argument 1 from 'const char [8]' to 'const __FlashStringHelper*'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: candidate: 'TimePlot::TimePlot(const char*, Print&)'

TimePlot(const char *channelName, Print &rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: no known conversion for argument 2 from 'TcpCommandHandler<2>' to 'Print&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate: 'TimePlot::TimePlot(Print&)'

TimePlot(Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(const TimePlot&)'

class TimePlot : public Plot

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(TimePlot&&)'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

ESP32_PZEMHardSerial_RST_wifireconnect:81:32: error: no matching function for call to 'TimePlot::TimePlot(const char [9], TcpCommandHandler<2>&)'

TimePlot Plot3("TrendTR1", Cmds); // Våning 1

^

In file included from C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/MegunoLink.h:5,

from C:\Users\Pelle\Documents\Arduino\ESP32_PZEMHardSerial_RST_wifireconnect\ESP32_PZEMHardSerial_RST_wifireconnect.ino:38:

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: candidate: 'TimePlot::TimePlot(const __FlashStringHelper*, Print&)'

TimePlot(const __FlashStringHelper* channelName, Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:13:3: note: no known conversion for argument 1 from 'const char [9]' to 'const __FlashStringHelper*'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: candidate: 'TimePlot::TimePlot(const char*, Print&)'

TimePlot(const char *channelName, Print &rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:12:3: note: no known conversion for argument 2 from 'TcpCommandHandler<2>' to 'Print&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate: 'TimePlot::TimePlot(Print&)'

TimePlot(Print& rDestination = Serial);

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:11:3: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(const TimePlot&)'

class TimePlot : public Plot

^~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate: 'constexpr TimePlot::TimePlot(TimePlot&&)'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/TimePlot.h:7:7: note: candidate expects 1 argument, 2 provided

ESP32_PZEMHardSerial_RST_wifireconnect:82:33: error: no matching function for call to 'InterfacePanel::InterfacePanel(const char [1], TcpCommandHandler<2>&)'

InterfacePanel MyPanel1("", Cmds); //

^

In file included from C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/MegunoLink.h:1,

from C:\Users\Pelle\Documents\Arduino\ESP32_PZEMHardSerial_RST_wifireconnect\ESP32_PZEMHardSerial_RST_wifireconnect.ino:38:

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:20:3: note: candidate: 'InterfacePanel::InterfacePanel(Print&)'

InterfacePanel(Print &rDestination = Serial);

^~~~~~~~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:20:3: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:19:3: note: candidate: 'InterfacePanel::InterfacePanel(const __FlashStringHelper*, Print&)'

InterfacePanel(const __FlashStringHelper* channelName, Print& rDestination = Serial);

^~~~~~~~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:19:3: note: no known conversion for argument 1 from 'const char [1]' to 'const __FlashStringHelper*'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:18:3: note: candidate: 'InterfacePanel::InterfacePanel(const char*, Print&)'

InterfacePanel(const char *channelName, Print &rDestination = Serial);

^~~~~~~~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:18:3: note: no known conversion for argument 2 from 'TcpCommandHandler<2>' to 'Print&'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:5:7: note: candidate: 'constexpr InterfacePanel::InterfacePanel(const InterfacePanel&)'

class InterfacePanel : public MegunoLinkProtocol

^~~~~~~~~~~~~~

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:5:7: note: candidate expects 1 argument, 2 provided

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:5:7: note: candidate: 'constexpr InterfacePanel::InterfacePanel(InterfacePanel&&)'

C:\Users\Pelle\Documents\Arduino\libraries\MegunoLink-1.41.0\src/utility/InterfacePanel.h:5:7: note: candidate expects 1 argument, 2 provided

exit status 1

no matching function for call to 'TcpCommandHandler<2>::TcpCommandHandler(WiFiServer&)'



This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
Pelle8879
Posts: 11
Joined: Wed Mar 21, 2018 8:56 pm

Wed Nov 23, 2022 10:12 am

I found the problem.
At your webpage: https://www.megunolink.com/documentatio ... d-handler/
There is wrong info regarding TCPCommand handler.
I used that code.

Now I have changed my code and it is like this:
#include "ESPTCPCommandHandler.h"...... ( Instead of #include "TCPCommandHandler.h")

and:
TcpCommandHandler<2> Cmds(server);...... ( instead of TCPCommandHandler<2> Cmds(server);

Now everything works again.
Regards
Pelle
philr
Posts: 446
Joined: Mon May 26, 2014 10:58 am

Tue Jan 17, 2023 8:41 am

Thanks Pelle, good catch.
Post Reply