Вроде получилось. И получилось двумя способами: способ от Spider и от esaulenka. Единственное что общего у них, это что картинка флагов оптимизации (-Os) выглядела следующим образом
-ffunction-sections (prepare functions for garbage collection) = SET
-fdata-sections (prepare functions for data collection) = CLEAR (по умолчанию обычно SET)
-fpack-struct (pack structure members together) = SET
-fshort-enums (allocate only as many bytes needed by enaum types) = SET
-mshort-calls (use rjamp/rcall (limited range) on > 8K devices) = CLEAR
Поэтому, чтобы прописать версию прошивки (ПО) нужно было убрать флаг -fdata-sections и после инклудов написать:
Код
volatile const char fw_name[5] PROGMEM = "xxxx";
ИЛИ
Код
const char name_fw[5] PROGMEM = "xxxx";
__attribute__ ((used (name_fw)));
Если есть еще какие замечания или комментарии с интересом выслушаю. Всем спасибо за помощь и советы. Esaulenka отдельное спасибо за ссылочку. Она еще мне пригодиться)