F("") и русский язык, как сэкономить память?

Давайте, для начала, Вы попробуете не послушать, а самостоятельно сделать. Бог даст – получится, а нет, так разберём, что надо подправим.

Т.е., что Вам нужно сделать – на этапе компиляции получить строку, выбросив из исходной всё префиксы UTF (давайте с этого начнём, исключения для букв “ё” и тире, потом добавим, это уже нетрудно будет) и разместить эту строку в PROGMEM.

Все необходимые для этого приёмы (техника этого дела) есть в примере, который я так же вот для коллеги писал. Там считается длина строки с UTF символами на этапе компиляции. Вроде в коде и сопутствующем тексте я старался объяснить как и что делается. Попробуйте разобраться как сделано там и точно также сделать свою задачу. Если не получится - выкладывайте, что именно не получается, будем смотреть.

Подсказка: начните без PROGMEM. просто сделайте нужную строку на этапе компиляции. В прогмем её совсем нетрудно засунуть, давайте по частям слона есть.