6240862c27a86681f3a061698d8f077e3f120372
Генератор прототипов Arduino не понимает сырые строковые литералы: внутри
JS он нашёл "function draw(d){" и "function poll(){", принял их за
определения функций C++ и вставил для них прототипы в начало файла.
Сборка падала с "error: 'function' does not name a type", а директивы
#line показывали ошибку на строках внутри HTML.
Заголовочные файлы препроцессор не сканирует, поэтому страница переехала
в web_page.h. Тот же приём используется в соседнем проекте.
Ошибка не всплывала раньше потому, что я проверял скетч через
g++ -fsyntax-only по .ino: так файл компилируется как обычный .cpp и
препроцессор Arduino не участвует. Проверять сборку нужно arduino-cli,
это записано в README 11.1.
Прошито и проверено на железе (COM7, LOLIN D1 ESP-WROOM-02, 2MB FS:64KB):
размеры флеша совпадают, LittleFS монтируется, ранее заданные через панель
настройки пережили перепрошивку, Wi-Fi поднимается, датчики читаются.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Arduino
A collection of Arduino / ESP microcontroller projects.
Projects
-
WeatherPredictor — autonomous barometric weather station on a Wemos D1 mini (ESP8266): local Zambretti forecast, TFT display and a self-hosted web interface. See its README.
-
pump_controller_8_2_OLED_DONE — pump station monitor on a Wemos D1 mini (ESP8266): watches two main pumps plus a backup one, drives two alarm relays, shows status on an OLED and in a web panel, and posts events to an HTTPS webhook. Settings live in LittleFS. See its README and MANUAL.
Languages
C++
58.5%
C
41.5%