We were successfully developing our sketch using a Arduino Mega until we ran into memory problems.
To solve this structurally we are experimenting with a second board and split the functionality across the two boards, using SPI to have the master board request sensor information from the Slave board.
First tests with a ESP8266 NodeMCU board looked promissing, but now we're running into problems with getting the code that run flawlesly on the Mega to compile on the NodeMCU.
I've installed the board with VisualMicro, cerated a new solution and project using this board and started adding code from the Mega. Now we're getting many errors like:
- etc... (see below for a copy of part of the build result)
I've tried updating the board software from the github repo bu that didnt change the result
I'm reading that there is something with the .ld file but I have no clue what they are talking about and wether or not this can also be the cause when using VisualMicro to build the solution.
Compiling debug version of 'CSenseMaster' for 'NodeMCU 1.0 (ESP-12E Module)'
Build Folder: Debug
ld.exe:
enseMaster.ino.elf section .text will not fit in region iram1_0_seg
libstdc++.a(locale-inst.o)*: (.literal._ZSt16__convert_from_vRKPiPciPKcz[_ZSt16__convert_from_vRKPiPciPKcz]+0x4): undefined reference to setlocale
libstdc++.a(locale-inst.o)*: (.literal._ZSt16__convert_from_vRKPiPciPKcz[_ZSt16__convert_from_vRKPiPciPKcz]+0xc): undefined reference to vsprintf
libstdc++.a(locale-inst.o)*: (.literal._ZSt9use_facetISt5ctypeIcEERKT_RKSt6locale[_ZSt9use_facetISt5ctypeIcEERKT_RKSt6locale]+0x4): undefined reference to std::__throw_bad_cast()
libstdc++.a(locale-inst.o)*: rt_floatIdEES3_S3_RSt8ios_baseccT_[_ZNKSt7num_putIcSt19ostreambuf_iteratorIcSt11char_traitsIcEEE15_M_insert_floatIdEES3_S3_RSt8ios_baseccT_]+0x0): undefined reference to memchr
libstdc++.a(locale-inst.o)*: In function std::__convert_from_v(int* const&, char*, int, char const*, ...)
locale_classes.tcc*:114: undefined reference to setlocale
locale_classes.tcc*:114: undefined reference to setlocale
locale_classes.tcc*:114: undefined reference to vsprintf
locale_classes.tcc*:114: undefined reference to setlocale
libstdc++.a(locale-inst.o)*: In function std::ctype<char> const& std::use_facet<std::ctype<char> >(std::locale const&)
locale_classes.tcc*:114: __throw_bad_cast()
libstdc++.a(locale-inst.o)*: In function std::numpunct<char> const& std::use_facet<std::numpunct<char> >(std::locale const&)
locale_classes.tcc*:114: __throw_bad_cast()
libstdc++.a(locale-inst.o)*: In function std::num_put<char, std:
streambuf_iterator<char, std::char_traits<char> > > const& std::use_facet<std::num_put<char, std:
streambuf_iterator<char, std::char_traits<char> > > >(std::locale const&)
locale_classes.tcc*:114: __throw_bad_cast()
libstdc++.a(locale-inst.o)*: In function std::num_get<char, std::istreambuf_iterator<char, std::char_traits<char> > > const& std::use_facet<std::num_get<char, std::istreambuf_iterator<char, std::char_traits<char> > > >(std::locale const&)
locale_classes.tcc*:114: __throw_bad_cast()
libstdc++.a(locale-inst.o)*: In function std::moneypunct<char, true> const& std::use_facet<std::moneypunct<char, true> >(std::locale const&)
locale_classes.tcc*:114: __throw_bad_cast()
libstdc++.a(locale-inst.o)*: -gcc-final\xtensa-lx106-elf\libstdc++-v3\include\bits\locale_classes.tcc:114: more undefined references to std::__throw_bad_cast() follow
libstdc++.a(locale-inst.o)*: In function std:
streambuf_iterator<char, std::char_traits<char> > std::num_put<char, std:
streambuf_iterator<char, std::char_traits<char> > >::_M_insert_float<double>(std:
streambuf_iterator<char, std::char_traits<char> >, std::ios_base&, char, char, double) const
locale_classes.tcc*:114: undefined reference to memchr
........ (clipped)