@aidar_i, я у себя пересобрал весь свой проект, даже выкинул всё из custom.h, всё, лишь бы не трогать библиотеку. При этом, по поводу кнопок и размеров. Есть файл css стилей, можно тупо сделать свой файл под себя, со своим именем, и всё, кидаешь в gp_data, в конструкторе вызываешь GP.THEME_FILE("имя") (просто имя, без .css), файл подтягивается и будет счастье! При этом не надо будет лишний раз занимать память МК. Надо ещё понять то, что данная либа позволяет кешировать файла, то есть при первом запуске у тебя файл css заливается в кешу, и потом браузер повторно не запрашивает его, это значительно уменьшает время загрузки страницы. Это проверено, Алекс там всё сделал отлично! Кешится и либа jquery и скрипты тоже в кеш ложатся, то есть по факту раз в 3 меньше инфы летит с МК, если использовать файлы вместо конструктора! Для понимания сейчас можно посмотреть builder.h, в принципе там всё очень понятно, но на сколько я знаю, где то пилится вики по всем возможностям этой либы.
Я тоже вчера выкинул код из customOta, чтобы у меня работало всё как надо, потом кинул в issue о данной проблеме. Оказалось проблема только у меня (ну и у тебя), плюс ко всему на новом ядре тот же код у меня жрёт меньше памяти. У меня с ESP32 было много глюков (я слишком увлёкся созданием динамических переменных), но как не странно после глобальной переделки вчера не было ни одного кернел паника (думаю что то сделали в ядре). На старом ядре у меня от оператора free() такие чудеса были, что в итоге у меня теперь везде в коде delete [ ] arr вместо этого free.