Hi,
After reviewing the resulting tasmota.cpp,
I found something weird (at least for me)
Original code in support.ino line 439
char IndexSeparator(void)
{
/*
// 20 bytes more costly !?!
const char separators[] = { "-_" };
return separators[Settings.flag3.use_underscore];
*/
if (Settings.flag3.use_underscore) { // SetOption64 - Enable "_" instead of "-" as sensor index separator
return '_';
} else {
return '-';
}
}
Resulting code in tasmota.cpp Line 2969
char IndexSeparator(void)
{
/*
// 20 bytes more costly !?!
const char separators[] = { "-_" };
return separators[Settings.flag3.use_underscore];
*
if (Settings.flag3.use_underscore) {
return '_';
} else {
return '-';
}
}
For whatever reason, it misses the closing ‘/’ of the comment
Then I simply removed this comment
Gave it try, and … voilà … it worked
Attached the output log file, and the generated tasmota.CPP
Hope this could help to nail down the root cause
edit:
Pushed a litlle bit further ...
This works/compiles
char IndexSeparator(void)
{
/*
// 20 bytes more costly !?!
const char separators[] =
return separators[Settings.flag3.use_underscore];
*/
and this not anymore ...
char IndexSeparator(void)
{
/*
// 20 bytes more costly !?!
const char separators[] = "
return separators[Settings.flag3.use_underscore];
*/
Just a comma " difference after the '=' sign ... in a comment
Hope this can help you
Regards
Gregory
BW : The guys from Arduino fixed the trouble with the Board Manager JSON download